Hi folks, it's often been said that wine can't use libsmbclient because of license problems. I'd like to look at that assumption a bit.
- What would wine like to use libsmbclient for, if it could?
- Would it suffice to just link it in to wineserver, or would it need to be invoked directly by all sorts of dlls?
- Would we just use the system's libsmbclient (I hope so) rather than trying to import its source?
Also, fwiw, I think the Samba guys are willing to multiplex their listening daemon so Wine could handle incoming named pipe requests if we want to.
Thanks, Dan
On Friday 23 October 2009 22:26:49 Dan Kegel wrote:
Hi folks, it's often been said that wine can't use libsmbclient because of license problems. I'd like to look at that assumption a bit.
- What would wine like to use libsmbclient for, if it could?
Reading files from remote systems via UNC paths would come to mind, as well as NBT lookups.
- Would it suffice to just link it in to wineserver, or would
it need to be invoked directly by all sorts of dlls?
For the UNC path part, we need the logic in the redirector, which probably should be located in the wineserver. For the NBT part, this needs to be called from netapi32. We might be able to do nbt lookups via an LGPL library via winbind, though. The catch is of course that we'd have to have a running winbindd for that.
- Would we just use the system's libsmbclient (I hope so)
rather than trying to import its source?
We'd use the system library.
Also, fwiw, I think the Samba guys are willing to multiplex their listening daemon so Wine could handle incoming named pipe requests if we want to.
Technically, we (wearing my Samba hat) will have to implement something that'll allow multiplexing the named pipe handling in one of our daemons. But from our last conversation on the subject, we seem to be ready to do that if needed.
Cheers, Kai
2009/10/23 Dan Kegel dank@kegel.com:
Hi folks, it's often been said that wine can't use libsmbclient because of license problems. I'd like to look at that assumption a bit.
What would wine like to use libsmbclient for, if it could?
Would it suffice to just link it in to wineserver, or would
it need to be invoked directly by all sorts of dlls?
- Would we just use the system's libsmbclient (I hope so)
rather than trying to import its source?
Also, fwiw, I think the Samba guys are willing to multiplex their listening daemon so Wine could handle incoming named pipe requests if we want to.
libsmbclient would need to be linked into wineserver to properly implement handles to named pipes that can be inherited by child processes (and to be allow the handle to be accepted by all of the functions that take a handle without large modifications).
However, having 3rd party code linked into the wineserver probably gives many people the heebie-jeebies, given how critical the wineserver is to allowing wine processes to continue to run and the special rules of coding in the wineserver - not blocking, for one.