NetIPC 3000/XL Programmer's Reference Manual (5958-8600)

Table Of Contents
Chapter 3 121
NetIPC Intrinsics
IPCSHUTDOWN
data network (PDN), the cause may not be transmitted to the remote
node.
When used with direct access to level 3, the intrinsic IPCSHUTDOWN can
only be called in waited mode. The intrinsic will not return until the
request is completed.
X.25 direct access to level 3 does not support the graceful release bit. As
a suggestion, to ensure that no data packets are lost before the clear
packet is sent, use the D bit option in the last IPCSEND. This would
assure end-to-end acknowledgment of this message before issuing the
IPCSHUTDOWN to clear the virtual circuit. Another method is to send an
unimportant message as the last message. (See example 2 in Chapter
4 , “NetIPC Examples,” for an example of this method.)
Common errors returned by IPCSHUTDOWN in
result
are.
SOCKERR 0 Request completed successfully.
SOCKERR 54 Invalid call socket descriptor.
SOCKERR 66 Invalid connection descriptor.
SOCKERR 67 Connection failure detected.
SOCKERR 142 Invalid call user data opt record entry.
SOCKERR 170 Error with use of the fast select facility.
A complete table of SOCKERRs is included in Appendix C ,
“Error Messages.”
TCP
If graceful release is specified and supported by the remote process, the
requestor of a graceful release will go to a simplex-in state (that is, able
only to receive, unable to send) and the remote process will go to a
simplex-out state. The VC remains in this state until the remote
process shuts down its socket, at which time all resources are released.
See “Shutting Down a Connection” in Chapter 1 , “NetIPC
Fundamentals, for the steps to take in implementing a graceful release
shutdown.
If graceful release is selected, a SOCKERR 102 result will be returned
if any of the following conditions exists:
A connection request has been received, but the connection has not
been accepted.
The connection has already been gracefully released, and the process
is therefore in a simplex-in state.
A connection request has been issued, but the connection has not yet
been established.
The connection has been aborted.
The protocol module (part of the NS transport) does not support
graceful release.