[PATCH] smb2 FSCTL_SRV_COPYCHUNK support

David Disseldorp ddiss at suse.de
Tue Mar 6 08:50:41 MST 2012


Hi Volker,

Thanks again for your feedback.

On Tue, 6 Mar 2012 14:22:54 +0100
Volker Lendecke <Volker.Lendecke at SerNet.DE> wrote:

> Functionally I think your patches are correct. All I have is
> stylistic remarks:
...
> Sorry to nit-pick, but I think this really makes a
> difference for the reader. Async stuff is so complex that to
> me every distraction from what's used elsewhere is a
> major annoyance. Copying the list not to do finger-pointing,
> this might also be instructive to others who want to touch
> async programming using tevent_req.

No problem at all, I agree that your suggestions make the code easier
to read. Changes since last push:
- Fix vfs_default copy chunk async function order.
- Shorten tevent_req_nterror() and tevent_req_nomem() error paths. This
  doesn't catch all status checks prior to tevent_req_nterror().

Cheers, David

http://git.samba.org/?p=ddiss/samba.git;a=shortlog;h=refs/heads/smb2_copychunk_async_rb7

The following changes since commit 1f62df52aaafc4f777fed4541625a92f15c8e12c:

  s3: Move a talloc_strdup out of the main code path (2012-03-06 14:29:50 +0100)

are available in the git repository at:
  git://git.samba.org/ddiss/samba.git smb2_copychunk_async_rb7

David Disseldorp (9):
      s3-smb2: split ioctl handlers into separate functions
      s3-smb2: split ioctl handler code on device type
      s3-ioctl: fix smb2 named pipe ioctl handler
      s3-server: add smb2 FSCTL_SRV_REQUEST_RESUME_KEY support
      s3-vfs: add copy_chunk vfs hooks
      s3-server: add support for smb2 FSCTL_SRV_COPYCHUNK
      s3-vfs: add vfs_btrfs module
      s3-server: remove smb2 ioctl error response assumption
      s4-torture: skip FSCTL_SRV_ENUM_SNAPS test when not supported

 docs-xml/manpages-3/vfs_full_audit.8.xml |    2 +
 examples/VFS/skel_opaque.c               |   21 ++
 examples/VFS/skel_transparent.c          |   22 ++
 libcli/smb/smb_constants.h               |    2 +
 selftest/skip                            |    1 -
 source3/Makefile.in                      |   11 +
 source3/configure.in                     |   13 +
 source3/include/vfs.h                    |   25 ++-
 source3/include/vfs_macros.h             |   10 +
 source3/modules/vfs_btrfs.c              |  137 ++++++++++
 source3/modules/vfs_default.c            |   64 +++++
 source3/modules/vfs_full_audit.c         |   38 +++
 source3/modules/vfs_time_audit.c         |   80 ++++++
 source3/modules/wscript_build            |    9 +
 source3/selftest/tests.py                |    2 +-
 source3/smbd/smb2_ioctl.c                |  425 ++++++------------------------
 source3/smbd/smb2_ioctl_dfs.c            |  119 ++++++++
 source3/smbd/smb2_ioctl_filesys.c        |   49 ++++
 source3/smbd/smb2_ioctl_named_pipe.c     |  167 ++++++++++++
 source3/smbd/smb2_ioctl_network_fs.c     |  432 ++++++++++++++++++++++++++++++
 source3/smbd/smb2_ioctl_private.h        |   54 ++++
 source3/smbd/vfs.c                       |   26 ++-
 source3/wscript                          |   11 +
 source3/wscript_build                    |    5 +
 source4/libcli/smb2/ioctl.c              |   29 ++-
 source4/torture/smb2/ioctl.c             |   68 +++++-
 26 files changed, 1465 insertions(+), 357 deletions(-)
 create mode 100644 source3/modules/vfs_btrfs.c
 create mode 100644 source3/smbd/smb2_ioctl_dfs.c
 create mode 100644 source3/smbd/smb2_ioctl_filesys.c
 create mode 100644 source3/smbd/smb2_ioctl_named_pipe.c
 create mode 100644 source3/smbd/smb2_ioctl_network_fs.c
 create mode 100644 source3/smbd/smb2_ioctl_private.h



More information about the samba-technical mailing list