Config problem: setreuid / seteuid on IRIX and Tru64 UNIX

Orndorff, Andrew <NHTSA> Andrew.Orndorff at
Wed Dec 29 13:49:39 GMT 1999


 a) SGI Origin 200 ( 3-processor )
  SGI IRIX 6.5.4
  SGI MIPSPro C 7.3.1
  Samba 2.0.6 / pre-3.0.0

  pre-3.0.0 configure statement:

  CC="cc -n32 -xansi -OPT:Olimit=4096" ./configure --prefix=/usr/local/samba -
-with-quotas --with-syslog --without-smbwrapper --without-automount

 b) Compaq AlphaServer 2100 4/275 ( 2-processor)
  Compaq Tru64 UNIX 4.0D
  Samba 2.0.6 / pre-3.0.0

  pre-3.0.0 configure statement:

  CC="cc -std -arch host -tune host -Olimit 4096" ./configure --prefix=/usr/lo
cal/samba --with-quotas --with-syslog --without-smbwrapper --without-automount

Problem Description:

We recently upgraded to Samba 2.0.6 on our SGI Irix 6.5.4 and our Compaq Tru64
 UNIX 4.0D boxes.
While the smbd server seemed to start up properly, and join the local workgrou
p, attempts to
actually use the volume shares were less than stellar.

On the IRIX box performance was painfully slow, and even with "nt acl support"
 and "nt smb support"
enabled we were unable to view or alter permissions on files or directories fr
om an NT Workstation. Also,
for some reason the [homes] share was not working properly, even though we del
eted it and
recreated it, and even tried setting the path to be "/home/%u".

On the Tru64 UNIX servers smbd would generate a core dump when an NTWS user wa
s attempting
to browse the volume shares, and the user would receive an error from Windows 
NT Explorer when
attempting to view the security attributes of a file or directory ("Invalid ha

Since we had seen some other errors related to shared memory issues we obtaine
d and installed Samba pre-3.0.0 (which
uses its own database instead of shared memory). Same problems, just without t
he shared memory errors.

Some exploration of the source/include/config.h file revealed that the setreui
d() call was being used on both platforms. From
previous experience we have observed that some software that uses setreuid() d
oes not work properly until a call to
seteuid() is substituted.

 Temporary Solution:

Since there did not seem to be any way to force the configure script in Samba 
pre-3.0.0 to select seteuid over setreuid
we made temporary changes to the file source/include/config and changed the li

/*  undef USE_SETEUID */
 define USE_SETREUID 1


 define USE_SETEUID 1
/*  undef USE_SETREUID */

We then rebuilt and reinstalled the pre-3.0.0 server.

The result has been that performance is very much improved, we are able to use
 the NT specific SMB protocol support, users can view or alter the security at
tributes on files and directories that they own, and we have no shared memory 

I have noted that the AIX platform seems to have similar issues. It would seem
 that the same may be true for IRIX and Tru64 UNIX.

Andrew Orndorff

Andrew R. Orndorff
Technical Support Manager
NHTSA R&D Data Center

U.S. Dept. of Transportation
400 7th Street, SW, Rm. 2403
Washington, DC 20590

Phone: 202.366.8827
FAX: 202.366.3986

E-mail: andrew.orndorff at

This message is not representative of the opinions, 
practices, or policies of ISSI, the National Highway
Traffic Safety Administration or any office thereof, or the
U.S. Department of Transportation.



More information about the samba mailing list