/usr/lib/llvm-3.4/include/lldb/Target/UnixSignals.h is in liblldb-3.4-dev 1:3.4.2-13.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 | //===-- UnixSignals.h -------------------------------------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
#ifndef lldb_UnixSignals_h_
#define lldb_UnixSignals_h_
// C Includes
// C++ Includes
#include <string>
#include <map>
// Other libraries and framework includes
// Project includes
#include "lldb/lldb-private.h"
#include "lldb/Core/ConstString.h"
namespace lldb_private
{
class UnixSignals
{
public:
//------------------------------------------------------------------
// Constructors and Destructors
//------------------------------------------------------------------
UnixSignals();
virtual
~UnixSignals();
const char *
GetSignalAsCString (int32_t signo) const;
bool
SignalIsValid (int32_t signo) const;
int32_t
GetSignalNumberFromName (const char *name) const;
const char *
GetSignalInfo (int32_t signo,
bool &should_suppress,
bool &should_stop,
bool &should_notify) const;
bool
GetShouldSuppress (int32_t signo) const;
bool
SetShouldSuppress (int32_t signo,
bool value);
bool
SetShouldSuppress (const char *signal_name,
bool value);
bool
GetShouldStop (int32_t signo) const;
bool
SetShouldStop (int32_t signo,
bool value);
bool
SetShouldStop (const char *signal_name,
bool value);
bool
GetShouldNotify (int32_t signo) const;
bool
SetShouldNotify (int32_t signo, bool value);
bool
SetShouldNotify (const char *signal_name,
bool value);
// These provide an iterator through the signals available on this system.
// Call GetFirstSignalNumber to get the first entry, then iterate on GetNextSignalNumber
// till you get back LLDB_INVALID_SIGNAL_NUMBER.
int32_t
GetFirstSignalNumber () const;
int32_t
GetNextSignalNumber (int32_t current_signal) const;
// We assume that the elements of this object are constant once it is constructed,
// since a process should never need to add or remove symbols as it runs. So don't
// call these functions anywhere but the constructor of your subclass of UnixSignals or in
// your Process Plugin's GetUnixSignals method before you return the UnixSignal object.
void
AddSignal (int signo,
const char *name,
const char *short_name,
bool default_suppress,
bool default_stop,
bool default_notify,
const char *description);
void
RemoveSignal (int signo);
protected:
//------------------------------------------------------------------
// Classes that inherit from UnixSignals can see and modify these
//------------------------------------------------------------------
struct Signal
{
ConstString m_name;
ConstString m_short_name;
std::string m_description;
bool m_suppress:1,
m_stop:1,
m_notify:1;
Signal (const char *name,
const char *short_name,
bool default_suppress,
bool default_stop,
bool default_notify,
const char *description);
~Signal () {}
};
void
Reset ();
typedef std::map <int32_t, Signal> collection;
collection m_signals;
DISALLOW_COPY_AND_ASSIGN (UnixSignals);
};
} // Namespace lldb
#endif // lldb_UnixSignals_h_
|