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

Diff for /src/usr.bin/ypwhich/ypwhich.c between version 1.10 and 1.11

version 1.10, 1999/03/19 22:21:27 version 1.11, 1999/03/20 15:36:12
Line 57 
Line 57 
 #include <rpcsvc/yp.h>  #include <rpcsvc/yp.h>
 #include <rpcsvc/ypclnt.h>  #include <rpcsvc/ypclnt.h>
   
   #include "yplib_host.h"
   
 struct ypalias {  struct ypalias {
         char *alias, *name;          char *alias, *name;
 } ypaliases[] = {  } ypaliases[] = {
Line 74 
Line 76 
 usage()  usage()
 {  {
         fprintf(stderr, "Usage:\n");          fprintf(stderr, "Usage:\n");
         fprintf(stderr, "\typwhich [-d domain] [[-t] -m [mname] | host]\n");          fprintf(stderr, "\typwhich [-d domain] [[-h host] [-t] -m [mname] | host]\n");
         fprintf(stderr, "\typwhich -x\n");          fprintf(stderr, "\typwhich -x\n");
         exit(1);          exit(1);
 }  }
Line 149 
Line 151 
         struct sockaddr_in sin;          struct sockaddr_in sin;
         int notrans, mode, getmap;          int notrans, mode, getmap;
         int c, r, i;          int c, r, i;
           CLIENT *client;
           char    *host = NULL;
   
         map = NULL;          map = NULL;
         getmap = notrans = mode = 0;          getmap = notrans = mode = 0;
Line 157 
Line 161 
         if (domain == NULL)          if (domain == NULL)
                 errx(1, "YP domain name not set");                  errx(1, "YP domain name not set");
   
         while ((c = getopt(argc, argv, "xd:mt")) != -1)          while ((c = getopt(argc, argv, "xd:h:mt")) != -1)
                 switch(c) {                  switch(c) {
                 case 'x':                  case 'x':
                         for (i=0; i<sizeof ypaliases/sizeof ypaliases[0]; i++)                          for (i=0; i<sizeof ypaliases/sizeof ypaliases[0]; i++)
                                 printf("Use \"%s\" for \"%s\"\n",                                  printf("Use \"%s\" for \"%s\"\n",
                                     ypaliases[i].alias, ypaliases[i].name);                                      ypaliases[i].alias, ypaliases[i].name);
                         exit(0);                          exit(0);
                   case 'h':
                           host = optarg;
                           break;
                 case 'd':                  case 'd':
                         domain = optarg;                          domain = optarg;
                         break;                          break;
Line 214 
Line 221 
         if (argc > 1)          if (argc > 1)
                 usage();                  usage();
   
           if (host != NULL) {
                   client = yp_bind_host(host,YPPROG,YPVERS,0,1);
           }
   
         if (argv[0]) {          if (argv[0]) {
                 map = argv[0];                  map = argv[0];
                 for (i=0; (!notrans) && i<sizeof ypaliases/sizeof ypaliases[0]; i++)                  for (i=0; (!notrans) && i<sizeof ypaliases/sizeof ypaliases[0]; i++)
                         if (strcmp(map, ypaliases[i].alias) == 0)                          if (strcmp(map, ypaliases[i].alias) == 0)
                                 map = ypaliases[i].name;                                  map = ypaliases[i].name;
   
                 r = yp_master(domain, map, &master);                  if (host != NULL) {
                           r = yp_master_host(client, domain, map, &master);
                   } else {
                           r = yp_master(domain, map, &master);
                   }
                 switch (r) {                  switch (r) {
                 case 0:                  case 0:
                         printf("%s\n", master);                          printf("%s\n", master);
Line 238 
Line 253 
         }          }
   
         ypml = NULL;          ypml = NULL;
         r = yp_maplist(domain, &ypml);          if (host != NULL) {
                   r = yp_maplist_host(client, domain, &ypml);
           } else {
                   r = yp_maplist(domain, &ypml);
           }
         r = 0;          r = 0;
         switch(r) {          switch(r) {
         case 0:          case 0:
                 for (y = ypml; y; ) {                  for (y = ypml; y; ) {
                         ypml = y;                          ypml = y;
                         r = yp_master(domain, ypml->map, &master);                          if (host != NULL) {
                                   r = yp_master_host(client,
                                                      domain, ypml->map, &master);
                           } else {
                                   r = yp_master(domain, ypml->map, &master);
                           }
                         switch(r) {                          switch(r) {
                         case 0:                          case 0:
                                 printf("%s %s\n", ypml->map, master);                                  printf("%s %s\n", ypml->map, master);

Legend:
Removed from v.1.10  
changed lines
  Added in v.1.11