diff options
Diffstat (limited to 'example/fusexmp_fh.c')
-rw-r--r-- | example/fusexmp_fh.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/example/fusexmp_fh.c b/example/fusexmp_fh.c index 262a868..2f4b187 100644 --- a/example/fusexmp_fh.c +++ b/example/fusexmp_fh.c @@ -204,6 +204,20 @@ static int xmp_truncate(const char *path, off_t size) return 0; } +static int xmp_ftruncate(const char *path, off_t size, + struct fuse_file_info *fi) +{ + int res; + + (void) path; + + res = ftruncate(fi->fh, size); + if(res == -1) + return -errno; + + return 0; +} + static int xmp_utime(const char *path, struct utimbuf *buf) { int res; @@ -354,6 +368,7 @@ static struct fuse_operations xmp_oper = { .chmod = xmp_chmod, .chown = xmp_chown, .truncate = xmp_truncate, + .ftruncate = xmp_ftruncate, .utime = xmp_utime, .create = xmp_create, .open = xmp_open, |