1/* Serial interface for UN*X file-descriptor based connection.
2
3   Copyright 1999, 2000, 2002 Free Software Foundation, Inc.
4
5   This file is part of GDB.
6
7   This program is free software; you can redistribute it and/or modify
8   it under the terms of the GNU General Public License as published by
9   the Free Software Foundation; either version 2 of the License, or
10   (at your option) any later version.
11
12   This program is distributed in the hope that it will be useful,
13   but WITHOUT ANY WARRANTY; without even the implied warranty of
14   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15   GNU General Public License for more details.
16
17   You should have received a copy of the GNU General Public License
18   along with this program; if not, write to the Free Software
19   Foundation, Inc., 59 Temple Place - Suite 330,
20   Boston, MA 02111-1307, USA.  */
21
22#ifndef SER_UNIX_H
23#define SER_UNIX_H
24
25struct serial;
26struct ui_file;
27
28/* Generic UNIX/FD functions */
29
30extern int ser_unix_nop_flush_output (struct serial *scb);
31extern int ser_unix_flush_input (struct serial *scb);
32extern int ser_unix_nop_send_break (struct serial *scb);
33extern void ser_unix_nop_raw (struct serial *scb);
34extern serial_ttystate ser_unix_nop_get_tty_state (struct serial *scb);
35extern int ser_unix_nop_set_tty_state (struct serial *scb,
36				       serial_ttystate ttystate);
37extern void ser_unix_nop_print_tty_state (struct serial *scb,
38					  serial_ttystate ttystate,
39					  struct ui_file *stream);
40extern int ser_unix_nop_noflush_set_tty_state (struct serial *scb,
41					       serial_ttystate new_ttystate,
42					       serial_ttystate old_ttystate);
43extern int ser_unix_nop_setbaudrate (struct serial *scb, int rate);
44extern int ser_unix_nop_setstopbits (struct serial *scb, int rate);
45extern int ser_unix_nop_drain_output (struct serial *scb);
46
47extern int ser_unix_wait_for (struct serial *scb, int timeout);
48extern int ser_unix_readchar (struct serial *scb, int timeout);
49
50extern int ser_unix_write (struct serial *scb, const char *str, int len);
51
52extern void ser_unix_async (struct serial *scb, int async_p);
53
54#endif
55