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