我正在尝试实现一个通过ipv4和ipv6监听相同端口的gsoap服务器,但是它在"netstat -l“命令中没有被列为tcp6,尽管我用-DWITH_IPV6 -DWITH_NO_IPV6_V6ONLY宏定义编译了gsoap。”netstat -l“命令有tcp监听服务器。当我使用-DWITH_IPV6 -DWITH_IPV6_V6ONLY宏编译代码时,它只能与Ipv6一起工作,并且"netstat -l“响应有tcp6侦听服务器。
当我调试the code时,我看到soap_bind函数通过getaddrinfo传递ai_family = PF_UNSPEC,并且它不使用返回的addrinfo数据的ai_next。addrinfo.ai_family设置为AF_INET,addlinfo.ai_next->ai_family设置为AF_INET6,并且不使用addrinfo.ai_next。
有没有办法在不修补gsoap源代码的情况下做到这一点?
https://stackoverflow.com/questions/41281711
复制相似问题