拨打电话后获取客户端端口(C)

问题描述:

我正在浏览一些连接到端口P上的远程主机的源代码(使用TCP)。在调用连接之后(假设成功),我想要发现连接的客户端端口(即客户端端口)。 事实上,我正在浏览sshconnect.c中的openssh源码,有一个调用timeout_connect的函数ssh_connect。我有远程主机的IP,端口,本地IP但想知道成功连接后的本地(客户端)端口。拨打电话后获取客户端端口(C)

我希望我已经清楚,谢谢你的答案 问候 Sapsi

尝试喂养客户端套接字文件描述符getsockname,像这样

struct sockaddr_in local_address; 
int addr_size = sizeof(local_address); 
getsockname(fd, &local_address, &addr_size); 

然后你可以选择分开IP和端口的地址结构。