Bug 7976 - driver upload does not play nice with vfs modules
Summary: driver upload does not play nice with vfs modules
Status: RESOLVED FIXED
Alias: None
Product: Samba 3.6
Classification: Unclassified
Component: Printing (show other bugs)
Version: unspecified
Hardware: Other Linux
: P3 minor
Target Milestone: ---
Assignee: Guenther Deschner
QA Contact: Samba QA Contact
URL:
Keywords:
Depends on:
Blocks: 7921
  Show dependency treegraph
 
Reported: 2011-02-28 12:10 UTC by David Disseldorp
Modified: 2011-03-02 05:02 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description David Disseldorp 2011-02-28 12:10:22 UTC
Uncovered while testing changes for bug 7921.

samba3.posix_s3.rpc.spoolss.driver fails with the xattr_tdb vfs module
loaded as a part of make test. The (now checked) create_directory() call
in move_driver_to_download_area() fails, uncovering another bug in the
printer driver upload code path.

move_driver_to_download_area() creates a new conn_struct for
manipulating files in [print$]. The VFS layer is plumbed through with
the call to create_conn_struct(), however SMB_VFS_CONNECT() is never
called. Many vfs modules expect state stored at connect time with
SMB_VFS_HANDLE_SET_DATA() to be available on any IO operation and fail
if this is not the case.

A possible fix is to call SMB_VFS_CONNECT() following
create_conn_struct() in move_driver_to_download_area().
Comment 1 David Disseldorp 2011-03-02 05:02:42 UTC
Fix "s3-printing: vfs_connect prior to driver/dfs IO" committed to master:
  016a8d214ab23883e9d50c46d3a8cc18f9454368
and v3-6-test:
  529291bb20db44b9a253ee0183fc40abf6b2fc6c