1t_rcvuderr(3NSL)     Networking Services Library Functions    t_rcvuderr(3NSL)
2
3
4

NAME

6       t_rcvuderr - receive a unit data error indication
7

SYNOPSIS

9       #include <xti.h>
10
11
12
13       int t_rcvuderr(int fd, struct t_uderr *uderr);
14
15

DESCRIPTION

17       This  routine  is part of the XTI interfaces which evolved from the TLI
18       interfaces. XTI represents the future evolution  of  these  interfaces.
19       However,  TLI  interfaces are supported for compatibility. When using a
20       TLI routine that has the same name as an  XTI  routine,  the   tiuser.h
21       header  file must be used.  Refer to the  TLI COMPATIBILITY section for
22       a description of differences between the two interfaces.
23
24
25       This function is used in  connectionless-mode  to  receive  information
26       concerning  an error on a previously sent data unit, and should only be
27       issued following a unit data error indication. It informs the transport
28       user  that a data unit with a specific destination address and protocol
29       options produced an error. The argument fd identifies the local  trans‐
30       port  endpoint  through  which  the  error report will be received, and
31       uderr points to a t_uderr structure containing the following members:
32
33         struct netbuf addr;
34         struct netbuf opt;
35         t_scalar_t error;
36
37
38
39       The maxlen field of addr and opt must be set before calling this  func‐
40       tion to indicate the maximum size of the buffer for each. If this field
41       is set to zero for  addr or  opt, no information  is  returned  in  the
42       buf field of this parameter.
43
44
45       On  return from this call, the addr structure specifies the destination
46       protocol address of the erroneous data unit, the opt structure  identi‐
47       fies  options that were associated with the data unit, and error speci‐
48       fies a protocol-dependent error code.
49
50
51       If the user does not care to identify the data unit  that  produced  an
52       error, uderr may be set to a null pointer, and t_rcvuderr() will simply
53       clear the error indication without reporting  any  information  to  the
54       user.
55

RETURN VALUES

57       Upon  successful  completion,  a value of  0 is returned.  Otherwise, a
58       value of  -1 is returned and t_errno is set to indicate an error.
59

VALID STATES

61       T_IDLE.
62

ERRORS

64       On failure, t_errno is set to one of the following:
65
66       TBADF          The specified file descriptor does not refer to a trans‐
67                      port endpoint.
68
69
70       TBUFOVFLW      The  number of bytes allocated for the incoming protocol
71                      address or options (maxlen) is greater than  0  but  not
72                      sufficient to store the information. The unit data error
73                      information to be returned in uderr will be discarded.
74
75
76       TNOTSUPPORT    This function is not supported by the underlying  trans‐
77                      port provider.
78
79
80       TNOUDERR       No  unit  data  error indication currently exists on the
81                      specified transport endpoint.
82
83
84       TOUTSTATE      The communications endpoint referenced by fd is  not  in
85                      one  of  the  states in which a call to this function is
86                      valid.
87
88
89       TPROTO         This error indicates that a  communication  problem  has
90                      been detected between XTI and the transport provider for
91                      which there is no other suitable XTI error (t_errno).
92
93
94       TSYSERR        A system error has occurred  during  execution  of  this
95                      function.
96
97

TLI COMPATIBILITY

99       The XTI and TLI interface definitions have common names but use differ‐
100       ent header files. This, and other semantic differences between the  two
101       interfaces are described in the subsections below.
102
103   Interface Header
104       The  XTI  interfaces  use the header file, xti.h. TLI interfaces should
105       not use this header.  They should use the header:
106         #include <tiuser.h>
107
108   Error Description Values
109       The t_errno values TPROTO and TOUTSTATE can be set by the XTI interface
110       but not by the TLI interface.
111
112
113       A  t_errno  value  that this routine can return under different circum‐
114       stances than its XTI counterpart is TBUFOVFLW. It can be returned  even
115       when the maxlen field of the corresponding buffer has been set to zero.
116
117   Option Buffers
118       The format of the options in an opt buffer is dictated by the transport
119       provider. Unlike the XTI interface, the TLI interface does not fix  the
120       buffer format.
121

ATTRIBUTES

123       See attributes(5)  for descriptions of the following attributes:
124
125
126
127
128       ┌─────────────────────────────┬─────────────────────────────┐
129       │      ATTRIBUTE TYPE         │      ATTRIBUTE VALUE        │
130       ├─────────────────────────────┼─────────────────────────────┤
131       │MT Level                     │Safe                         │
132       └─────────────────────────────┴─────────────────────────────┘
133

SEE ALSO

135       t_rcvudata(3NSL), t_sndudata(3NSL), attributes(5)
136
137
138
139SunOS 5.11                        7 May 1998                  t_rcvuderr(3NSL)
Impressum