* i386-tdep.c (i386_frame_prev_register): Unwind SP from memory
[deliverable/binutils-gdb.git] / gdb / serial.h
index b109c70eac4323225144dbb91d60a50deda9cc24..a1eba8d3a6cdf105b9bfe948bfeec65325180161 100644 (file)
@@ -37,9 +37,9 @@ typedef void *serial_ttystate;
 struct serial;
 
 /* Try to open NAME.  Returns a new `struct serial *' on success, NULL
-   on failure. Note that some open calls can block and, if possible, 
+   on failure.  Note that some open calls can block and, if possible, 
    should be  written to be non-blocking, with calls to ui_look_hook 
-   so they can be cancelled. An async interface for open could be
+   so they can be cancelled.  An async interface for open could be
    added to GDB if necessary.  */
 
 extern struct serial *serial_open (const char *name);
@@ -75,7 +75,7 @@ extern void serial_un_fdopen (struct serial *scb);
 
 /* Read one char from the serial device with TIMEOUT seconds to wait
    or -1 to wait forever.  Use timeout of 0 to effect a poll.
-   Infinite waits are not permitted. Returns unsigned char if ok, else
+   Infinite waits are not permitted.  Returns unsigned char if ok, else
    one of the following codes.  Note that all error return-codes are
    guaranteed to be < 0.  */
 
@@ -129,6 +129,12 @@ extern void serial_raw (struct serial *scb);
 
 extern serial_ttystate serial_get_tty_state (struct serial *scb);
 
+/* Return a pointer to a newly malloc'd ttystate containing a copy
+   of the state in TTYSTATE.  */
+
+extern serial_ttystate serial_copy_tty_state (struct serial *scb,
+                                             serial_ttystate ttystate);
+
 /* Set the state of the tty to TTYSTATE.  The change is immediate.
    When changing to or from raw mode, input might be discarded.
    Returns 0 for success, negative value for error (in which case
@@ -137,10 +143,12 @@ extern serial_ttystate serial_get_tty_state (struct serial *scb);
 extern int serial_set_tty_state (struct serial *scb, serial_ttystate ttystate);
 
 /* printf_filtered a user-comprehensible description of ttystate on
-   the specified STREAM. FIXME: At present this sends output to the
+   the specified STREAM.  FIXME: At present this sends output to the
    default stream - GDB_STDOUT.  */
 
-extern void serial_print_tty_state (struct serial *scb, serial_ttystate ttystate, struct ui_file *);
+extern void serial_print_tty_state (struct serial *scb,
+                                   serial_ttystate ttystate,
+                                   struct ui_file *);
 
 /* Set the tty state to NEW_TTYSTATE, where OLD_TTYSTATE is the
    current state (generally obtained from a recent call to
@@ -148,7 +156,9 @@ extern void serial_print_tty_state (struct serial *scb, serial_ttystate ttystate
    This means that we never switch in or out of raw mode, even if
    NEW_TTYSTATE specifies a switch.  */
 
-extern int serial_noflush_set_tty_state (struct serial *scb, serial_ttystate new_ttystate, serial_ttystate old_ttystate);
+extern int serial_noflush_set_tty_state (struct serial *scb,
+                                        serial_ttystate new_ttystate,
+                                        serial_ttystate old_ttystate);
 
 /* Set the baudrate to the decimal value supplied.  Returns 0 for
    success, -1 for failure.  */
@@ -166,11 +176,11 @@ extern int serial_setstopbits (struct serial *scb, int num);
 
 /* Asynchronous serial interface: */
 
-/* Can the serial device support asynchronous mode? */
+/* Can the serial device support asynchronous mode?  */
 
 extern int serial_can_async_p (struct serial *scb);
 
-/* Has the serial device been put in asynchronous mode? */
+/* Has the serial device been put in asynchronous mode?  */
 
 extern int serial_is_async_p (struct serial *scb);
 
@@ -179,11 +189,12 @@ extern int serial_is_async_p (struct serial *scb);
    callback.  */
 
 typedef void (serial_event_ftype) (struct serial *scb, void *context);
-extern void serial_async (struct serial *scb, serial_event_ftype *handler, void *context);
+extern void serial_async (struct serial *scb,
+                         serial_event_ftype *handler, void *context);
 
 /* Provide direct access to the underlying FD (if any) used to
    implement the serial device.  This interface is clearly
-   deprecated. Will call internal_error() if the operation isn't
+   deprecated.  Will call internal_error() if the operation isn't
    applicable to the current serial device.  */
 
 extern int deprecated_serial_fd (struct serial *scb);
@@ -198,7 +209,7 @@ extern void serial_debug (struct serial *scb, int debug_p);
 extern int serial_debug_p (struct serial *scb);
 
 
-/* Details of an instance of a serial object */
+/* Details of an instance of a serial object */
 
 struct serial
   {
@@ -245,6 +256,7 @@ struct serial_ops
     int (*send_break) (struct serial *);
     void (*go_raw) (struct serial *);
     serial_ttystate (*get_tty_state) (struct serial *);
+    serial_ttystate (*copy_tty_state) (struct serial *, serial_ttystate);
     int (*set_tty_state) (struct serial *, serial_ttystate);
     void (*print_tty_state) (struct serial *, serial_ttystate,
                             struct ui_file *);
@@ -252,7 +264,7 @@ struct serial_ops
                                  serial_ttystate);
     int (*setbaudrate) (struct serial *, int rate);
     int (*setstopbits) (struct serial *, int num);
-    /* Wait for output to drain */
+    /* Wait for output to drain */
     int (*drain_output) (struct serial *);
     /* Change the serial device into/out of asynchronous mode, call
        the specified function when ever there is something
@@ -279,11 +291,11 @@ struct serial_ops
 #endif /* USE_WIN32API */
   };
 
-/* Add a new serial interface to the interface list */
+/* Add a new serial interface to the interface list */
 
 extern void serial_add_interface (struct serial_ops * optable);
 
-/* File in which to record the remote debugging session */
+/* File in which to record the remote debugging session */
 
 extern void serial_log_command (const char *);
 
This page took 0.054069 seconds and 4 git commands to generate.