从地址获取套接字描述符?

Getting the socket descriptor from the address?

sendto中:

 ssize_t sendto(int sockfd, const void *buf, size_t len, int flags,
              const struct sockaddr *dest_addr, socklen_t addrlen);

从这个调用中我得到了发送套接字的套接字描述符,有没有办法从 const struct sockaddr *dest_addr

获取接收方的套接字描述符

没有。这不可能。您要求检索的套接字描述符是接收方的套接字描述符,据我们所知,它可能在完全不同的机器中的某个其他进程中运行。

此外,我想不出通过获取该套接字描述符可以实现什么的原因。

您所要求的在形式上毫无意义。

  1. 接收方的套接字描述符在接收进程中。它在发送过程中是不可用的,即使是也没有任何用处,因为它的值只有在接收过程中才有意义。

  2. UDP IP address:port 可能无法映射到单个套接字。