recvfile and streams_xattr (and possibly streams_tdb) do not play well together

Björn JACKE bj at SerNet.DE
Fri Aug 3 18:35:53 MDT 2012


On 2012-08-02 at 13:17 -0700 Richard Sharpe sent off:
> Recvfile is wonderful, except when you are trying to use the
> streams_xattr module.
> 
> In that case, vfs_write_data calls SMB_VFS_RECVFILE rather that SMB_VFS_PWRITE.
> 
> To fix this problem, our implementation of recvfile would have to
> distinguish between streams and non streams, read the data off of the
> socket into a buffer, then call SMB_VFS_PWRITE, which is a pain.
> 
> A better approach might be to:
> 
> 1. Be able to mark FSPs with do_not_use_recvfile, and then
> 2. In source3/smbd/process.c:receive_smb_raw_talloc, where we check
> for !smb_signing etc, also check for !do_not_use_recvfile) and skip
> the recvfile path in that case.
> 
> That way we can simplify life in VFSs and stop interactions between them.

this reminds me of something: have a look at this patch, which does the same
for the sendfile case:

http://opensource.apple.com/source/samba/samba-235.7/patches/add-sendfile-capability-bit-to-fsp

That one and something like that for the recvfile case would be useful I think.

Cheers
Björn


More information about the samba-technical mailing list