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


NAME


t_error - produce error message

SYNOPSIS


#include <xti.h>


int t_error(const char *errmsg);


DESCRIPTION


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.

EXAMPLES


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.

RETURN VALUES


Upon completion, a value of 0 is returned.

VALID STATES


All - apart from T_UNINIT

ERRORS


No errors are defined for the t_error() function.

TLI COMPATIBILITY


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.

Interface Header


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

#include <tiuser.h>


Error Description Values


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


TPROTO

ATTRIBUTES


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


+---------------+-----------------+
|ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+---------------+-----------------+
|MT Level | Safe |
+---------------+-----------------+

SEE ALSO


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


May 7, 1998 T_ERROR(3NSL)