tperrno return values
The following is a list of error codes for tperrno that are set by LRT Tuxedo functions. All the ATMI functions whose failures are reported by the value returned in tperrno, belong to one of the categories listed below.
Protocol errors
Protocol errors occur when an ATMI function is called in an incorrect context. For example, when an ATMI function was called in the wrong order or if the call was made by the wrong process, an error may be triggered.
| Error Code | Category |
|---|---|
| TPEPROTO | Protocol Errors. |
| TPESYSTEM | System/T errors. |
| TPEOS | Operating system errors|*LR_lrt_op_sys_errors_type. |
| TPEINVAL | Errors from invalid arguments|*LR_lrt_errors_from_invalargs_type. |
| TPENOENT | Errors from lack of entries in system tables or the data structure used to identify buffer types. |
| TPEPERM | Errors from lack of permission to enter the application. |
| TPERMERR | Resource manager errors. |
| TPETRAN | Transaction related errors. |
| TPEITYPE and TPEOTYPE | Errors from mismatching of typed buffers |
| TPELIMIT and TPEBADDESC | Errors that apply only to asynchronous communication calls or conversational calls because they involve call descriptors. |
| TPESVCFAIL, TPESVCERR, TPEBLOCK and TPGOTSIG | Errors that can occur as a result of the communication calls in general. |
| TPETIME | Transaction and blocking time-out errors. |
| TPEABORT | Errors from calling tpcommit() when the transaction should have been explicitly aborted. |
| TPEHAZARD, TPEHEURISTIC | Errors that signal that a heuristic decision was (or may have been) taken. |
System/T errors
When System/T errors occur, messages explaining their exact nature are written to the central event log. Since these are system errors rather than application errors, the system administrator may be needed to help correct them.
Operating system errors
Operating system errors indicate that a system call has failed. A numeric value identifying the failed system call is returned in the global variable, Uunixerr. Operating system errors are seldom application errors; systems administration may need to be called on to correct them.
Errors from invalid arguments
All of the ATMI functions that take arguments can fail if invalid arguments are passed to them. In the case where the function returns to the caller, the function fails and causes tperrno to be set to TPEINVAL. In the case of tpreturn() or tpforward(), if this type of error is discovered while processing the arguments, tperrno is set to TPESVCERR for the function waiting on the call; that is, either tpcall() or tpgetrply(). This is an application error and can be corrected by the programmer.

