BSD 4_3 release
[unix-history] / usr / src / usr.bin / tip / aculib / df.c
index 46826db..78e570d 100644 (file)
@@ -1,53 +1,58 @@
-/*     df.c    4.3     81/10/21        */
+/*
+ * Copyright (c) 1983 Regents of the University of California.
+ * All rights reserved.  The Berkeley software License Agreement
+ * specifies the terms and conditions for redistribution.
+ */
+
+#ifndef lint
+static char sccsid[] = "@(#)df.c       5.1 (Berkeley) 6/6/85";
+#endif not lint
+
 /*
  * Dial the DF02-AC or DF03-AC
  */
 
 /*
  * Dial the DF02-AC or DF03-AC
  */
 
-#if defined(DF02) || defined(DF03)
 #include "tip.h"
 #include "tip.h"
-#include <setjmp.h>
 
 
-static jmp_buf Sjbuf;
+static jmp_buf Sjbuf;
 static timeout();
 
 static timeout();
 
-#if DF02
 df02_dialer(num, acu)
 df02_dialer(num, acu)
-char *num, *acu;
+       char *num, *acu;
 {
 {
-       return(df_dialer(num, acu, 0));
+
+       return (df_dialer(num, acu, 0));
 }
 }
-#endif
 
 
-#if DF03
 df03_dialer(num, acu)
 df03_dialer(num, acu)
-char *num, *acu;
+       char *num, *acu;
 {
 {
-       return(df_dialer(num, acu, 1));
+
+       return (df_dialer(num, acu, 1));
 }
 }
-#endif
 
 df_dialer(num, acu, df03)
 
 df_dialer(num, acu, df03)
-char *num, *acu;
-int df03;
+       char *num, *acu;
+       int df03;
 {
        register int f = FD;
        struct sgttyb buf;
 {
        register int f = FD;
        struct sgttyb buf;
-       int speed = 0, c = 0;
-#ifdef TIOCMSET
-       int st = MST;           /* Secondary Transmit flag, for speed select */
-#endif
+       int speed = 0, rw = 2;
+       char c = '\0';
 
        ioctl(f, TIOCHPCL, 0);          /* make sure it hangs up when done */
        if (setjmp(Sjbuf)) {
                printf("connection timed out\r\n");
                df_disconnect();
 
        ioctl(f, TIOCHPCL, 0);          /* make sure it hangs up when done */
        if (setjmp(Sjbuf)) {
                printf("connection timed out\r\n");
                df_disconnect();
-               return(0);
+               return (0);
        }
        if (boolean(value(VERBOSE)))
                printf("\ndialing...");
        fflush(stdout);
 #ifdef TIOCMSET
        if (df03) {
        }
        if (boolean(value(VERBOSE)))
                printf("\ndialing...");
        fflush(stdout);
 #ifdef TIOCMSET
        if (df03) {
+               int st = TIOCM_ST;      /* secondary Transmit flag */
+
                ioctl(f, TIOCGETP, &buf);
                if (buf.sg_ospeed != B1200) {   /* must dial at 1200 baud */
                        speed = buf.sg_ospeed;
                ioctl(f, TIOCGETP, &buf);
                if (buf.sg_ospeed != B1200) {   /* must dial at 1200 baud */
                        speed = buf.sg_ospeed;
@@ -60,41 +65,41 @@ int df03;
 #endif
        signal(SIGALRM, timeout);
        alarm(5 * strlen(num) + 10);
 #endif
        signal(SIGALRM, timeout);
        alarm(5 * strlen(num) + 10);
-       ioctl(f, TIOCFLUSH, 0);
+       ioctl(f, TIOCFLUSH, &rw);
        write(f, "\001", 1);
        sleep(1);
        write(f, "\002", 1);
        write(f, num, strlen(num));
        write(f, "\001", 1);
        sleep(1);
        write(f, "\002", 1);
        write(f, num, strlen(num));
-       read(f, (char *)&c, 1);
+       read(f, &c, 1);
 #ifdef TIOCMSET
        if (df03 && speed) {
                buf.sg_ispeed = buf.sg_ospeed = speed;
                ioctl(f, TIOCSETP, &buf);
        }
 #endif
 #ifdef TIOCMSET
        if (df03 && speed) {
                buf.sg_ispeed = buf.sg_ospeed = speed;
                ioctl(f, TIOCSETP, &buf);
        }
 #endif
-       return(c == 'A');
+       return (c == 'A');
 }
 
 }
 
-
 df_disconnect()
 {
 df_disconnect()
 {
+       int rw = 2;
+
        write(FD, "\001", 1);
        sleep(1);
        write(FD, "\001", 1);
        sleep(1);
-       ioctl(FD, TIOCFLUSH, 0);
+       ioctl(FD, TIOCFLUSH, &rw);
 }
 
 
 df_abort()
 {
 }
 
 
 df_abort()
 {
-       write(FD, "\001", 1);
-       sleep(1);
-       ioctl(FD, TIOCFLUSH, 0);
+
+       df_disconnect();
 }
 
 
 static
 timeout()
 {
 }
 
 
 static
 timeout()
 {
+
        longjmp(Sjbuf, 1);
 }
        longjmp(Sjbuf, 1);
 }
-#endif