Guardian Procedure Calls Reference Manual

Returned Value
INT
A file-system error code that indicates the outcome of the call:
Process successfully suspended.0
Process is already in the suspended state.2
Process does not exist.11
Security violation.48
Unable to communicate with processor where the process is running.201
Considerations
Reactivating a process
You can reactivate a suspended process or process pair by calling PROCESS_ACTIVATE_.
You can also reactivate it by calling ACTIVATEPROCESS, but you must have a process ID to
identify the process. A process handle can be converted to a process ID by a call to
PROCESSHANDLE_TO_CRTPID_, but the conversion will fail if the PIN of the process is greater
than 255.
Security
When PROCESS_SUSPEND_ is called on a Guardian process, the caller must be the super
ID, the group manager of the process access ID, or a process with the same process access
ID as the process or process pair being suspended. For information about the process access
ID, see the PROCESS GETINFO_ General Considerations (page 1009) and the Guardian User's
Guide.
The caller must be local to the same system as the specified process. A process is considered
to be local to the system on which its creator is local. A process is considered to be remote,
even if it is running on the local system, if its creator is remote. (In the same manner, a process
running on the local system whose creator is also running on the local system might still be
considered remote because it's creator's creator is remote.)
A remote process running on the local system can become a local process by successfully
logging on to the local system using a call to the USER_AUTHENTICATE_ (or VERIFYUSER)
procedure. After a process logs on to the local system, any processes that it creates are
considered local.
When PROCESS_SUSPEND_ is called on an OSS process, the security rules that apply are
the same as those that apply when calling the OSS kill() function. See the kill(2)
function reference page either online or in the Open System Services System Calls Reference
Manual for details.
Safeguard Considerations
For information on processes protected by Safeguard, see the Safeguard Reference Manual.
OSS Considerations
When used on an OSS process, PROCESS_SUSPEND_ has the same effect as calling the OSS
kill() function with the input parameters as follows:
The signal parameter set to SIGSTOP
The pid parameter set to the OSS process ID of the process identified by processhandle
in the PROCESS_SUSPEND_ call
The SIGSTOP signal is delivered to the target process. The SIGCHLD signal is delivered to the
caller of the target process.
PROCESS_SUSPEND_ Procedure 1129