我的 C 客户端出现问题,我在其中实现了客户端 gsoap 程序来调用 Web 服务。
在 Windows PC 上一切正常,但是当我在基于 linux 的 POS 设备上发布我的代码时,我收到以下错误:
"setsockopt SO_SNDBUF failed in tcp_connect()"
我应该从哪里开始调试此错误,可能是什么原因?
返回的errornum是2
生成错误的代码部分:(在 stdsoap2.c 中)
if (setsockopt(sk, SOL_SOCKET, SO_SNDBUF, (char*)&len, sizeof(int))){
soap->errnum = soap_socket_errno(sk);
soap_set_sender_error(soap,
tcp_error(soap),
"setsockopt SO_SNDBUF failed in tcp_connect()",
SOAP_TCP_ERROR);
soap->fclosesocket(soap, sk);
#ifdef WITH_IPV6
freeaddrinfo(ressave);
#endif
return SOAP_INVALID_SOCKET;
}