httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ovies Brabson <ovi...@us.ibm.com>
Subject PATCH: Enable DSO Support for OS/390 USS
Date Tue, 30 May 2000 23:53:32 GMT
This patch enables DSO support for the OS/390 USS platform.

I have a question about a change that I did not make to the top
Makefile.tmpl because I'm not sure if it is appropriate or not.

On OS/390 USS there are different types of  super users.
If BPX.DAEMON is defined, you cannot do a setuid unless
the program running has the program control bit on.  To ensure
setuid succeeds when apache initializes the program control bit
can be turned on for the executables and .so files.

If _BPX_SHAREAS is defined and the s-bit on
a program is turned on, then the program will be started in a shared
address space if started from the shell.  setuid will not work in a
shared address space.  To ensure that apache processes
are not started in a shared address space the s-bit can be turned off
for
the apache executables and .so's.

It is possible to turn on the program control bit and turn off the
shared
address space bit for an executable using the extattr command.
This would ensure that the apache executables
have the appropriate attributes so that setuid would succeed when
apache initializes.  Setting the extended attributes for the executables

and .so files could be done in the Makefile.tmpl at the top of the
apache tree.

I have not made this modification at this time because if BPX.DAEMON
is defined, then the invoker of the extattr command has to be a
member of the BPX.FILEATTR.PROGCTL RACF class.  So, if I put this in
the make file, someone may get a bunch of error messages when they
install
apache.

Not doing this, however, means that if a user installs apache and then
logs in as superuser and starts apache to run as id, x-user-id, then
apache may fail to start because the program control bit may need to be
turned on for the executables and all the .so files.  Also, if
_BPX_SHAREAS
is defined and apache is started in a shared address space, the setuid
will
also fail.

Anyway, I'm not sure what is worse.  Please make a recommendation as to
whether you think the make file should or should not set the program
control bit and the shared-as bit for the executables and .so files.  If
we should
not do this in the make file, then what is the best place to document
the install
procedure for OS/390 USS?  Should extended attributes be pre-set for
binary distribution?

Thanks.

Ovies Brabson

Mime
View raw message