Annotation of 40BSD/cmd/mknod.c, revision 1.1.1.1

1.1       root        1: static char *sccsid = "@(#)mknod.c     4.1 (Berkeley) 10/1/80";
                      2: main(argc, argv)
                      3: int argc;
                      4: char **argv;
                      5: {
                      6:        int m, a, b;
                      7: 
                      8:        if(argc != 5) {
                      9:                printf("arg count\n");
                     10:                goto usage;
                     11:        }
                     12:        if(*argv[2] == 'b')
                     13:                m = 060666; else
                     14:        if(*argv[2] == 'c')
                     15:                m = 020666; else
                     16:                goto usage;
                     17:        a = number(argv[3]);
                     18:        if(a < 0)
                     19:                goto usage;
                     20:        b = number(argv[4]);
                     21:        if(b < 0)
                     22:                goto usage;
                     23:        if(mknod(argv[1], m, (a<<8)|b) < 0)
                     24:                perror("mknod");
                     25:        exit(0);
                     26: 
                     27: usage:
                     28:        printf("usage: mknod name b/c major minor\n");
                     29: }
                     30: 
                     31: number(s)
                     32: char *s;
                     33: {
                     34:        int n, c;
                     35: 
                     36:        n = 0;
                     37:        while(c = *s++) {
                     38:                if(c<'0' || c>'9')
                     39:                        return(-1);
                     40:                n = n*10 + c-'0';
                     41:        }
                     42:        return(n);
                     43: }

unix.superglobalmegacorp.com

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