Guardian Procedure Calls Reference Manual
PRIVSETID File Privilege
The PRIVSETID file privilege allows the locally-authenticated super ID to start a process from an
executable and use a privileged switch operation, such as setgid() or setuid(), to switch to
another user ID or group ID (without a password) and, based on the permissions for that ID, access
files in restricted-access filesets. It is not required that the executable file be in the restricted-access
fileset.
If the executable file has a file privilege, then any user library or ordinary DLL loaded by the process
must also have that file privilege. Otherwise, an error is reported when the process attempts to
load that library or DLL.
The PRIVSETID file privilege can be inherited by child processes created using fork() because
the parent and child process share the same executable. Any child processes created by other
process creation functions or procedure calls (such as exec() or PROCESS_CREATE_) acquire
their file privileges from that target executable file.
If an executable without the PRIVSETID file privilege performs a privileged switch ID operation,
then the process is unconditionally denied access to files in the restricted-access fileset.
File privileges are removed from a file if the file is changed (such as by being opened for writing).
OSS Process Pair Considerations
• Beginning with the H06.25 and J06.14 RVUs, PROCESS_SPAWN_ accepts the value
ZSYS^VAL^PCREATOPT^CALLERSNAME (3) in the Z^NAMEOPTIONS (also known as
pe_name_options) field of the process-extension parameter to create an OSS backup
process.
• Only a named OSS process can create an OSS backup. An OSS process cannot create a
Guardian backup process and vice versa.
• Because the backup process is created with PROCESS_SPAWN_, it has Guardian, but not
OSS ancestry.
• Only the active-backup model is available in an OSS process pair. Passive backup is not
supported—in Guardian or OSS—for C/C++ programs using the normal heap. Therefore,
an OSS process pair does not use the CHECKMONITOR procedure or procedures in the
CHECK... family. Design and implementation of an active-backup protocol and determination
of when to checkpoint a particular state is application-specific.
• For more information about OSS process-pair programming, see the Open System Services
Programmer's Guide; for more about process-pair programming, see the Guardian
Programmer's Guide.
OSS SEEP Considerations
Beginning with the H06.26 and J06.15 RVUs, process creation might involve OSS Security Event-Exit
Process (SEEP) consultation. For details, see the information on accessing OSS SEEP-Protected Files
in the Open System Services Programmer’s Guide.
Related Programming Manuals
For programming information on batch processing, see the appropriate NetBatch manual. For
programming information on Open System Services and PROCESS_SPAWN_ programming
examples, see the Open System Services Programmer's Guide.
1120 Guardian Procedure Calls (P)