Guardian Procedure Errors and Messages Manual

The value of the return token, ZSPI-TKN-RETCODE, indicates the content of the error list:
If zero and no error list follows, no error occurred.
If zero but one or more error lists follow, the error lists contain only warning messages: unusual
conditions that might be of interest to the requester but do not prevent the server from completing
the command.
If nonzero, the error list must contain at least one token with an error number that matches the
value of the return token. Each subsystem defines its own set of error numbers.
Error Lists and Non-SPI Subsystems
Some HP software facilities do not have a programmatic command interface based on SPI, but do
define standard error lists. If a HP subsystem that has an SPI-based command interface calls one
of these facilities and receives an error, the subsystem usually tries to recover from the error. If that
is not possible, the subsystem reports the error in an SPI error token (ZSPI-TKN-ERROR), embeds it
in an error list of the prescribed form, and encloses this error list in its response.
For information about creating error lists, additional information about tokens and token types,
and definitions of tokens whose names begin with ZSPI-, see the SPI Programming Manual.
Traps and Signals
Certain critical problems can cause a process to be unable to continue executing. These are typically
the result of coding errors, but other conditions, such as the lack of a system resource (for example,
memory), can also prevent normal process execution. Such conditions are reported as traps to
TNS processes and as signals to TNS/R native processes. A trap is a software mechanism that
stops process execution. A signal is a software interrupt that can notify a process of other events,
such as timer expiration, as well as of critical error conditions.
The set of signals that are used in the Guardian environment is known as TNS/R native signals.
This set is a subset of a larger set of signals used in the Open System Services (OSS) environment.
Most of the TNS/R native signals are caused by the same conditions that cause traps to occur in
TNS processes. In this manual, equivalent trap and signal conditions are described together.
Each description of a trap or signal condition contains the following information:
The signal name or trap number
The cause of the trap or signal
The effect of the error on the system
The recovery actions you can take
You can use the ARMTRAP procedure to specify a location in your application program where
execution is to begin if a trap occurs. Your program can use information passed to investigate the
cause of the error. You can even reset the trap mechanism and cause the program to restart.
Use of the ARMTRAP procedure and user-written trap processes is documented in the Guardian
Programmer's Guide.
18 Introduction