|
WSASendDisconnect
The Windows Sockets WSASendDisconnect function initiates termination of the connection for the socket and sends
disconnect data.
int WSASendDisconnect (
SOCKET s,
|
| LPWSABUF lpOUT boundDisconnectData
|
| );
|
|
Parameters
s
[in] A descriptor identifying a socket.
lpOutboundDisconnectData
[in] A pointer to the outgoing disconnect data.
Remarks
WSASendDisconnect is used on connection-oriented sockets to disable transmission, and to
initiate termination of the connection along with the transmission of disconnect
data, if any.
After this function has been successfully issued, subsequent sends are
disallowed.
lpOutboundDisconnectData, if not NULL, points to a buffer containing the outgoing disconnect data to
be sent to the remote party for retrieval by using WSARecvDisconnect.
Note that WSASendDisconnect does not close the socket, and resources attached to the socket will not be
freed until closesocket is invoked.
Comments
WSASendDisconnect does not block regardless of the SO_LINGER setting on the socket.
An application should not rely on being able to re-use a socket after it has
been WSASendDisconnected. In particular, a Windows Sockets provider is not required to support the
use of connect/WSAConnect on such a socket.
Return Values
If no error occurs, WSASendDisconnect returns zero. Otherwise, a value of SOCKET_ERROR is returned, and a specific
error code may be retrieved by calling WSAGetLastError.
Error Codes
WSANOTINITIALISED
| A successful WSAStartup must occur before using this function.
| WSAENETDOWN
| The network subsystem has failed.
| WSAENOPROTOOPT
| The parameter lpOutboundDisconnectData is not NULL, and the disconnect data is not supported by the service provider.
| WSAEINPROGRESS
| A blocking Windows Sockets 1.1 call is in progress, or the service provider is
still processing a callback function.
| WSAENOTCONN
| The socket is not connected (connection-oriented sockets only).
| WSAENOTSOCK
| The descriptor is not a socket.
| WSAEFAULT
| The lpOutboundDisconnectData argument is not totally contained in a valid part of the user address space.
|
See Also
connect, socket
Related Links
Software for Delphi and C++ Builder developers
Software for Visual Studio .NET developers
Software for Visual Basic 6 developers
Delphi Tips&Tricks
MegaDetailed.NET
More Online Helps
Win32 Programmer's Reference (win32.hlp)
Win32 Multimedia Programmer's Reference (mmedia.hlp)
OLE Programmer's Reference (ole.hlp)
Microsoft Windows Pen API Programmer's Reference (penapi.hlp)
Microsoft Windows Telephony API (TAPI) Programmer's Reference (tapi.hlp)
Unix Manual Pages
|