On Fri, 24 Mar 2000, Gavriel State wrote:
> There is a library called 'smbwrapper', that if preloaded before libc,
> will replace the libc file management routines with ones that understand
> UNC pathnames. IE: You'd be able to fopen "\\server\share\file" directly.
> Also, you can list the network neighborhood by just doing an ls on /smb.
> There may be a license issue though, in which case we might have to
> use smbmount directly as described above. It's probably worth contacting
> the Samba team via email if it looks like there's a license issue.
It's worth observing that, because of a 'design decision' on the part of
the glibc team, smbwrapper no longer works with glibc: they deliberately
removed several shadowed function symbols in order to make it impossible
to use userspace VFS modules. I think this was a downright crummy thing
to do, but the decision stands for the time being.
OTOH, smbwrapper could be linked into Wine at a higher level; but at that
point, you run into the problem of licensing.
> Note that the Corel File Manager does exactly the same kind of thing (using
> smbmount, etc) and they may have already implemented code that might be
> useful on the WINE side in some of their libraries. I've cc'd Oleg and Ming
> on this message, in case they can give any more insight into this.
Another possibility is automount, which has an SMB-specific module that
automates the process of mounting SMB network shares and also eliminates
the need for additional suid programs on the system. However, I think
automount would complicate the question of authenticating a connection.
Also, there are certain security concerns when mounting an SMB filesystem
using the credentials of a particular user. For instance, under the CIFS
security model it should not be possible for a local administrator to gain
access to a resource using the credentials of a user that's logged in
locally; but because smbmount passes these credentials to the kernel,
AFAIK there's no way to keep root from gaining full access to the mounted
resource.
HTH,
Steve Langasek
postmodern programmer