[PATCH] smb2 FSCTL_SRV_COPYCHUNK support

David Disseldorp ddiss at suse.de
Tue Mar 6 07:03:36 MST 2012


Hi All,

On Tue, 6 Mar 2012 09:28:03 +0100
Volker Lendecke <Volker.Lendecke at SerNet.DE> wrote:

> Overall this looks very good! Two quick remarks:
> 
> Can you also augment the time_audit module? Next to
> full_audit, it is another one where all functions should be
> implemented.
> 
> The other one is in the implementation of the async engine.
> You ordered the different _send, _done and _recv functions
> so that you do not need prototypes. While this saves a few
> lines, to me it is much easier to read if the functions are
> lexically ordered according to their call sequence. First
> the _send function, then the _done and after that the _recv
> function. This makes the async flow almost as easy to read
> as a non-async sequential flow. Can you change that? I know
> there are examples in the code that do it differently, but I
> think for new code we should adhere to this convention.

This round of changes addresses Volker's remarks above:
- Add copy chunk hooks to vfs_time_audit
- Reorder copy chunk _send, _done and _recv functions.
One further change:
- Fix full audit copy_chunk op name and add man page entry

Feedback much appreciated.

Cheers, David

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

The following changes since commit f033c221f8f459759aee259be8f52a79fd7e8f3f:

  policy/python: Move python binding tests to standard location. (2012-03-06 02:26:29 +0100)

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

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              |  144 ++++++++++
 source3/modules/vfs_default.c            |   65 +++++
 source3/modules/vfs_full_audit.c         |   38 +++
 source3/modules/vfs_time_audit.c         |   86 ++++++
 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     |  436 ++++++++++++++++++++++++++++++
 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, 1483 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