[BACK]Return to monitor_fdpass.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / ssh

Diff for /src/usr.bin/ssh/monitor_fdpass.c between version 1.2 and 1.2.4.3

version 1.2, 2002/03/24 17:53:16 version 1.2.4.3, 2002/10/11 14:53:06
Line 39 
Line 39 
         struct cmsghdr *cmsg;          struct cmsghdr *cmsg;
         struct iovec vec;          struct iovec vec;
         char ch = '\0';          char ch = '\0';
         int n;          ssize_t n;
   
         memset(&msg, 0, sizeof(msg));          memset(&msg, 0, sizeof(msg));
         msg.msg_control = (caddr_t)tmp;          msg.msg_control = (caddr_t)tmp;
Line 56 
Line 56 
         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 %ld",
                     __FUNCTION__, n);                      __func__, (long)n);
 }  }
   
 int  int
Line 70 
Line 70 
         char tmp[CMSG_SPACE(sizeof(int))];          char tmp[CMSG_SPACE(sizeof(int))];
         struct cmsghdr *cmsg;          struct cmsghdr *cmsg;
         struct iovec vec;          struct iovec vec;
           ssize_t n;
         char ch;          char ch;
         int fd, n;          int fd;
   
         memset(&msg, 0, sizeof(msg));          memset(&msg, 0, sizeof(msg));
         vec.iov_base = &ch;          vec.iov_base = &ch;
Line 82 
Line 83 
         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 %ld",
                     __FUNCTION__, n);                      __func__, (long)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;

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.2.4.3