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

Diff for /src/usr.bin/whois/whois.c between version 1.54 and 1.55

version 1.54, 2017/03/15 16:45:25 version 1.55, 2017/03/17 14:59:01
Line 73 
Line 73 
   
 __dead void usage(void);  __dead void usage(void);
 int whois(const char *, const char *, const char *, int);  int whois(const char *, const char *, const char *, int);
 char *choose_server(const char *, const char *);  char *choose_server(const char *, const char *, char **);
   
 int  int
 main(int argc, char *argv[])  main(int argc, char *argv[])
 {  {
         int ch, flags, rval;          int ch, flags, rval;
         char *host, *name, *country, *server;          char *host, *name, *country;
   
         country = host = NULL;          country = host = NULL;
         flags = rval = 0;          flags = rval = 0;
Line 148 
Line 148 
         if (host == NULL && country == NULL && !(flags & WHOIS_QUICK))          if (host == NULL && country == NULL && !(flags & WHOIS_QUICK))
                 flags |= WHOIS_RECURSE;                  flags |= WHOIS_RECURSE;
         for (name = *argv; (name = *argv) != NULL; argv++) {          for (name = *argv; (name = *argv) != NULL; argv++) {
                 server = host ? host : choose_server(name, country);                  char *tofree = NULL;
                   const char *server =
                       host ? host : choose_server(name, country, &tofree);
                 rval += whois(name, server, port_whois, flags);                  rval += whois(name, server, port_whois, flags);
                 if (host == NULL)                  free(tofree);
                         free(server);  
         }          }
         return (rval);          return (rval);
 }  }
Line 280 
Line 281 
  * ASN (starts with AS). Fall back to NICHOST for the non-handle case.   * ASN (starts with AS). Fall back to NICHOST for the non-handle case.
  */   */
 char *  char *
 choose_server(const char *name, const char *country)  choose_server(const char *name, const char *country, char **tofree)
 {  {
         char *server;          char *server;
         const char *qhead;          const char *qhead;
Line 336 
Line 337 
                         err(1, NULL);                          err(1, NULL);
         }          }
   
           *tofree = server;
         return (server);          return (server);
 }  }
   

Legend:
Removed from v.1.54  
changed lines
  Added in v.1.55