version 1.2, 2002/03/24 17:53:16 |
version 1.3, 2002/06/04 23:05:49 |
|
|
msg.msg_iovlen = 1; |
msg.msg_iovlen = 1; |
|
|
if ((n = sendmsg(socket, &msg, 0)) == -1) |
if ((n = sendmsg(socket, &msg, 0)) == -1) |
fatal("%s: sendmsg(%d): %s", __FUNCTION__, fd, |
fatal("%s: sendmsg(%d): %s", __func__, fd, |
strerror(errno)); |
strerror(errno)); |
if (n != 1) |
if (n != 1) |
fatal("%s: sendmsg: expected sent 1 got %d", |
fatal("%s: sendmsg: expected sent 1 got %d", |
__FUNCTION__, n); |
__func__, n); |
} |
} |
|
|
int |
int |
|
|
msg.msg_controllen = sizeof(tmp); |
msg.msg_controllen = sizeof(tmp); |
|
|
if ((n = recvmsg(socket, &msg, 0)) == -1) |
if ((n = recvmsg(socket, &msg, 0)) == -1) |
fatal("%s: recvmsg: %s", __FUNCTION__, strerror(errno)); |
fatal("%s: recvmsg: %s", __func__, strerror(errno)); |
if (n != 1) |
if (n != 1) |
fatal("%s: recvmsg: expected received 1 got %d", |
fatal("%s: recvmsg: expected received 1 got %d", |
__FUNCTION__, n); |
__func__, n); |
|
|
cmsg = CMSG_FIRSTHDR(&msg); |
cmsg = CMSG_FIRSTHDR(&msg); |
if (cmsg->cmsg_type != SCM_RIGHTS) |
if (cmsg->cmsg_type != SCM_RIGHTS) |
fatal("%s: expected type %d got %d", __FUNCTION__, |
fatal("%s: expected type %d got %d", __func__, |
SCM_RIGHTS, cmsg->cmsg_type); |
SCM_RIGHTS, cmsg->cmsg_type); |
fd = (*(int *)CMSG_DATA(cmsg)); |
fd = (*(int *)CMSG_DATA(cmsg)); |
return fd; |
return fd; |