1dat_ep_disconnect(3DDAiTr)ect Access Transport Library Functdiaotn_sep_disconnect(3DAT)
2
3
4

NAME

6       dat_ep_disconnect  -  terminate a connection or a connection establish‐
7       ment
8

SYNOPSIS

10       cc [ flag... ] file... -ldat [ library... ]
11       #include <dat/udat.h>
12
13       DAT_RETURN
14           dat_ep_disconnect (
15           IN    DAT_EP_HANDLE      ep_handle,
16           IN    DAT_CLOSE_FLAGS    disconnect_flags
17           )
18
19

PARAMETERS

21       ep_handle           Handle for an instance of Endpoint.
22
23
24       disconnect_flags    Flags for disconnect. Flag values are as follows:
25
26                           DAT_CLOSE_ABRUPT_FLAG      Abrupt  close.  This  is
27                                                      the default value.
28
29
30                           DAT_CLOSE_GRACEFUL_FLAG    Graceful close.
31
32
33

DESCRIPTION

35       The dat_ep_disconnect() function requests a termination of a connection
36       or  connection  establishment.  This   operation   is   used   by   the
37       active/client  or  a  passive/server  side  Consumer  of the connection
38       model.
39
40
41       The disconnect_flags parameter allows Consumers to specify whether they
42       want  graceful  or  abrupt disconnect. Upon disconnect, all outstanding
43       and in-progress DTOs and RMR Binds must be completed.
44
45
46       For abrupt disconnect, all outstanding DTOs and RMR Binds are completed
47       unsuccessfully,  and  in-progress  DTOs  and RMR Binds can be completed
48       successfully or unsuccessfully. If  an  in-progress  DTO  is  completed
49       unsuccessfully,  all  follow  on in-progress DTOs in the same direction
50       also must be completed unsuccessfully. This order is presented  to  the
51       Consumer  through  a DTO completion Event Stream of the recv_evd_handle
52       and and request_evd_handle of the Endpoint.
53
54
55       For graceful disconnect, all outstanding and in-progress  request  DTOs
56       and  RMR Binds must try to be completed successfully first, before dis‐
57       connect proceeds.  During  that  time,  the  local  Endpoint  is  in  a
58       DAT_EP_DISCONNECT_PENDING state.
59
60
61       The  Consumer  can  call abrupt dat_ep_disconnect() when the local End‐
62       point is in the DAT_EP_DISCONNECT_PENDING state. This causes  the  End‐
63       point  to transition into DAT_EP_STATE_DISCONNECTED without waiting for
64       outstanding and in-progress request DTOs and RMR Binds to  successfully
65       complete. The graceful dat_ep_disconnect() call when the local Endpoint
66       is in the DAT_EP_DISCONNECT_PENDING state has no effect.
67
68
69       If the Endpoint is not in DAT_EP_STATE_CONNECTED, the semantic  of  the
70       operation is the same for graceful or abrupt disconnect_flags value.
71
72
73       No new Send, RDMA Read, and RDMA Write DTOs, or RMR Binds can be posted
74       to the Endpoint when  the  local  Endpoint  is  in  the  DAT_EP_DISCON‐
75       NECT_PENDING state.
76
77
78       The successful completion of the disconnect is reported to the Consumer
79       through a DAT_CONNECTION_EVENT_DISCONNECTED event on connect_evd_handle
80       of  the  Endpoint.  The  Endpoint  is automatically transitioned into a
81       DAT_EP_STATE_DISCONNECTED state upon  successful  asynchronous  comple‐
82       tion.   If  the  same  EVD  is  used  for  connect_evd_handle  and  any
83       recv_evd_handle  and  request_evd_handle,  all  successful   Completion
84       events of in-progress DTOs precede the Disconnect Completion event.
85
86
87       Disconnecting  an  unconnected  Disconnected Endpoint is no-op. Discon‐
88       necting an Endpoint in DAT_EP_STATE_UNCONNECTED, DAT_EP_STATE_RESERVED,
89       DAT_EP_STATE_PASSIVE_CONNECTION_PENDING,     and    DAT_EP_STATE_TENTA‐
90       TIVE_CONNECTION_PENDING is disallowed.
91
92
93       Both abrupt and graceful disconnect of the Endpoint  during  connection
94       establishment,        DAT_EP_STATE_ACTIVE_CONNECTION_PENDING        and
95       DAT_EP_STATE_COMPLETION_PENDING, "aborts" the connection  establishment
96       and transitions the local Endpoint into DAT_EP_STATE_DISCONNECTED. That
97       causes preposted Recv DTOs to be flushed to recv_evd_handle.
98

RETURN VALUES

100       DAT_SUCCESS                   The operation was successful.
101
102
103       DAT_INVALID_HANDLE            The ep_handle parameter is invalid.
104
105
106       DAT_INSUFFICIENT_RESOURCES    The operation failed due to resource lim‐
107                                     itations.
108
109
110       DAT_INVALID_PARAMETER         The    disconnect_flags    parameter   is
111                                     invalid.
112
113
114       DAT_INVALID_STATE             A parameter is in an invalid state.  End‐
115                                     point  is not in the valid state for dis‐
116                                     connect.
117
118

ATTRIBUTES

120       See attributes(5) for descriptions of the following attributes:
121
122
123
124
125       ┌─────────────────────────────┬─────────────────────────────┐
126       │      ATTRIBUTE TYPE         │      ATTRIBUTE VALUE        │
127       ├─────────────────────────────┼─────────────────────────────┤
128       │Interface Stability          │Standard: uDAPL, 1.1, 1.2    │
129       ├─────────────────────────────┼─────────────────────────────┤
130       │MT-Level                     │ Unsafe                      │
131       └─────────────────────────────┴─────────────────────────────┘
132

SEE ALSO

134       libdat(3LIB), attributes(5)
135
136
137
138SunOS 5.11                        16 Jul 2004          dat_ep_disconnect(3DAT)
Impressum