* gdbint.texinfo: Doc NO_MMALLOC and NO_MMALLOC_CHECK as host conditionals.
[deliverable/binutils-gdb.git] / gdb / serial.h
CommitLineData
b52373a2 1/* Remote serial support interface definitions for GDB, the GNU Debugger.
ae0ea72e
SC
2 Copyright 1992 Free Software Foundation, Inc.
3
4This file is part of GDB.
5
6This program is free software; you can redistribute it and/or modify
7it under the terms of the GNU General Public License as published by
8the Free Software Foundation; either version 2 of the License, or
9(at your option) any later version.
10
11This program is distributed in the hope that it will be useful,
12but WITHOUT ANY WARRANTY; without even the implied warranty of
13MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14GNU General Public License for more details.
15
16You should have received a copy of the GNU General Public License
17along with this program; if not, write to the Free Software
18Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
19
5fe93239
SC
20#ifdef __GO32__
21
22/* Then you use the asynctsr */
23
24#else
ed3f6049
SG
25#ifdef HAVE_TERMIO
26
27#include <termios.h>
28#include <unistd.h>
29
30struct ttystate
31{
32 int flags; /* Flags from fcntl F_GETFL */
33 struct termios termios; /* old tty driver settings */
34};
35
36#else /* not HAVE_TERMIO */
37
38#include <sgtty.h>
39
40struct ttystate {
41 int flags; /* Flags from fcntl F_GETFL */
42 struct sgttyb sgttyb; /* old tty driver settings */
43};
44
45#endif /* not HAVE_TERMIO */
5fe93239 46#endif
ae0ea72e 47/* Return a sensible default name for a serial device, something which
b52373a2 48 can be used as an argument to serial_open. */
ae0ea72e 49
b52373a2 50const char *serial_default_name PARAMS ((void));
ae0ea72e 51
b52373a2 52/* Try to open the serial device "name", return 1 if ok, 0 if not. */
ae0ea72e 53
b52373a2 54int serial_open PARAMS ((const char *name));
ae0ea72e 55
b52373a2 56/* Turn the port into raw mode. */
ae0ea72e 57
ed3f6049 58void serial_raw PARAMS ((int fd, struct ttystate *oldstate));
ae0ea72e 59
b52373a2 60/* Turn the port into normal mode. */
ae0ea72e 61
b52373a2 62void serial_normal PARAMS ((void));
ae0ea72e 63
b52373a2 64/* Read one char from the serial device with <TO>-second timeout.
5a6242dd 65 Returns char if ok, else EOF, -2 for timeout, -3 for anything else */
ae0ea72e 66
5a6242dd 67int serial_readchar PARAMS ((int to));
ae0ea72e 68
b52373a2
JG
69/* Set the baudrate to the decimal value supplied, and return 1, or fail and
70 return 0. */
ae0ea72e 71
a0f9783e 72int serial_setbaudrate PARAMS ((int rate));
ae0ea72e 73
b52373a2 74/* Return the next rate in the sequence, or return 0 for failure. */
ae0ea72e 75
a0f9783e
SG
76/* Write some chars to the device, returns 0 for failure. See errno for
77 details. */
ae0ea72e 78
ed3f6049 79int serial_write PARAMS ((const char *str, int len));
ae0ea72e 80
a0f9783e 81/* Close the serial port */
ae0ea72e 82
a0f9783e 83void serial_close PARAMS ((void));
740b7efa
SG
84
85/* Restore the serial port to the state saved in oldstate */
86
402dca80 87void serial_restore PARAMS ((int desc, struct ttystate *oldstate));
This page took 0.0558 seconds and 4 git commands to generate.