Annotation of 43BSD/contrib/mh/sbr/showfile.c, revision 1.1.1.1

1.1       root        1: /* showfile.c - invoke lproc */
                      2: 
                      3: #include "../h/mh.h"
                      4: #include <stdio.h>
                      5: 
                      6: 
                      7: showfile (arg, file)
                      8: register char **arg,
                      9:                *file;
                     10: {
                     11:     int     isdraft,
                     12:             pid;
                     13:     register int    vecp;
                     14:     char   *vec[MAXARGS];
                     15: 
                     16:     m_update ();
                     17:     (void) fflush (stdout);
                     18: 
                     19:     if (strcmp (r1bindex (lproc, '/'), "mhl") == 0)
                     20:        lproc = mhlproc;
                     21: 
                     22:     switch (pid = vfork ()) {
                     23:        case NOTOK: 
                     24:            advise ("fork", "unable to");
                     25:            return 1;
                     26: 
                     27:        case OK: 
                     28:            vecp = 0;
                     29:            vec[vecp++] = r1bindex (lproc, '/');
                     30:            isdraft = 1;
                     31:            if (arg)
                     32:                while (*arg) {
                     33:                    if (**arg != '-')
                     34:                        isdraft = 0;
                     35:                    vec[vecp++] = *arg++;
                     36:                }
                     37:            if (isdraft) {
                     38:                if (strcmp (vec[0], "show") == 0)
                     39:                    vec[vecp++] = "-file";
                     40:                vec[vecp++] = file;
                     41:            }
                     42:            vec[vecp] = NULL;
                     43: 
                     44:            execvp (lproc, vec);
                     45:            fprintf (stderr, "unable to exec ");
                     46:            perror (lproc);
                     47:            _exit (-1);
                     48: 
                     49:        default: 
                     50:            return (pidwait (pid, NOTOK) & 0377 ? 1 : 0);
                     51:     }
                     52: }

unix.superglobalmegacorp.com

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