diff options
Diffstat (limited to 'examples/VFS/skel_transparent.c')
-rw-r--r-- | examples/VFS/skel_transparent.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/examples/VFS/skel_transparent.c b/examples/VFS/skel_transparent.c index c73c2a2692b..063af8f3aed 100644 --- a/examples/VFS/skel_transparent.c +++ b/examples/VFS/skel_transparent.c @@ -552,6 +552,21 @@ static int skel_kernel_flock(struct vfs_handle_struct *handle, return SMB_VFS_NEXT_KERNEL_FLOCK(handle, fsp, share_mode, access_mask); } +static int skel_fcntl(struct vfs_handle_struct *handle, + struct files_struct *fsp, int cmd, va_list cmd_arg) +{ + void *arg; + va_list dup_cmd_arg; + int result; + + va_copy(dup_cmd_arg, cmd_arg); + arg = va_arg(dup_cmd_arg, void *); + result = SMB_VFS_NEXT_FCNTL(handle, fsp, cmd, arg); + va_end(dup_cmd_arg); + + return result; +} + static int skel_linux_setlease(struct vfs_handle_struct *handle, struct files_struct *fsp, int leasetype) { @@ -1379,6 +1394,7 @@ static struct vfs_fn_pointers skel_transparent_fns = { .fallocate_fn = skel_fallocate, .lock_fn = skel_lock, .kernel_flock_fn = skel_kernel_flock, + .fcntl_fn = skel_fcntl, .linux_setlease_fn = skel_linux_setlease, .getlock_fn = skel_getlock, .symlinkat_fn = skel_symlinkat, |