Annotation of 43BSD/contrib/xns/examples/retrieve/retrieve.c, revision 1.1

1.1     ! root        1: #include <stdio.h>
        !             2: #include <sys/types.h>
        !             3: #include <netns/ns.h>
        !             4: #include <netns/sp.h>
        !             5: #include "Clearinghouse2_defs.h"
        !             6: #include <xnscourier/except.h>
        !             7: 
        !             8: main(argc, argv)
        !             9:        int argc;
        !            10:        char *argv[];
        !            11: {
        !            12:        RetrieveAddressesResults result;
        !            13:        struct ns_addr *destaddr;
        !            14:        CourierConnection *conn;
        !            15:        NetworkAddress na;
        !            16:        extern struct ns_addr *getXNSaddr();
        !            17:        int i;
        !            18: 
        !            19:        if (argc == 1)
        !            20:                /* default to CornellS1 2-273, 2-852-151-014 */
        !            21:                destaddr = getXNSaddr("8E0#00.00.AA.00.7D.E7");
        !            22:        else if (argc != 2 || (destaddr = getXNSaddr(argv[1]))==NULL) {
        !            23:                fprintf(stderr,"Usage: %s machine\n",argv[0]);
        !            24:                exit(1);
        !            25:        }
        !            26:        if ((conn = CourierOpen(destaddr)) == NULL) {
        !            27:                fprintf(stderr,"Can't open connection to %s\n",argv[1]);
        !            28:                exit(1);
        !            29:        }
        !            30:        DURING
        !            31:                result = RetrieveAddresses(conn,NULL);
        !            32:        HANDLER {
        !            33:                switch (Exception.Code) {
        !            34:                case CallError:
        !            35:                        fprintf(stderr,"Call error, %d\n",
        !            36:                                CourierErrArgs(CallErrorArgs,problem));
        !            37:                        break;
        !            38:                default:
        !            39:                        fprintf(stderr,"Some random error, code %d\n",
        !            40:                                Exception.Code);
        !            41:                        break;
        !            42:                }
        !            43:        exit(1);
        !            44:        } END_HANDLER;
        !            45: 
        !            46:        for (i = 0; i < result.addresses.length; i++) {
        !            47:                na = result.addresses.sequence[i];
        !            48:                printf("address:  network %x %x, host %x, %x, %x, socket %x\n",
        !            49:                        na.network[0],na.network[1],
        !            50:                        na.host[0],na.host[1],na.host[2],
        !            51:                        na.socket);
        !            52:        }
        !            53: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.