GDB (xrefs)
Defines | Functions | Variables
/home/stan/gdb/src/gdb/serial.c File Reference
#include "defs.h"
#include <ctype.h>
#include "serial.h"
#include "gdb_string.h"
#include "gdbcmd.h"
#include "cli/cli-utils.h"

Go to the source code of this file.

Defines

#define SERIAL_BREAK   1235

Functions

void _initialize_serial (void)
static struct serial_opsserial_interface_lookup (const char *)
static void serial_logchar (struct ui_file *stream, int ch_type, int ch, int timeout)
void serial_log_command (const char *cmd)
void serial_add_interface (struct serial_ops *optable)
struct serialserial_for_fd (int fd)
struct serialserial_open (const char *name)
static struct serialserial_fdopen_ops (const int fd, struct serial_ops *ops)
struct serialserial_fdopen (const int fd)
static void do_serial_close (struct serial *scb, int really_close)
void serial_close (struct serial *scb)
void serial_un_fdopen (struct serial *scb)
int serial_is_open (struct serial *scb)
void serial_ref (struct serial *scb)
void serial_unref (struct serial *scb)
int serial_readchar (struct serial *scb, int timeout)
int serial_write (struct serial *scb, const void *buf, size_t count)
void serial_printf (struct serial *desc, const char *format,...)
int serial_drain_output (struct serial *scb)
int serial_flush_output (struct serial *scb)
int serial_flush_input (struct serial *scb)
int serial_send_break (struct serial *scb)
void serial_raw (struct serial *scb)
serial_ttystate serial_get_tty_state (struct serial *scb)
serial_ttystate serial_copy_tty_state (struct serial *scb, serial_ttystate ttystate)
int serial_set_tty_state (struct serial *scb, serial_ttystate ttystate)
void serial_print_tty_state (struct serial *scb, serial_ttystate ttystate, struct ui_file *stream)
int serial_noflush_set_tty_state (struct serial *scb, serial_ttystate new_ttystate, serial_ttystate old_ttystate)
int serial_setbaudrate (struct serial *scb, int rate)
int serial_setstopbits (struct serial *scb, int num)
int serial_can_async_p (struct serial *scb)
int serial_is_async_p (struct serial *scb)
void serial_async (struct serial *scb, serial_event_ftype *handler, void *context)
void serial_debug (struct serial *scb, int debug_p)
int serial_debug_p (struct serial *scb)
int serial_pipe (struct serial *scbs[2])
static void serial_set_cmd (char *args, int from_tty)
static void serial_show_cmd (char *args, int from_tty)
static void serial_baud_show_cmd (struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value)

Variables

static unsigned int global_serial_debug_p
static struct serial_opsserial_ops_list = NULL
static struct serialscb_base
static char * serial_logfile = NULL
static struct ui_fileserial_logfp = NULL
static const char logbase_hex [] = "hex"
static const char logbase_octal [] = "octal"
static const char logbase_ascii [] = "ascii"
static const char *const logbase_enums []
static const char * serial_logbase = logbase_ascii
static int serial_current_type = 0
static struct cmd_list_elementserial_set_cmdlist
static struct cmd_list_elementserial_show_cmdlist
int baud_rate = -1

Define Documentation

#define SERIAL_BREAK   1235

Definition at line 64 of file serial.c.

Referenced by serial_logchar(), and serial_send_break().


Function Documentation

void _initialize_serial ( void  )
static void do_serial_close ( struct serial scb,
int  really_close 
) [static]
void serial_add_interface ( struct serial_ops optable)

Definition at line 159 of file serial.c.

References serial_ops::next, and serial_ops_list.

Referenced by _initialize_ser_dos(), and _initialize_ser_windows().

void serial_async ( struct serial scb,
serial_event_ftype handler,
void *  context 
)

Definition at line 538 of file serial.c.

References serial_ops::async, serial::async_context, serial::async_handler, and serial::ops.

Referenced by do_serial_close(), and remote_async().

static void serial_baud_show_cmd ( struct ui_file file,
int  from_tty,
struct cmd_list_element c,
const char *  value 
) [static]

Definition at line 632 of file serial.c.

References _, and fprintf_filtered().

int serial_can_async_p ( struct serial scb)

Definition at line 526 of file serial.c.

References serial_ops::async, and serial::ops.

Referenced by remote_can_async_p().

void serial_close ( struct serial scb)

Definition at line 338 of file serial.c.

References do_serial_close().

Referenced by close_ports(), m32r_close(), monitor_close(), monitor_open(), remote_close(), and remote_open_1().

serial_ttystate serial_copy_tty_state ( struct serial scb,
serial_ttystate  ttystate 
)

Definition at line 486 of file serial.c.

References serial_ops::copy_tty_state, and serial::ops.

Referenced by copy_terminal_info(), and terminal_init_inferior_with_pgrp().

void serial_debug ( struct serial scb,
int  debug_p 
)

Definition at line 552 of file serial.c.

References serial::debug_p.

int serial_debug_p ( struct serial scb)

Definition at line 558 of file serial.c.

References serial::debug_p, and global_serial_debug_p.

Referenced by reschedule(), ser_base_async(), serial_readchar(), and serial_write().

int serial_drain_output ( struct serial scb)

Definition at line 447 of file serial.c.

References serial_ops::drain_output, and serial::ops.

Referenced by print_flush().

struct serial* serial_fdopen ( const int  fd) [read]

Definition at line 289 of file serial.c.

References serial_fdopen_ops().

Referenced by initialize_stdin_serial(), and print_flush().

static struct serial* serial_fdopen_ops ( const int  fd,
struct serial_ops ops 
) [static, read]
int serial_flush_input ( struct serial scb)

Definition at line 459 of file serial.c.

References serial_ops::flush_input, and serial::ops.

Referenced by load_srec(), monitor_open(), and remote_open_1().

int serial_flush_output ( struct serial scb)

Definition at line 453 of file serial.c.

References serial_ops::flush_output, and serial::ops.

struct serial* serial_for_fd ( int  fd) [read]

Definition at line 169 of file serial.c.

References serial::fd, and serial::next.

Referenced by gdb_select().

Definition at line 480 of file serial.c.

References serial_ops::get_tty_state, and serial::ops.

Referenced by gdb_has_a_terminal(), terminal_ours_1(), and terminal_save_ours().

static struct serial_ops * serial_interface_lookup ( const char *  name) [static, read]

Definition at line 147 of file serial.c.

References serial_ops::name, and serial_ops::next.

Referenced by serial_fdopen_ops(), serial_open(), and serial_pipe().

int serial_is_async_p ( struct serial scb)

Definition at line 532 of file serial.c.

References serial_ops::async, serial::async_handler, and serial::ops.

Referenced by remote_is_async_p(), reschedule(), and serial_readchar().

int serial_is_open ( struct serial scb)

Definition at line 350 of file serial.c.

References serial::bufp.

Referenced by run_async_handler_and_reschedule().

void serial_log_command ( const char *  cmd)
static void serial_logchar ( struct ui_file stream,
int  ch_type,
int  ch,
int  timeout 
) [static]
int serial_noflush_set_tty_state ( struct serial scb,
serial_ttystate  new_ttystate,
serial_ttystate  old_ttystate 
)

Definition at line 506 of file serial.c.

References serial_ops::noflush_set_tty_state, and serial::ops.

Referenced by terminal_ours_1().

struct serial* serial_open ( const char *  name) [read]
int serial_pipe ( struct serial scbs[2])

Definition at line 585 of file serial.c.

References gdb_pipe(), serial_fdopen_ops(), and serial_interface_lookup().

void serial_print_tty_state ( struct serial scb,
serial_ttystate  ttystate,
struct ui_file stream 
)

Definition at line 498 of file serial.c.

References serial::ops, and serial_ops::print_tty_state.

Referenced by child_terminal_info().

void serial_printf ( struct serial desc,
const char *  format,
  ... 
)

Definition at line 433 of file serial.c.

References serial::buf, serial_write(), xfree(), and xstrvprintf().

void serial_raw ( struct serial scb)

Definition at line 474 of file serial.c.

References serial_ops::go_raw, and serial::ops.

Referenced by monitor_open(), and remote_open_1().

int serial_readchar ( struct serial scb,
int  timeout 
)
void serial_ref ( struct serial scb)

Definition at line 356 of file serial.c.

References serial::refcnt.

Referenced by run_async_handler_and_reschedule().

int serial_send_break ( struct serial scb)
static void serial_set_cmd ( char *  args,
int  from_tty 
) [static]

Definition at line 611 of file serial.c.

References gdb_stdout, help_list(), and printf_unfiltered().

int serial_set_tty_state ( struct serial scb,
serial_ttystate  ttystate 
)

Definition at line 492 of file serial.c.

References serial::ops, and serial_ops::set_tty_state.

Referenced by terminal_inferior().

int serial_setbaudrate ( struct serial scb,
int  rate 
)

Definition at line 514 of file serial.c.

References serial::ops, and serial_ops::setbaudrate.

Referenced by monitor_open(), and remote_open_1().

int serial_setstopbits ( struct serial scb,
int  num 
)

Definition at line 520 of file serial.c.

References serial::ops, and serial_ops::setstopbits.

Referenced by monitor_open().

static void serial_show_cmd ( char *  args,
int  from_tty 
) [static]

Definition at line 619 of file serial.c.

References cmd_show_list().

void serial_un_fdopen ( struct serial scb)

Definition at line 344 of file serial.c.

References do_serial_close().

Referenced by print_flush().

void serial_unref ( struct serial scb)

Definition at line 362 of file serial.c.

References serial::refcnt, and xfree().

Referenced by do_serial_close(), and run_async_handler_and_reschedule().

int serial_write ( struct serial scb,
const void *  buf,
size_t  count 
)

Variable Documentation

int baud_rate = -1

Definition at line 629 of file serial.c.

Referenced by captured_main(), monitor_files_info(), monitor_open(), and remote_open_1().

unsigned int global_serial_debug_p [static]

Definition at line 31 of file serial.c.

Referenced by serial_debug_p().

const char logbase_ascii[] = "ascii" [static]

Definition at line 52 of file serial.c.

Referenced by serial_logchar().

const char* const logbase_enums[] [static]
Initial value:

Definition at line 53 of file serial.c.

const char logbase_hex[] = "hex" [static]

Definition at line 50 of file serial.c.

Referenced by serial_logchar().

const char logbase_octal[] = "octal" [static]

Definition at line 51 of file serial.c.

Referenced by serial_logchar().

struct serial* scb_base [static]

Definition at line 39 of file serial.c.

Referenced by serial_fdopen_ops(), and serial_open().

int serial_current_type = 0 [static]

Definition at line 58 of file serial.c.

Referenced by do_serial_close(), serial_log_command(), and serial_logchar().

Definition at line 55 of file serial.c.

Referenced by serial_logchar().

char* serial_logfile = NULL [static]

Definition at line 44 of file serial.c.

Referenced by serial_open().

struct ui_file* serial_logfp = NULL [static]

Definition at line 45 of file serial.c.

struct serial_ops* serial_ops_list = NULL [static]

Definition at line 35 of file serial.c.

Referenced by serial_add_interface().

Definition at line 607 of file serial.c.

Definition at line 608 of file serial.c.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines