gpt4 book ai didi

检查套接字是否在 C 中监听

转载 作者:太空狗 更新时间:2023-10-29 16:38:00 24 4
gpt4 key购买 nike

在遍历套接字文件描述符时,如何检查其中一个是否来自被动套接字(监听连接)?

最佳答案

这可以用 getsockopt 检查(SO_ACCEPTCONN)。例如:

#include <sys/socket.h>

int val;
socklen_t len = sizeof(val);
if (getsockopt(fd, SOL_SOCKET, SO_ACCEPTCONN, &val, &len) == -1)
printf("fd %d is not a socket\n", fd);
else if (val)
printf("fd %d is a listening socket\n", fd);
else
printf("fd %d is a non-listening socket\n", fd);

关于检查套接字是否在 C 中监听,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10260600/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com