Lines Matching +full:t +full:- +full:head
33 * Copyright (c) 1986 - 1991 by Sun Microsystems, Inc.
43 * We are for now defining PORTMAP here. It doesn't even compile
53 * all the portmapper specific options such as -u, -t, -p become void.
96 #define RPCBDUMP_SHORT 9 /* dump rpcbind registrations - short version */
167 while ((c = getopt(argc, argv, "a:bdlmn:pstT:u")) != -1) {
169 while ((c = getopt(argc, argv, "a:bdlmn:sT:")) != -1) {
180 case 't':
242 case 'T':
255 if (argc - optind > 1)
266 pmapdump(argc - optind, argv + optind);
270 ip_ping(portnum, "udp", argc - optind, argv + optind);
274 ip_ping(portnum, "tcp", argc - optind, argv + optind);
278 brdcst(argc - optind, argv + optind);
281 deletereg(netid, argc - optind, argv + optind);
284 addrping(address, netid, argc - optind, argv + optind);
287 progping(netid, argc - optind, argv + optind);
291 rpcbdump(function, netid, argc - optind, argv + optind);
294 rpcbgetstat(argc - optind, argv + optind);
297 rpcbaddrlist(netid, argc - optind, argv + optind);
312 if (nconf->nc_protofmly != NULL &&
313 strcmp(nconf->nc_protofmly, NC_LOOPBACK) == 0)
462 struct pmaplist *head = NULL; local
492 clnt_pcreateerror("rpcinfo: can't contact portmapper");
500 NULL, (xdrproc_t) xdr_pmaplist_ptr, (char *)&head,
518 clnt_perror(client, "rpcinfo: can't contact portmapper");
521 if (head == NULL) {
525 for (; head != NULL; head = head->pml_next) {
527 head->pml_map.pm_prog,
528 head->pml_map.pm_vers);
529 if (head->pml_map.pm_prot == IPPROTO_UDP)
531 else if (head->pml_map.pm_prot == IPPROTO_TCP)
533 else if (head->pml_map.pm_prot == IPPROTO_ST)
536 printf("%6ld", head->pml_map.pm_prot);
537 printf("%7ld", head->pml_map.pm_port);
538 rpc = getrpcbynumber(head->pml_map.pm_prog);
540 printf(" %s\n", rpc->r_name);
555 addr->sin_addr.s_addr = inet_addr(host);
556 if (addr->sin_addr.s_addr == INADDR_NONE ||
557 addr->sin_addr.s_addr == INADDR_ANY) {
560 errx(1, "couldn't find a suitable transport");
568 memcpy(addr, res->ai_addr, res->ai_addrlen);
574 addr->sin_family = AF_INET;
595 struct sockaddr *sa = (struct sockaddr *)who->buf;
597 if (getnameinfo(sa, sa->sa_len, hostbuf, NI_MAXHOST, NULL, 0, 0)) {
604 printf("%s\t%s\n", UNKNOWN, hostname);
606 printf("%s\t%s\n", uaddr, hostname);
635 for (vl = rs->vlist; vl; vl = vl->next)
636 if (vl->vers == vers)
643 vl->vers = vers;
644 vl->next = rs->vlist;
645 rs->vlist = vl;
654 for (nl = rs->nlist; nl; nl = nl->next)
655 if (strcmp(nl->netid, netid) == 0)
662 nl->netid = netid;
663 nl->next = rs->nlist;
664 rs->nlist = nl;
671 rpcblist_ptr head = NULL; local
706 clnt_pcreateerror("rpcinfo: can't contact rpcbind");
713 NULL, (xdrproc_t) xdr_rpcblist_ptr, (char *) &head,
726 (xdrproc_t) xdr_rpcblist_ptr, (char *) &head,
747 for (head = NULL; pmaphead != NULL;
748 pmaphead = pmaphead->pml_next) {
752 if (head == NULL)
753 head = list;
755 prev->rpcb_next = (rpcblist_ptr) list;
757 list->rpcb_next = NULL;
758 list->rpcb_map.r_prog = pmaphead->pml_map.pm_prog;
759 list->rpcb_map.r_vers = pmaphead->pml_map.pm_vers;
760 if (pmaphead->pml_map.pm_prot == IPPROTO_UDP)
761 list->rpcb_map.r_netid = "udp";
762 else if (pmaphead->pml_map.pm_prot == IPPROTO_TCP)
763 list->rpcb_map.r_netid = "tcp";
766 list->rpcb_map.r_netid =
768 if (list->rpcb_map.r_netid == NULL)
770 sprintf(list->rpcb_map.r_netid, "%6ld",
771 pmaphead->pml_map.pm_prot);
773 list->rpcb_map.r_owner = UNKNOWN;
774 low = pmaphead->pml_map.pm_port & 0xff;
775 high = (pmaphead->pml_map.pm_port >> 8) & 0xff;
776 list->rpcb_map.r_addr = strdup("0.0.0.0.XXX.XXX");
777 sprintf(&list->rpcb_map.r_addr[8], "%d.%d",
785 clnt_perror(client, "rpcinfo: can't contact rpcbind: ");
789 if (head == NULL) {
794 for (; head != NULL; head = head->rpcb_next) {
796 head->rpcb_map.r_prog, head->rpcb_map.r_vers);
797 printf("%-9s ", head->rpcb_map.r_netid);
798 printf("%-22s", head->rpcb_map.r_addr);
799 rpc = getrpcbynumber(head->rpcb_map.r_prog);
801 printf(" %-10s", rpc->r_name);
803 printf(" %-10s", "-");
804 printf(" %s\n", head->rpcb_map.r_owner);
807 for (; head != NULL; head = head->rpcb_next) {
808 for (rs = rs_head; rs; rs = rs->next)
809 if (head->rpcb_map.r_prog == rs->prog)
816 rs->next = NULL;
821 rs_tail->next = rs;
824 rs->prog = head->rpcb_map.r_prog;
825 rs->owner = head->rpcb_map.r_owner;
826 rs->nlist = NULL;
827 rs->vlist = NULL;
829 if (add_version(rs, head->rpcb_map.r_vers) == FALSE)
831 if (add_netid(rs, head->rpcb_map.r_netid) == FALSE)
836 for (rs = rs_head; rs; rs = rs->next) {
839 printf("%10ld ", rs->prog);
840 for (vl = rs->vlist; vl; vl = vl->next) {
841 sprintf(p, "%d", vl->vers);
843 if (vl->next)
846 printf("%-10s", buf);
848 for (nl = rs->nlist; nl; nl = nl->next) {
849 strlcat(buf, nl->netid, sizeof(buf));
850 if (nl->next)
853 printf("%-32s", buf);
854 rpc = getrpcbynumber(rs->prog);
856 printf(" %-11s", rpc->r_name);
858 printf(" %-11s", "-");
859 printf(" %s\n", rs->owner);
873 rpcb_entry_list_ptr head = NULL; local
899 clnt_pcreateerror("rpcinfo: can't contact rpcbind");
907 parms.r_netid = client->cl_netid;
918 nconf = getnetconfigent(client->cl_netid);
927 free(targaddr->buf);
934 (char *) &head, minutetimeout) != RPC_SUCCESS) {
935 clnt_perror(client, "rpcinfo: can't contact rpcbind: ");
938 if (head == NULL) {
942 " program vers tp_family/name/class address\t\t service\n");
943 for (; head != NULL; head = head->rpcb_entry_next) {
947 re = &head->rpcb_entry_map;
951 re->r_nc_protofmly, re->r_nc_proto,
952 re->r_nc_semantics == NC_TPI_CLTS ? "clts" :
953 re->r_nc_semantics == NC_TPI_COTS ? "cots" :
955 printf("%-24s", buf);
956 printf("%-24s", re->r_maddr);
959 printf(" %-13s", rpc->r_name);
961 printf(" %-13s", "-");
1009 clnt_pcreateerror("rpcinfo: can't contact rpcbind");
1018 clnt_perror(client, "rpcinfo: can't contact rpcbind: ");
1036 pa = pa->next)
1037 cnt += pa->success;
1043 pr = pr->next)
1044 cnt += pr->success;
1054 - strlen(pmaphdr[i])));
1057 - flen)));
1089 pa = pa->next)
1090 cnt += pa->success;
1096 pr = pr->next)
1097 cnt += pr->success;
1107 - strlen(rpcb3hdr[i])));
1110 - flen)));
1131 for (i = j; i <= MAX(8, rpcb_highproc_4 - 9 + j); i++) {
1145 pa = pa->next)
1146 cnt += pa->success;
1152 pr = pr->next)
1153 cnt += pr->success;
1172 - strlen(rpcb4hdr[i])));
1175 - flen)));
1230 if ((fd = __rpc_nconf2fd(nconf)) == -1) {
1458 fprintf(stderr, "usage: rpcinfo [-m | -s] [host]\n");
1460 fprintf(stderr, " rpcinfo -p [host]\n");
1462 fprintf(stderr, " rpcinfo -T netid host prognum [versnum]\n");
1463 fprintf(stderr, " rpcinfo -l host prognum versnum\n");
1466 " rpcinfo [-n portnum] -u | -t host prognum [versnum]\n");
1469 " rpcinfo -a serv_address -T netid prognum [version]\n");
1470 fprintf(stderr, " rpcinfo -b prognum versnum\n");
1471 fprintf(stderr, " rpcinfo -d [-T netid] prognum versnum\n");
1484 if (*tptr || isalpha(*(tptr - 1))) {
1488 prognum = rpc->r_number;
1526 return (-1);
1579 addr.len = addr.maxlen = res->ai_addrlen;
1580 addr.buf = res->ai_addr;
1588 (*targaddr)->maxlen = addr.maxlen;
1589 (*targaddr)->len = addr.len;
1590 (*targaddr)->buf = (char *)malloc(addr.len);
1591 if ((*targaddr)->buf != NULL) {
1592 memcpy((*targaddr)->buf, addr.buf,
1619 "prog\t\tvers\tproc\tnetid\tindirect success failure\n");
1621 printf("prog\t\tvers\tproc\tnetid\tsuccess\tfailure\n");
1622 for (pr = infp->rmtinfo; pr; pr = pr->next) {
1623 rpc = getrpcbynumber(pr->prog);
1625 printf("%-16s", rpc->r_name);
1627 printf("%-16d", pr->prog);
1628 printf("%d\t%d\t%s\t",
1629 pr->vers, pr->proc, pr->netid);
1631 printf("%d\t ", pr->indirect);
1632 printf("%d\t%d\n", pr->success, pr->failure);
1642 printf("prog\t\tvers\tnetid\t success\tfailure\n");
1643 for (al = infp->addrinfo; al; al = al->next) {
1644 rpc = getrpcbynumber(al->prog);
1646 printf("%-16s", rpc->r_name);
1648 printf("%-16d", al->prog);
1649 printf("%d\t%s\t %-12d\t%d\n",
1650 al->vers, al->netid,
1651 al->success, al->failure);
1664 return (&space_array[sizeof (space_array) - howmany - 1]);