我在 Linux 中使用 ACE v5.7.1。 我想启用 ipv6 以便我的服务器也可以接受 ipv6 请求。我在 ace/config.h 文件中添加了#define ACE_HAS_IPV6。但是方法 ACE_ipv6_enabled() 的返回值仍然是 0
当我使用 ACE_INET_Addr(port,ipv6_address) 创建一个简单的客户端并尝试连接服务器时,它给出错误 ACE_INET_Addr::permission denied
请帮帮我。
最佳答案
您似乎为此使用了不正确的构造函数。看看这个链接:
http://www.dre.vanderbilt.edu/Doxygen/5.7.1/html/ace/a00246.html#0ef39cee9fc65be37ca6ce4092b6ea04
您需要像下面这样调用它:
ACE_INET_Addr(port, <hostname e.g. "localhost6">, AF_INET6);
默认情况下你有 AF_UNSPEC
这可能会假设 AF_INET
关于c++ - ACE 如何启用 IPv6,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9033089/