Annotation of coherent/b/kernel/tools/reboot.c, revision 1.1

1.1     ! root        1: /*
        !             2:  * reboot.c - command to reboot the system
        !             3:  *
        !             4:  * "-p" option prompts and will sync before rebooting.
        !             5:  */
        !             6: 
        !             7: #include <stdio.h>
        !             8: #include <signal.h>
        !             9: #include <sys/param.h>
        !            10: 
        !            11: sigquiet(sig)
        !            12: int sig;
        !            13: {
        !            14:        signal(sig, sigquiet);
        !            15: }
        !            16: 
        !            17: main (argc, argv) int argc; char *argv[];
        !            18: {
        !            19:        char buf[80];
        !            20: 
        !            21:        if (argc > 1 && argv[1][0] == '-' && argv[1][1] == 'p') {
        !            22:                /* Prompt before reboot. */
        !            23:                printf("Hit <Enter> and your system will reboot automatically... ");
        !            24:                fflush(stdout);
        !            25:                sync();
        !            26:                fgets(buf, sizeof buf, stdin);
        !            27:        }
        !            28:                
        !            29:        /*
        !            30:         * Trap alarm signals.
        !            31:         */
        !            32:        signal(SIGALRM, sigquiet);
        !            33: 
        !            34:        /*
        !            35:         * Wait at least 4 seconds for drives to turn off, etc.
        !            36:         */
        !            37:        alarm(5);
        !            38:        pause();
        !            39: 
        !            40:        /*
        !            41:         * Reboot the processor.
        !            42:         */
        !            43:        if (cohcall(COH_REBOOT) == -1)
        !            44:                perror(argv[0]);
        !            45: 
        !            46:        /*
        !            47:         * Should never reach here.
        !            48:         */
        !            49:        exit(1);
        !            50: }

unix.superglobalmegacorp.com

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