Annotation of coherent/a/usr/bob/uusrc/modemcap/hangup.c, revision 1.1.1.1

1.1       root        1: /*
                      2:  *  hangup.c
                      3:  */
                      4: 
                      5: /* hangup is called by sysend() to hangup the modem. Hangup then calls
                      6:  * undial() to remove any remote device lock files and to re enable
                      7:  * a previously disabled port. Bob H. 11/22/91.
                      8:  */
                      9: 
                     10: #include "dcp.h"
                     11: #include "modemcap.h"
                     12: 
                     13: hangup (fd)
                     14: int    fd;
                     15: {
                     16:        if ( (HU == NULL) && (HC == 0) ) {
                     17:                printmsg(M_DEBUG,"hangup: (level1) about to drop line.");
                     18:                undial(fd);
                     19:                return(0);
                     20:        }
                     21: 
                     22:        if (AT != (char *) 0) {
                     23: 
                     24:        /* guard time for modem. Before sending the +++ to the modem to put
                     25:         * it in command mode, there must be some delay between the real data
                     26:         * and the AT string for it to work.
                     27:         */
                     28:                sleep (3);
                     29:                write (fd, AT, strlen (AT));
                     30:                if (AD)
                     31:                        sleep (AD);
                     32:        }
                     33:        if (HU) {
                     34:                if (CS) {
                     35:                        write (fd, CS, strlen (CS));
                     36:                }
                     37:                write (fd, HU, strlen (HU));
                     38:                if (CE) {
                     39:                        write (fd, CE, strlen (CE));
                     40:                }
                     41:                if (IS) {
                     42:                        write (fd, IS, strlen (IS));
                     43:                        if (ID)
                     44:                                sleep (ID);
                     45:                }
                     46:                printmsg(M_DEBUG,"hangup: (level2) about to drop line.");
                     47:                undial (fd);
                     48:                return (1);
                     49:        }
                     50:        printmsg(M_DEBUG,"hangup: (level3) about to drop line.");
                     51:        undial(fd);
                     52:        ttyexit(fd);
                     53:        return(1);
                     54: }

unix.superglobalmegacorp.com

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