1130803Smarcel/* Low level interface to ptrace, for GDB when running under Unix.
2130803Smarcel
3130803Smarcel   Copyright 2003 Free Software Foundation, Inc.
4130803Smarcel
5130803Smarcel   This file is part of GDB.
6130803Smarcel
7130803Smarcel   This program is free software; you can redistribute it and/or modify
8130803Smarcel   it under the terms of the GNU General Public License as published by
9130803Smarcel   the Free Software Foundation; either version 2 of the License, or
10130803Smarcel   (at your option) any later version.
11130803Smarcel
12130803Smarcel   This program is distributed in the hope that it will be useful,
13130803Smarcel   but WITHOUT ANY WARRANTY; without even the implied warranty of
14130803Smarcel   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15130803Smarcel   GNU General Public License for more details.
16130803Smarcel
17130803Smarcel   You should have received a copy of the GNU General Public License
18130803Smarcel   along with this program; if not, write to the Free Software
19130803Smarcel   Foundation, Inc., 59 Temple Place - Suite 330,
20130803Smarcel   Boston, MA 02111-1307, USA.  */
21130803Smarcel
22130803Smarcel#ifndef INFLOW_H
23130803Smarcel#define INFLOW_H
24130803Smarcel
25130803Smarcel#include "terminal.h"		/* For HAVE_TERMIOS et.al.  */
26130803Smarcel
27130803Smarcel#ifdef HAVE_TERMIOS
28130803Smarcel#define PROCESS_GROUP_TYPE pid_t
29130803Smarcel#endif
30130803Smarcel
31130803Smarcel#ifdef HAVE_TERMIO
32130803Smarcel#define PROCESS_GROUP_TYPE int
33130803Smarcel#endif
34130803Smarcel
35130803Smarcel#ifdef HAVE_SGTTY
36130803Smarcel#ifdef SHORT_PGRP
37130803Smarcel/* This is only used for the ultra.  Does it have pid_t?  */
38130803Smarcel#define PROCESS_GROUP_TYPE short
39130803Smarcel#else
40130803Smarcel#define PROCESS_GROUP_TYPE int
41130803Smarcel#endif
42130803Smarcel#endif /* sgtty */
43130803Smarcel
44130803Smarcel#ifdef PROCESS_GROUP_TYPE
45130803Smarcel/* Process group for us and the inferior.  Saved and restored just like
46130803Smarcel   {our,inferior}_ttystate.  */
47130803Smarcelextern PROCESS_GROUP_TYPE our_process_group;
48130803Smarcelextern PROCESS_GROUP_TYPE inferior_process_group;
49130803Smarcel#endif
50130803Smarcel
51130803Smarcel#endif
52