T_ERROR(3NSL) Networking Services Library Functions T_ERROR(3NSL)

t_error - produce error message

#include <xti.h>
int t_error(const char *errmsg);

This routine is part of the XTI interfaces which evolved from the TLI interfaces. XTI represents the future evolution of these interfaces. However, TLI interfaces are supported for compatibility. When using a TLI routine that has the same name as an XTI routine, the tiuser.h header file must be used. Refer to the TLI COMPATIBILITY section for a description of differences between the two interfaces.

The t_error() function produces a message on the standard error output which describes the last error encountered during a call to a transport function. The argument string errmsg is a user-supplied error message that gives context to the error.

The error message is written as follows: first (if errmsg is not a null pointer and the character pointed to be errmsg is not the null character) the string pointed to by errmsg followed by a colon and a space; then a standard error message string for the current error defined in t_errno. If t_errno has a value different from TSYSERR, the standard error message string is followed by a newline character. If, however, t_errno is equal to TSYSERR, the t_errno string is followed by the standard error message string for the current error defined in errno followed by a newline.

The language for error message strings written by t_error() is that of the current locale. If it is English, the error message string describing the value in t_errno may be derived from the comments following the t_errno codes defined in xti.h. The contents of the error message strings describing the value in errno are the same as those returned by the strerror(3C) function with an argument of errno.

The error number, t_errno, is only set when an error occurs and it is not cleared on successful calls.

If a t_connect(3NSL) function fails on transport endpoint fd2 because a bad address was given, the following call might follow the failure:


t_error("t_connect failed on fd2");

The diagnostic message to be printed would look like:


t_connect failed on fd2: incorrect addr format

where incorrect addr format identifies the specific error that occurred, and t_connect failed on fd2 tells the user which function failed on which transport endpoint.

Upon completion, a value of 0 is returned.

All - apart from T_UNINIT

No errors are defined for the t_error() function.

The XTI and TLI interface definitions have common names but use different header files. This, and other semantic differences between the two interfaces are described in the subsections below.

The XTI interfaces use the header file, xti.h. TLI interfaces should not use this header. They should use the header:


#include <tiuser.h>

The t_errno value that can be set by the XTI interface and cannot be set by the TLI interface is:

TPROTO

See attributes(7) for descriptions of the following attributes:

ATTRIBUTE TYPE ATTRIBUTE VALUE
MT Level Safe

strerror(3C), t_errno(3NSL), attributes(7)

May 7, 1998 OmniOS