getsockname
The Windows Sockets
getsockname function gets the local name for a socket.
int getsockname (
SOCKET s,
|
|
struct sockaddr FAR* name,
|
|
int FAR* namelen
|
|
);
|
|
Parameters
s
[in] A descriptor identifying a bound socket.
name
[out] Receives the address (name) of the socket.
namelen
[out] The size of the
name buffer.
Remarks
getsockname retrieves the current name for the specified socket descriptor in
name. It is used on a bound and/or connected socket specified by the
s parameter. The local association is returned. This call is especially useful
when a
connect call has been made without doing a
bind first; this call provides the only means by which you can determine the local
association which has been set by the system.
On return, the
namelen argument contains the actual size of the name returned in bytes.
If a socket was bound to an unspecified address (for example, ADDR_ANY),
indicating that any of the host's addresses within the specified address family
should be used for the socket,
getsockname will not necessarily return information about the host address, unless the
socket has been connected with
connect or
accept. A Windows Sockets application must not assume that the address will be
specified unless the socket is connected. This is because for a multihomed host the
address that will be used for the socket is unknown unless the socket is
connected.
Return Values
If no error occurs,
getsockname returns zero. Otherwise, a value of SOCKET_ERROR is returned, and a specific
error code can be retrieved by calling
WSAGetLastError.
Error Codes
WSANOTINITIALISED
| A successful WSAStartup must occur before using this function.
|
WSAENETDOWN
| The network subsystem has failed.
|
WSAEFAULT
| The name or the namelen argument is not a valid part of the user address space, or the namelen argument is too small.
|
WSAEINPROGRESS
| A blocking Windows Sockets 1.1 call is in progress, or the service provider is
still processing a callback function.
|
WSAENOTSOCK
| The descriptor is not a socket.
|
WSAEINVAL
| The socket has not been bound to an address with bind, or ADDR_ANY is specified in bind but connection has not yet occurs.
|
See Also
bind,
getpeername,
socket
- Software for developers
-
Delphi Components
.Net Components
Software for Android Developers
- More information resources
-
MegaDetailed.Net
Unix Manual Pages
Delphi Examples
- Databases for Amazon shops developers
-
Amazon Categories Database
Browse Nodes Database