位置:首页 > 其他技术 > Unix/Linux系统调用 > getsockname()函数 Unix/Linux

getsockname()函数 Unix/Linux

getsockname - 获得套接字名称

内容简介

#include <sys/socket.h> 

int getsockname(int s, struct sockaddr *name, socklen_t *namelen);

描述

getsockname() 返回当前名称指定的套接字。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 points 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.
ENOTSOCK
  The argument s is a file, not a socket.

遵循于

SVr4, 4.4BSD (the getsockname() function call appeared in 4.2BSD), POSIX.1-2001.

注意

The third argument of getsockname() 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).

另请参阅