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

Diff for /src/usr.bin/rlogin/Attic/kcmd.c between version 1.12 and 1.13

version 1.12, 2001/07/17 02:13:29 version 1.13, 2001/09/04 23:35:59
Line 96 
Line 96 
         long authopts;          long authopts;
 {  {
         int s, timo = 1, pid;          int s, timo = 1, pid;
         int oldmask;          sigset_t mask, oldmask;
         struct sockaddr_in sin, from;          struct sockaddr_in sin, from;
         char c;          char c;
         int lport = IPPORT_RESERVED - 1;          int lport = IPPORT_RESERVED - 1;
Line 121 
Line 121 
         if (realm == NULL || realm[0] == '\0')          if (realm == NULL || realm[0] == '\0')
                 realm = krb_realmofhost(host_save);                  realm = krb_realmofhost(host_save);
   
         oldmask = sigblock(sigmask(SIGURG));          sigemptyset(&mask);
           sigaddset(&mask, SIGURG);
           sigprocmask(SIG_BLOCK, &mask, &oldmask);
         for (;;) {          for (;;) {
                 s = getport(&lport);                  s = getport(&lport);
                 if (s < 0) {                  if (s < 0) {
Line 130 
Line 132 
                                         "kcmd(socket): All ports in use\n");                                          "kcmd(socket): All ports in use\n");
                         else                          else
                                 perror("kcmd: socket");                                  perror("kcmd: socket");
                         sigsetmask(oldmask);                          sigprocmask(SIG_SETMASK, &oldmask, NULL);
                         return (-1);                          return (-1);
                 }                  }
                 fcntl(s, F_SETOWN, pid);                  fcntl(s, F_SETOWN, pid);
Line 170 
Line 172 
                 }                  }
                 if (errno != ECONNREFUSED)                  if (errno != ECONNREFUSED)
                         perror(hp->h_name);                          perror(hp->h_name);
                 sigsetmask(oldmask);                  sigprocmask(SIG_SETMASK, &oldmask, NULL);
                 return (-1);                  return (-1);
         }          }
         if (fd2p == 0) {          if (fd2p == 0) {
Line 268 
Line 270 
                 status = -1;                  status = -1;
                 goto bad2;                  goto bad2;
         }          }
         sigsetmask(oldmask);          sigprocmask(SIG_SETMASK, &oldmask, NULL);
         *sock = s;          *sock = s;
         return (KSUCCESS);          return (KSUCCESS);
 bad2:  bad2:
Line 276 
Line 278 
                 (void) close(*fd2p);                  (void) close(*fd2p);
 bad:  bad:
         (void) close(s);          (void) close(s);
         sigsetmask(oldmask);          sigprocmask(SIG_SETMASK, &oldmask, NULL);
         return (status);          return (status);
 }  }
   

Legend:
Removed from v.1.12  
changed lines
  Added in v.1.13