lmrw.net
当前位置:首页 >> gEtpEErnAmE >>

gEtpEErnAmE

int getpeername(int s, struct sockaddr *name, socklen_t *namelen); 第一个参数是一个套接字,就好像一个句柄。 你的错误是这个套接字没有初始化或者已经关闭了,所以检查一下你给getpeername传入的第一个参数是怎么来的。

获取与套接口相连的端地址。#include int PASCAL FAR getpeername( SOCKET s, struct sockaddr FAR* name,int FAR* namelen);s:标识一已连接套接口的描述字。name:接收端地址的名字结构。namelen:返回名字结构的长度。

你accept确实是是知道了对端的地址和端口号,但如果只有个一个socket 描述符的时候,你就使用这两个函数获取对应的地址和端口了。

getpeername()函数用于从端口s中获取与它捆绑的端口名,并把它存放在sockaddr类型的name结构中。它适用于数据报或流类套接口。返回值:若无错误发生,getpeername()返回零。否则的话,返回SOCKET_ERROR,应用程序可通过WSAGetLastError()来获取...

socket_getpeername() 获取远程类似主机的ip地址 socket_getsockname() 获取本地socket的ip地址 怎么感觉你用的实际上是对的,难道用nginx一类的负载均衡...

#include #include #include #include #include #include #include #include #include #include #define DEBUG 0 static int _tcp_getpeername(int socket, struct sockaddr *_RESTRICT address, socklen_t *_RESTRICT address_len, nwio_tcpcon...

.DLL命令 API_getsockname, 整数型, "ws2_32.dll", "getsockname", .参数 s, 整数型, , .参数 name, sockaddr, , .参数 namelen, 整数型, 传址, .DLL命令 API_getpeername, 整数型, "ws2_32.dll", "getpeername", .参数 s, 整数型, , .参数 name...

是的

getpeername()函数用于从端口s中获取与它捆绑的端口名,并把它存放在sockaddr类型的name结构中。它适用于数据报或流类套接口。返回值:若无错误发生,getpeername()返回零。

在一个非套接字上尝试了一个操作。 意思你这个socket可能关闭,可能还没创建,或者创建失败 如果失败就是端口占用

网站首页 | 网站地图
All rights reserved Powered by www.lmrw.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com