getpeername()函數 Unix/Linux
getpeername - 獲取連接的對等套接字的名稱
內容簡介
#include <sys/socket.h>
int getpeername(int s**, struct sockaddr *name, socklen_t *namelen);**
描述
getpeername () 返回連接到套接字s的同伴的名字。namelen 參數應被初始化,以指示的空間指向金額的名字。返回時它包含(以字節爲單位)返回的名稱的實際大小。該名稱被截斷,如果提供的緩衝區太小。
返回值
On success, zero is returned. On error, -1 is returned, and errno is set appropriately.
錯誤
標籤
描述
EBADF
The argument s is not a valid descriptor.
EFAULT
The name parameter yiibais to memory not in a valid part of the process address space.
EINVAL
namelen is invalid (e.g., is negative).
ENOBUFS
Insufficient resources were available in the system to perform the operation.
ENOTCONN
The socket is not connected.
ENOTSOCK
The argument s is a file, not a socket.
遵循於
SVr4, 4.4BSD (the getpeername () function call first appeared in 4.2BSD), POSIX.1-2001.
注意
The third argument of getpeername () is in reality an int * (and this is what 4.x BSD and libc4 and libc5 have). Some POSIX confusion resulted in the present socklen_t , also used by glibc. See also accept (2).
另請參閱
accept (2)
bind (2)
getsockname (2)