Mon Nov 9 18:22:55 1998 Dave Brolley <brolley@cygnus.com>
[deliverable/binutils-gdb.git] / gdb / ser-tcp.c
index 388293fa33eb864a066d7e0fcddf5f3b0b8b8005..c55133760faddb8850d0bac6feb45ebdd6966906 100644 (file)
@@ -1,5 +1,5 @@
 /* Serial interface for raw TCP connections on Un*x like systems
-   Copyright 1992, 1993 Free Software Foundation, Inc.
+   Copyright 1992, 1993, 1998 Free Software Foundation, Inc.
 
 This file is part of GDB.
 
@@ -25,7 +25,11 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 #include <arpa/inet.h>
 #include <netdb.h>
 #include <sys/socket.h>
+
+#ifndef __CYGWIN32__
 #include <netinet/tcp.h>
+#endif
+
 #include "signals.h"
 #include "gdb_string.h"
 
@@ -45,6 +49,12 @@ static int tcp_write PARAMS ((serial_t scb, const char *str, int len));
 static void tcp_close PARAMS ((serial_t scb));
 static serial_ttystate tcp_get_tty_state PARAMS ((serial_t scb));
 static int tcp_set_tty_state PARAMS ((serial_t scb, serial_ttystate state));
+static int tcp_return_0 PARAMS ((serial_t));
+static int tcp_noflush_set_tty_state PARAMS ((serial_t, serial_ttystate,
+                                             serial_ttystate));
+static void tcp_print_tty_state PARAMS ((serial_t, serial_ttystate));
+
+void _initialize_ser_tcp PARAMS ((void));
 
 /* Open up a raw tcp socket */
 
@@ -175,7 +185,7 @@ tcp_raw(scb)
  */
 
 static int
-wait_for(scb, timeout)
+wait_for (scb, timeout)
      serial_t scb;
      int timeout;
 {
@@ -200,12 +210,14 @@ wait_for(scb, timeout)
        numfds = select(scb->fd+1, &readfds, 0, &exceptfds, 0);
 
       if (numfds <= 0)
-       if (numfds == 0)
-         return SERIAL_TIMEOUT;
-       else if (errno == EINTR)
-         continue;
-       else
-         return SERIAL_ERROR;  /* Got an error from select or poll */
+        {
+         if (numfds == 0)
+           return SERIAL_TIMEOUT;
+         else if (errno == EINTR)
+           continue;
+         else
+           return SERIAL_ERROR;        /* Got an error from select or poll */
+        }
 
       return 0;
     }
@@ -217,7 +229,7 @@ wait_for(scb, timeout)
    dead, or -3 for any other error (see errno in that case). */
 
 static int
-tcp_readchar(scb, timeout)
+tcp_readchar (scb, timeout)
      serial_t scb;
      int timeout;
 {
@@ -239,12 +251,14 @@ tcp_readchar(scb, timeout)
     }
 
   if (scb->bufcnt <= 0)
-    if (scb->bufcnt == 0)
-      return SERIAL_TIMEOUT;   /* 0 chars means timeout [may need to
-                                  distinguish between EOF & timeouts
-                                  someday] */
-    else
-      return SERIAL_ERROR;     /* Got an error from read */
+    {
+      if (scb->bufcnt == 0)
+        return SERIAL_TIMEOUT; /* 0 chars means timeout [may need to
+                                    distinguish between EOF & timeouts
+                                    someday] */
+      else
+        return SERIAL_ERROR;   /* Got an error from read */
+    }
 
   scb->bufcnt--;
   scb->bufp = scb->buf;
@@ -334,6 +348,7 @@ static struct serial_ops tcp_ops =
   tcp_noflush_set_tty_state,
   tcp_setbaudrate,
   tcp_setstopbits,
+  tcp_return_0,        /* wait for output to drain */
 };
 
 void
This page took 0.025272 seconds and 4 git commands to generate.