| @@ -96,6 +96,11 @@ · 95 unmodified lines |
| 96 | 96 | * |
| 97 | 97 | * 7.23 |
| 98 | 98 | * - add FUSE_WRITEBACK_CACHE |
| 99 | + * - add time_gran to fuse_init_out |
| 100 | + * - add reserved space to fuse_init_out |
| 101 | + * - add FATTR_CTIME |
| 102 | + * - add ctime and ctimensec to fuse_setattr_in |
| 103 | + * - add FUSE_RENAME2 request |
| 99 | 104 | */ |
| 100 | 105 | |
| 101 | 106 | #ifndef _LINUX_FUSE_H |
| @@ -191,6 +196,7 @@ struct fuse_file_lock { · 89 unmodified lines |
| 191 | 196 | #define FATTR_ATIME_NOW (1 << 7) |
| 192 | 197 | #define FATTR_MTIME_NOW (1 << 8) |
| 193 | 198 | #define FATTR_LOCKOWNER (1 << 9) |
| 199 | +#define FATTR_CTIME (1 << 10) |
| 194 | 200 | |
| 195 | 201 | /** |
| 196 | 202 | * Flags returned by the OPEN request |
| @@ -348,6 +354,7 @@ enum fuse_opcode { · 151 unmodified lines |
| 348 | 354 | FUSE_BATCH_FORGET = 42, |
| 349 | 355 | FUSE_FALLOCATE = 43, |
| 350 | 356 | FUSE_READDIRPLUS = 44, |
| 357 | + FUSE_RENAME2 = 45, |
| 351 | 358 | |
| 352 | 359 | /* CUSE specific operations */ |
| 353 | 360 | CUSE_INIT = 4096, |
| @@ -426,6 +433,12 @@ struct fuse_rename_in { · 72 unmodified lines |
| 426 | 433 | uint64_t newdir; |
| 427 | 434 | }; |
| 428 | 435 | |
| 436 | +struct fuse_rename2_in { |
| 437 | + uint64_t newdir; |
| 438 | + uint32_t flags; |
| 439 | + uint32_t padding; |
| 440 | +}; |
| 441 | + |
| 429 | 442 | struct fuse_link_in { |
| 430 | 443 | uint64_t oldnodeid; |
| 431 | 444 | }; |
| @@ -438,10 +451,10 @@ struct fuse_setattr_in { · 6 unmodified lines |
| 438 | 451 | uint64_t lock_owner; |
| 439 | 452 | uint64_t atime; |
| 440 | 453 | uint64_t mtime; |
| 441 | | − uint64_t unused2; |
| 454 | + uint64_t ctime; |
| 442 | 455 | uint32_t atimensec; |
| 443 | 456 | uint32_t mtimensec; |
| 444 | | − uint32_t unused3; |
| 457 | + uint32_t ctimensec; |
| 445 | 458 | uint32_t mode; |
| 446 | 459 | uint32_t unused4; |
| 447 | 460 | uint32_t uid; |
| @@ -559,6 +572,9 @@ struct fuse_init_in { · 111 unmodified lines |
| 559 | 572 | uint32_t flags; |
| 560 | 573 | }; |
| 561 | 574 | |
| 575 | +#define FUSE_COMPAT_INIT_OUT_SIZE 8 |
| 576 | +#define FUSE_COMPAT_22_INIT_OUT_SIZE 24 |
| 577 | + |
| 562 | 578 | struct fuse_init_out { |
| 563 | 579 | uint32_t major; |
| 564 | 580 | uint32_t minor; |
| @@ -567,6 +583,8 @@ struct fuse_init_out { · 2 unmodified lines |
| 567 | 583 | uint16_t max_background; |
| 568 | 584 | uint16_t congestion_threshold; |
| 569 | 585 | uint32_t max_write; |
| 586 | + uint32_t time_gran; |
| 587 | + uint32_t unused[9]; |
| 570 | 588 | }; |
| 571 | 589 | |
| 572 | 590 | #define CUSE_INIT_INFO_MAX 4096 |