我正在尝试使用 UNIX DOMAIN SOCKETS 编写一个小的客户端-服务器应用程序。
我正在使用msghdr
/sendmsg
但是recvmsg
当我编译以下代码时,它给了我以下错误:
include <sys/socket.h>
...
struct msghdr mh;
struct cmsghdr *cmp;
union{
struct cmsghdr cm;
char ctrl[sizeof(struct cmsghdr) + sizeof(int)];
} ctrlu;
...
mh.msg_name = NULL;
mh.msg_namelen = 0;
mh.msg_iov = iov;
mh.msg_iovlen = 1;
mh.msg_control = ctrlu.ctrl;
mh.msg_controllen = sizeof(ctrlu);
mh.msg_flags = 0;
错误信息:
gcc sc -os -lsocket
sc:在函数“main”中:
sc:59:错误:结构没有名为“msg_control”的成员
sc:60:错误:结构没有名为“msg_controllen”的成员
sc:61:错误:结构没有名为“msg_flags”的成员
*错误代码 1