Age | Commit message (Collapse) | Author | Files | Lines |
|
There are now many better ways to access a remote SMB filesystem,
which do not rely on LD_PRELOAD and the associated dangers. FUSE,
gvfs and the CIFS VFS are all much better options which do not require
knowing every possible libc entry point that can deal with a file
descriptor.
As an example of the maintainence that would be required to keep this
going, recent changes to deal with thread races and close-on-exec have
resulted in dup3(), but this isn't currently mapped. While this would
not be hard to add, it illistrates why it is better to move to an
interface designed for this task.
Andrew Bartlett
Autobuild-User: Andrew Bartlett <abartlet@samba.org>
Autobuild-Date: Thu Feb 9 01:58:24 CET 2012 on sn-devel-104
|
|
This corrects the issues reaised in bug #6129, and some others that were not
originally identified. It also accounts for some code that was in the original
bug report but appears to have since been made common between S3 and S4.
Thanks to Erik Hovland <erik@hovland.org> for the original bug report.
|
|
(This used to be commit 93580bce833453ba512ee436d6dfdbdcd2c53777)
|
|
The libsmbclient interface has suffered from difficulty of improvement and
feature enrichment without causing ABI breakage. Although there were a number
of issues, the primary ones were:
(a) the user of the library would manually manipulate the context structure
members, meaning that nothing in the context structure could change other
than adding stuff at the end;
(b) there were three methods of setting options: setting bits in a flags field
within the context structure, setting explicit options variables within an
options structure in the context structure, and by calling the
smbc_option_set() function;
(c) the authentication callback did not traditionally provide enough
information to the callee which required adding an option for a callback
with a different signature, and now there are requests for even more
information at the callback, requiring yet a third signature and option to
set it (if we implement that feature).
This commit provides a reorganization of the code which fixes (a) and (b).
The context structure is now entirely opaque, and there are setter and getter
functions for manipulating it. This makes maintaining ABI consistency much,
much easier.
Additionally, the options setting/getting has been unified into a single
mechanism using smbc_option_set() and smbc_option_get().
Yet to be completed is a refactoring of the authentication callback (c).
The test programs in examples/libsmbclient have been modified (if necessary;
some applications require no changes at all) for the new API and a few have
been minimally tested.
Derrell
(This used to be commit d4b4bae8ded824d06ad5ab0e219f71187ee5c771)
|
|
(This used to be commit d0e89d246d8e5e64196d6c1d16d39a70579ca42f)
|
|
Jeremy.
(This used to be commit 407e6e695b8366369b7c76af1ff76869b45347b3)
|
|
Incorporate a number of changes suggested by David Collier-Brown Thanks, David!
(This used to be commit 0ae65b9af566e02eece9bb7865047c037468d470)
|
|
provided more complete libsmbclient testbrowse utility
(This used to be commit 15736b97c837a16d9c009b8bff18b31429ccbe83)
|