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_UNINITERRORS
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:
TPROTOATTRIBUTES
See
attributes(7) for descriptions of the following attributes:
+---------------+-----------------+
|ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+---------------+-----------------+
|MT Level | Safe |
+---------------+-----------------+
SEE ALSO
strerror(3C),
t_errno(3NSL),
attributes(7) May 7, 1998 T_ERROR(3NSL)