>The shell may be forking or doing something else.


It's not the shell alone. Primarily, it is BPXBATCH / BPXBATSL invoking 
/bin/login to start the shell (when PARM='SH....' is used). /bin/login is a 
setuid program (target is uid=0) and z/OS UNIX does not allow locally spawned() 
processes in that case (i.e. current uid <> target uid).
Next is the restriction (I never understood) that locally spawned() processes 
are not allowed when target program has the sticky-bit set. And, yes, /bin/sh 
has the sticky-bit set.
I seem to understand that /bin/login is the piece that asks you for 
userid/password in UNIX when establishing an interactive shell. When running 
BPXBATCH, you don't run an interactive shell, and you're in an already 
authenticated state. I don't now what else /bin/login does so that the 
developers chose to use it.


I guess COZBATCH has left out /bin/login, and exec()s to the shell to avoid the 
above restrictions.
--
Peter Hunkeler





----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to