Guardian Procedure Calls Reference Manual (G06.25+)

Guardian Procedure Calls (P)
Guardian Procedure Calls Reference Manual522629-013
12-177
PROCESS_SPAWN_ Procedure
In the C spawnh file, the structure for the inheritance parameter is defined as:
C programs should initialize the inheritance structure by setting the flags field to 0.
Z^Flags
specifies whether the Z^SIGMASK field or the Z^SIGDEFAULT field or both fields
are specified.
The following tables summarize the settings for Z^FLAGS. TAL literals are defined
in the ZSYSTAL file. Literals in the zsysc file, for C programs, are the same as
those for TAL except that they contain the underscore (_) character instead of the
circumflex (^) character.
Either one or both of the following values can be supplied:
Z^Pgroup
is not used by PROCESS_SPAWN_. Specify 0D.
Z^SigMask
is a mask indicating which signals are to be blocked by the new process when
Z^FLAGS contains ZSYS^VAL^SPAWN^SETSIGMASK. When Z^SIGMASK.<
n>
is set to 1, the signal represented by bit <
n> is blocked.
Z^SigDefault
is a mask indicating which signals are to use default action for the new process
when Z^FLAGS contains ZSYS^VAL^SPAWN^SETSIGDEF. When
Z^SIGDEFAULT.<
n> is set to 1, the signal represented by bit <n> is used.
typedef struct inheritance {
short flags;
#define SPAWN_SETGROUP 0x01 /* not used by PROCESS_SPAWN_ */
#define SPAWN_SETSIGMASK 0x02/* controls child sigmask*/
#define SPAWN_SETSIGDEF 0x04 /* controls child sigmask*/
#define SPAWN_NOTDEFD 0xFFF8 /* undefined bit fields */
char filler_1[2];
pid_t pgroup;
sigset_t sigmask;
sigset_t sigdefault;
} inheritance;
Name (ZSYS^VAL^ ) Value Description
SPAWN^SETSIGDEF 4
indicates that
Z^SIGDEFAULT is specified
SPAWN^SETSIGMASK 2
indicates that
Z^SIGMASK is specified