unix - 如果我将accept(3)应用于IPv4套接字,我可以假设它返回IPv4地址吗?

标签 unix network-programming posix ipv6 ipv4

s为由socket(PF_INET, ...)创建的套接字的文件描述符。

如果我调用 accept(s, (struct sockaddr *) &addr, ...),其中 addr 的类型为 struct sockaddr_in ,我可以假设返回的地址格式是IPv4,即

addr.sin_family == AF_INET ?

最佳答案

来自The Open Group's描述:

The accept() function shall extract the first connection on the queue of pending connections, create a new socket with the same socket type protocol and address family as the specified socket, and allocate a new file descriptor for that socket.

关于unix - 如果我将accept(3)应用于IPv4套接字,我可以假设它返回IPv4地址吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10960918/

相关文章:

linux - 在Linux CLI中按位置替换特定行上的特定字符

c - 接收服务器响应并将其发送到浏览器?

c - 使用 BSD 套接字模拟事件的 FTP 连接

无法找出C应用程序中的内存泄漏

无法让套接字保持事件状态并接收数据

docker - 在内部进程崩溃时重新启动 Docker 容器

linux - 查找大小大于或等于 X 的文件

perl - 如何在 Perl 脚本中导出 shell 变量?

bash - 如何检查 Bash shell 脚本中是否存在目录?

c - Linux/POSIX 等同于 Win32 的 CreateEvent、SetEvent、WaitForSingleObject