added a uid_wrapper library
authorAndrew Tridgell <tridge@samba.org>
Wed, 5 Aug 2009 00:50:03 +0000 (10:50 +1000)
committerAndrew Tridgell <tridge@samba.org>
Wed, 5 Aug 2009 00:51:00 +0000 (10:51 +1000)
commitfd43e0ee09e3f82093e9a15dd6cbd2fbaa113426
treeb9971f7c8b9758dec89f109a2e79dd0ad899f4f2
parent3e3f64f05fa5d970b058c4b21b6ecd40b883e8e6
added a uid_wrapper library

This library intercepts seteuid and related calls, and simulates them
in a manner similar to the nss_wrapper and socket_wrapper
libraries. This allows us to enable the vfs_unixuid NTVFS module in
the build farm, which means we are more likely to catch errors in the
token manipulation.

The simulation is not complete, but it is enough for Samba4 for
now. The major areas of incompleteness are:

 - no emulation of setreuid, setresuid or saved uids. These would be
   needed for use in Samba3

 - no emulation of ruid changing. That would also be needed for Samba3

 - no attempt to emulate file ownership changing, so code that (for
   example) tests whether st.st_uid matches geteuid() needs special
   handling
17 files changed:
lib/uid_wrapper/config.m4 [new file with mode: 0644]
lib/uid_wrapper/config.mk [new file with mode: 0644]
lib/uid_wrapper/uid_wrapper.c [new file with mode: 0644]
lib/uid_wrapper/uid_wrapper.h [new file with mode: 0644]
lib/util/config.mk
lib/util/util.c
nsswitch/config.mk
selftest/target/Samba4.pm
source4/Makefile
source4/auth/ntlm/config.mk
source4/configure.ac
source4/heimdal_build/config.h
source4/heimdal_build/internal.mk
source4/include/includes.h
source4/main.mk
source4/ntvfs/posix/pvfs_acl.c
source4/ntvfs/unixuid/config.mk