sys/fdpass.c: Fix expected size of descriptor message.
[mLib] / sys / fdpass.c
index e860ec3..1db9210 100644 (file)
@@ -139,7 +139,7 @@ ssize_t fdpass_recv(int sock, int *fd, void *p, size_t sz)
   for (cmsg = CMSG_FIRSTHDR(&msg); cmsg; cmsg = CMSG_NXTHDR(&msg, cmsg)) {
     if (cmsg->cmsg_level == SOL_SOCKET &&
        cmsg->cmsg_type == SCM_RIGHTS &&
-       cmsg->cmsg_len >= CMSG_LEN(sizeof(fd))) {
+       cmsg->cmsg_len >= CMSG_LEN(sizeof(*fd))) {
       memcpy(&fdtmp, CMSG_DATA(cmsg), sizeof(fdtmp));
       if (*fd == -1)
        *fd = fdtmp;