r2794: a very simple version of the unixuid NTVFS pass-thru module. In
authorAndrew Tridgell <tridge@samba.org>
Sun, 3 Oct 2004 06:46:29 +0000 (06:46 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 17:59:34 +0000 (12:59 -0500)
commit78b67d19b9766131f0270e451089ee5bb1aa8bd9
tree8f173ff4bfe1ecf72ce3c9cf93e1fbecb7591e89
parent8373bfcdeca13dcdce3081af420d8bb7d842ad18
r2794: a very simple version of the unixuid NTVFS pass-thru module. In
conjunction with the posix backend this gives us a way to correctly
setup the unix security context in Samba4.

I chose the following method to determine the unix uid's and gid's to
use given the list of SIDs from the login process

 - look for a "UnixID" field in the sam record. If present, then use it
   (check if the record is of the right type as well)

 - if UnixID is not present, then look for the "UnixName" sam
   field. If it is present then use getpwnam() or getgrnam() to find
   the unix id.

 - if UnixID and UnixName are not present, then look for a unix
   account of the right type called by the same name as the sAMAccountName field.

 - if none of the above work then fail the operation with NT_STATUS_ACCESS_DENIED

obviously these steps only work well with a local SAM. It will need to
be more sophisticated in future.

I did not put any cache in place at all. That will need to be added
for decent performance.
source/ntvfs/config.m4
source/ntvfs/posix/config.m4
source/ntvfs/unixuid/config.m4 [new file with mode: 0644]
source/ntvfs/unixuid/config.mk [new file with mode: 0644]
source/ntvfs/unixuid/vfs_unixuid.c [new file with mode: 0644]