Open System Services System Calls Reference Manual (G06.25+, H06.03+)

System Functions (t) tdm_spawn(2)
User ID and Group ID
If the set-user-ID mode bit (S_ISUID) of the new process image le is set (see the chmod(2)
reference page), the effective user ID of the new process image is set to the user ID of the owner
of the new process image le. Similarly, if the set-group-ID mode bit (S_ISGID) of the new pro-
cess image le is set, the effective group ID of the new process image is set to the group ID of the
new process image le. The real user ID, real group ID, and supplementary group IDs of the new
process image remain the same as those of the calling process image. The effective user ID and
effective group ID of the new process image are saved (as the saved-set user ID and the saved-set
group ID) for use by the setuid() function.
OSS Attributes
These OSS attributes of the calling process image are unchanged after successful completion of
the tdm_spawn() function:
Real user ID
Real group ID
Session membership
Current working directory
Root directory
File mode creation mask (see the umask(2) reference page)
File size limit (see the ulimit(2) reference page)
The OSS attributes of the child process differ from those of the parent process in these ways:
The child process has a unique OSS process ID (PID) and does not match any active pro-
cess group ID.
The parent process ID of the child process matches the OSS process ID of the parent.
The child process has its own copy of a subset of the parent processs le descriptors.
See Open Files, earlier in this reference page. However, each of the childs le descrip-
tors shares a common le pointer with the corresponding le descriptor of the parent pro-
cess.
The child process does not inherit le opens created by Guardian function or procedure
calls.
The child process does not inherit le locks.
The child processs tms_utime, tms_stime, tms_cutime, and tms_cstime values are set
to 0 (zero).
Any pending alarms are cleared in the child process.
Any adjust-on-exit (semadj) values of the parent process are not inherited by the child
process.
Any signals pending for the parent process are not inherited by the child process.
The signal mask of the child process is that of the parent process unless modied by the
inherit->sigmask eld. See Signals, earlier in this reference page.
527186-003 Hewlett-Packard Company 845