summaryrefslogtreecommitdiff
path: root/examples/VFS
diff options
context:
space:
mode:
authorAurelien Aptel <aaptel@suse.com>2015-08-24 18:22:56 +0200
committerRalph Boehme <slow@samba.org>2017-05-10 08:22:18 +0200
commitfc2b3662b813e936458860c3c041ee50e5dd1a88 (patch)
tree5886a9676f0581dda1d1a65a1948be9628a1ae7c /examples/VFS
parent3361b5fca390c9ab130160dbbdd25a0be97bd818 (diff)
downloadsamba-fc2b3662b813e936458860c3c041ee50e5dd1a88.tar.gz
vfs: add parameter to copy chunk VFS function to handle dup_extents
FSCTL_DUPLICATE_EXTENTS_TO_FILE must be handled as a COW clone. Add a copy-chunk flags parameter to the VFS to handle this. Signed-off-by: Aurelien Aptel <aaptel@suse.com> Signed-off-by: David Disseldorp <ddiss@samba.org> Reviewed-by: Ralph Böhme <slow@samba.org>
Diffstat (limited to 'examples/VFS')
-rw-r--r--examples/VFS/skel_opaque.c3
-rw-r--r--examples/VFS/skel_transparent.c5
2 files changed, 5 insertions, 3 deletions
diff --git a/examples/VFS/skel_opaque.c b/examples/VFS/skel_opaque.c
index ffd951c0e2d..af119f32db1 100644
--- a/examples/VFS/skel_opaque.c
+++ b/examples/VFS/skel_opaque.c
@@ -531,7 +531,8 @@ static struct tevent_req *skel_copy_chunk_send(struct vfs_handle_struct *handle,
off_t src_off,
struct files_struct *dest_fsp,
off_t dest_off,
- off_t num)
+ off_t num,
+ uint32_t flags)
{
struct tevent_req *req;
struct skel_cc_state *cc_state;
diff --git a/examples/VFS/skel_transparent.c b/examples/VFS/skel_transparent.c
index afadbc1a5cd..e9745292730 100644
--- a/examples/VFS/skel_transparent.c
+++ b/examples/VFS/skel_transparent.c
@@ -619,7 +619,8 @@ static struct tevent_req *skel_copy_chunk_send(struct vfs_handle_struct *handle,
off_t src_off,
struct files_struct *dest_fsp,
off_t dest_off,
- off_t num)
+ off_t num,
+ uint32_t flags)
{
struct tevent_req *req;
struct tevent_req *subreq;
@@ -633,7 +634,7 @@ static struct tevent_req *skel_copy_chunk_send(struct vfs_handle_struct *handle,
cc_state->handle = handle;
subreq = SMB_VFS_NEXT_COPY_CHUNK_SEND(handle, cc_state, ev,
src_fsp, src_off,
- dest_fsp, dest_off, num);
+ dest_fsp, dest_off, num, flags);
if (tevent_req_nomem(subreq, req)) {
return tevent_req_post(req, ev);
}