summaryrefslogtreecommitdiff
path: root/examples/VFS
diff options
context:
space:
mode:
authorRalph Boehme <slow@samba.org>2017-06-09 13:02:49 +0200
committerRalph Boehme <slow@samba.org>2017-07-03 19:59:08 +0200
commit3645f83a3c83fa3e4bf4dbacf885cc4295e7eadd (patch)
tree7b14b55f4f51eb63d786b91f5c0533f4d5df611f /examples/VFS
parentd50f307e97ae28b9fbdc2e6cffb1b5493c583a09 (diff)
downloadsamba-3645f83a3c83fa3e4bf4dbacf885cc4295e7eadd.tar.gz
s3/vfs: make SMB_VFS_OFFLOAD_WRITE_SEND offload token based
Remove the source fsp argument and instead pass the offload token generated with SMB_VFS_OFFLOAD_READ_SEND/RECV. An actual offload fsctl is not implemented yet, neither in the VFS nor at the SMB ioctl layer, and returns NT_STATUS_NOT_IMPLEMENTED With these changes we now pass the copy-chunk-across-shares test. Signed-off-by: Ralph Boehme <slow@samba.org> Reviewed-by: Stefan Metzmacher <metze@samba.org>
Diffstat (limited to 'examples/VFS')
-rw-r--r--examples/VFS/skel_opaque.c5
-rw-r--r--examples/VFS/skel_transparent.c7
2 files changed, 7 insertions, 5 deletions
diff --git a/examples/VFS/skel_opaque.c b/examples/VFS/skel_opaque.c
index d416bf6ef53..831d0f14fce 100644
--- a/examples/VFS/skel_opaque.c
+++ b/examples/VFS/skel_opaque.c
@@ -585,8 +585,9 @@ struct skel_cc_state {
static struct tevent_req *skel_offload_write_send(struct vfs_handle_struct *handle,
TALLOC_CTX *mem_ctx,
struct tevent_context *ev,
- struct files_struct *src_fsp,
- off_t src_off,
+ uint32_t fsctl,
+ DATA_BLOB *token,
+ off_t transfer_offset,
struct files_struct *dest_fsp,
off_t dest_off,
off_t num,
diff --git a/examples/VFS/skel_transparent.c b/examples/VFS/skel_transparent.c
index 58fd77a9d51..f813926141b 100644
--- a/examples/VFS/skel_transparent.c
+++ b/examples/VFS/skel_transparent.c
@@ -719,8 +719,9 @@ static void skel_offload_write_done(struct tevent_req *subreq);
static struct tevent_req *skel_offload_write_send(struct vfs_handle_struct *handle,
TALLOC_CTX *mem_ctx,
struct tevent_context *ev,
- struct files_struct *src_fsp,
- off_t src_off,
+ uint32_t fsctl,
+ DATA_BLOB *token,
+ off_t transfer_offset,
struct files_struct *dest_fsp,
off_t dest_off,
off_t num,
@@ -737,7 +738,7 @@ static struct tevent_req *skel_offload_write_send(struct vfs_handle_struct *hand
state->handle = handle;
subreq = SMB_VFS_NEXT_OFFLOAD_WRITE_SEND(handle, state, ev,
- src_fsp, src_off,
+ fsctl, token, transfer_offset,
dest_fsp, dest_off, num, flags);
if (tevent_req_nomem(subreq, req)) {
return tevent_req_post(req, ev);