diff options
Diffstat (limited to 'include/fuse.h')
-rw-r--r-- | include/fuse.h | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/include/fuse.h b/include/fuse.h index 754303f..0c5741f 100644 --- a/include/fuse.h +++ b/include/fuse.h @@ -339,8 +339,16 @@ struct fuse_operations { /** Create a symbolic link */ int (*symlink) (const char *, const char *); - /** Rename a file */ - int (*rename) (const char *, const char *, unsigned int); + /** Rename a file + * + * *flags* may be `RENAME_EXCHANGE` or `RENAME_NOREPLACE`. If + * RENAME_NOREPLACE is specified, the filesystem must not + * overwrite *newname* if it exists and return an error + * instead. If `RENAME_EXCHANGE` is specified, the filesystem + * must atomically exchange the two files, i.e. both must + * exist and neither may be deleted. + */ + int (*rename) (const char *, const char *, unsigned int flags); /** Create a hard link to a file */ int (*link) (const char *, const char *); |