gdb: add target_ops::supports_displaced_step
[deliverable/binutils-gdb.git] / gdb / inflow.h
CommitLineData
44270758
AC
1/* Low level interface to ptrace, for GDB when running under Unix.
2
b811d2c2 3 Copyright (C) 2003-2020 Free Software Foundation, Inc.
44270758
AC
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
a9762ec7 9 the Free Software Foundation; either version 3 of the License, or
44270758
AC
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
a9762ec7 18 along with this program. If not, see <http://www.gnu.org/licenses/>. */
44270758
AC
19
20#ifndef INFLOW_H
21#define INFLOW_H
22
726e1356 23#include <unistd.h>
766f8836 24#include <signal.h>
268a13a5 25#include "gdbsupport/job-control.h"
766f8836
AH
26
27/* RAII class used to ignore SIGTTOU in a scope. */
28
29class scoped_ignore_sigttou
30{
31public:
32 scoped_ignore_sigttou ()
33 {
34#ifdef SIGTTOU
35 if (job_control)
36 m_osigttou = signal (SIGTTOU, SIG_IGN);
37#endif
38 }
39
40 ~scoped_ignore_sigttou ()
41 {
42#ifdef SIGTTOU
43 if (job_control)
44 signal (SIGTTOU, m_osigttou);
45#endif
46 }
47
48 DISABLE_COPY_AND_ASSIGN (scoped_ignore_sigttou);
49
50private:
51#ifdef SIGTTOU
52 sighandler_t m_osigttou = NULL;
53#endif
54};
44270758 55
59bb1042 56#endif /* inflow.h */
This page took 1.380715 seconds and 4 git commands to generate.