有谁知道是否可以在 C (AF_UNIX) 中将 getaddrinfo 与 unix 套接字一起使用。我已经尝试了几件事,但我无法让它发挥作用。 这基本上就是我正在尝试的:
struct addrinfo hints, *res;
memset(&hints, 0, sizeof(hints));
hints.ai_family = AF_UNIX;
hints.ai_socktype = SOCK_STREAM;
if(getaddrinfo("What should I put here?", "What should I put here?", &hints, &res) != 0){
//do sth about
}
我的问题是如何填充节点和服务字段,以防可以与 unix 套接字一起使用。
提前致谢。
最佳答案
getaddrinfo()
的某些实现支持 AF_UNIX
套接字地址,但出于安全考虑,它们不再支持。
无论如何,您实际上并不需要一个函数来“查找”AF_UNIX
地址 - 如果您知道套接字路径,那么您可以直接将其复制到 sockaddr_un
足够大。 AF_UNIX
地址没有解析步骤 - 套接字名称是套接字地址。
关于c - 在 C 中使用 getaddrinfo() 的 Unix 套接字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6893477/