recv()在netlink套接字中返回0

时间:2015-10-08 17:25:37

标签: c linux sockets netlink

在两个主机之间的网络套接字中,当另一端的对端执行有序关闭时,recv()返回值将为0。

在用户空间中监听的netlink套接字(在用户空间和内核之间进行通信)中返回0的recv()是什么意思? 例如,在用户空间中侦听来自RTM_NEWLINK类型的内核的netlink消息和家庭NETLINK_ROUTE。

1 个答案:

答案 0 :(得分:0)

  

在两个主机之间的网络套接字中,当另一端的对端执行有序关闭时,recv()返回值将为0。

这不是它在 man 页面中所说的内容。它说

  

当对等体执行有序关闭时,返回值将为0.

关于'在两台主机之间的网络插座中'的部分是您的发明。

此规范适用于recv(),期。

  

recv()在用户空间中监听的netlink套接字(用户空间和内核之间的通信)返回0的含义是什么?例如,在用户空间中侦听来自RTM_NEWLINK类型的内核的netlink消息和家庭NETLINK_ROUTE。

含义完全相同。它是一个套接字,它是连接的,recv()返回零=>对等体已经有序关闭。