1------------------------------------------------------------------------------
2--                                                                          --
3--                GNU ADA RUN-TIME LIBRARY (GNARL) COMPONENTS               --
4--                                                                          --
5--                   A D A . I N T E R R U P T S . N A M E S                --
6--                                                                          --
7--                                  S p e c                                 --
8--                                                                          --
9--           Copyright (C) 1991-2002 Free Software Foundation, Inc.         --
10--                                                                          --
11-- GNARL is free software; you can  redistribute it  and/or modify it under --
12-- terms of the  GNU General Public License as published  by the Free Soft- --
13-- ware  Foundation;  either version 2,  or (at your option) any later ver- --
14-- sion. GNARL is distributed in the hope that it will be useful, but WITH- --
15-- OUT ANY WARRANTY;  without even the  implied warranty of MERCHANTABILITY --
16-- or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License --
17-- for  more details.  You should have  received  a copy of the GNU General --
18-- Public License  distributed with GNARL; see file COPYING.  If not, write --
19-- to  the Free Software Foundation,  59 Temple Place - Suite 330,  Boston, --
20-- MA 02111-1307, USA.                                                      --
21--                                                                          --
22-- As a special exception,  if other files  instantiate  generics from this --
23-- unit, or you link  this unit with other files  to produce an executable, --
24-- this  unit  does not  by itself cause  the resulting  executable  to  be --
25-- covered  by the  GNU  General  Public  License.  This exception does not --
26-- however invalidate  any other reasons why  the executable file  might be --
27-- covered by the  GNU Public License.                                      --
28--                                                                          --
29-- GNARL was developed by the GNARL team at Florida State University.       --
30-- Extensive contributions were provided by Ada Core Technologies, Inc.     --
31--                                                                          --
32------------------------------------------------------------------------------
33
34--  This is a GNU/Linux version of this package.
35--
36--  The following signals are reserved by the run time (FSU threads):
37--
38--  SIGFPE, SIGILL, SIGSEGV, SIGBUS, SIGTRAP, SIGABRT, SIGINT,
39--  SIGALRM, SIGVTALRM, SIGUNUSED, SIGSTOP, SIGKILL
40--
41--  The following signals are reserved by the run time (LinuxThreads):
42--
43--  SIGFPE, SIGILL, SIGSEGV, SIGBUS, SIGTRAP, SIGABRT, SIGINT,
44--  SIGUSR1, SIGUSR2, SIGVTALRM, SIGUNUSED, SIGSTOP, SIGKILL
45--
46--  The pragma Unreserve_All_Interrupts affects the following signal(s):
47--
48--  SIGINT: made available for Ada handler
49
50--  This target-dependent package spec contains names of interrupts
51--  supported by the local system.
52
53with System.OS_Interface;
54--  used for names of interrupts
55
56package Ada.Interrupts.Names is
57
58   --  Beware that the mapping of names to signals may be
59   --  many-to-one.  There may be aliases.  Also, for all
60   --  signal names that are not supported on the current system
61   --  the value of the corresponding constant will be zero.
62
63   SIGHUP : constant Interrupt_ID :=
64     System.OS_Interface.SIGHUP;      --  hangup
65
66   SIGINT : constant Interrupt_ID :=
67     System.OS_Interface.SIGINT;      --  interrupt (rubout)
68
69   SIGQUIT : constant Interrupt_ID :=
70     System.OS_Interface.SIGQUIT;     --  quit (ASCD FS)
71
72   SIGILL : constant Interrupt_ID :=
73     System.OS_Interface.SIGILL;      --  illegal instruction (not reset)
74
75   SIGTRAP : constant Interrupt_ID :=
76     System.OS_Interface.SIGTRAP;     --  trace trap (not reset)
77
78   SIGIOT : constant Interrupt_ID :=
79     System.OS_Interface.SIGIOT;      --  IOT instruction
80
81   SIGABRT : constant Interrupt_ID := --  used by abort,
82     System.OS_Interface.SIGABRT;     --  replace SIGIOT in the  future
83
84   SIGFPE : constant Interrupt_ID :=
85     System.OS_Interface.SIGFPE;      --  floating point exception
86
87   SIGKILL : constant Interrupt_ID :=
88     System.OS_Interface.SIGKILL;     --  kill (cannot be caught or ignored)
89
90   SIGBUS : constant Interrupt_ID :=
91     System.OS_Interface.SIGBUS;      --  bus error
92
93   SIGSEGV : constant Interrupt_ID :=
94     System.OS_Interface.SIGSEGV;     --  segmentation violation
95
96   SIGPIPE : constant Interrupt_ID := --  write on a pipe with
97     System.OS_Interface.SIGPIPE;     --  no one to read it
98
99   SIGALRM : constant Interrupt_ID :=
100     System.OS_Interface.SIGALRM;     --  alarm clock
101
102   SIGTERM : constant Interrupt_ID :=
103     System.OS_Interface.SIGTERM;     --  software termination signal from kill
104
105   SIGUSR1 : constant Interrupt_ID :=
106     System.OS_Interface.SIGUSR1;     --  user defined signal 1
107
108   SIGUSR2 : constant Interrupt_ID :=
109     System.OS_Interface.SIGUSR2;     --  user defined signal 2
110
111   SIGCLD : constant Interrupt_ID :=
112     System.OS_Interface.SIGCLD;      --  child status change
113
114   SIGCHLD : constant Interrupt_ID :=
115     System.OS_Interface.SIGCHLD;     --  4.3BSD's/POSIX name for SIGCLD
116
117   SIGWINCH : constant Interrupt_ID :=
118     System.OS_Interface.SIGWINCH;    --  window size change
119
120   SIGURG : constant Interrupt_ID :=
121     System.OS_Interface.SIGURG;      --  urgent condition on IO channel
122
123   SIGPOLL : constant Interrupt_ID :=
124     System.OS_Interface.SIGPOLL;     --  pollable event occurred
125
126   SIGIO : constant Interrupt_ID :=   --  input/output possible,
127     System.OS_Interface.SIGIO;       --  SIGPOLL alias (Solaris)
128
129   SIGSTOP : constant Interrupt_ID :=
130     System.OS_Interface.SIGSTOP;     --  stop (cannot be caught or ignored)
131
132   SIGTSTP : constant Interrupt_ID :=
133     System.OS_Interface.SIGTSTP;     --  user stop requested from tty
134
135   SIGCONT : constant Interrupt_ID :=
136     System.OS_Interface.SIGCONT;     --  stopped process has been continued
137
138   SIGTTIN : constant Interrupt_ID :=
139     System.OS_Interface.SIGTTIN;     --  background tty read attempted
140
141   SIGTTOU : constant Interrupt_ID :=
142     System.OS_Interface.SIGTTOU;     --  background tty write attempted
143
144   SIGVTALRM : constant Interrupt_ID :=
145     System.OS_Interface.SIGVTALRM;   --  virtual timer expired
146
147   SIGPROF : constant Interrupt_ID :=
148     System.OS_Interface.SIGPROF;     --  profiling timer expired
149
150   SIGXCPU : constant Interrupt_ID :=
151     System.OS_Interface.SIGXCPU;     --  CPU time limit exceeded
152
153   SIGXFSZ : constant Interrupt_ID :=
154     System.OS_Interface.SIGXFSZ;     --  filesize limit exceeded
155
156   SIGUNUSED : constant Interrupt_ID :=
157     System.OS_Interface.SIGUNUSED;     --  unused signal
158
159   SIGSTKFLT : constant Interrupt_ID :=
160     System.OS_Interface.SIGSTKFLT;     --  stack fault on coprocessor
161
162   SIGLOST : constant Interrupt_ID :=
163     System.OS_Interface.SIGLOST;       --  Linux alias for SIGIO
164
165   SIGPWR : constant Interrupt_ID :=
166     System.OS_Interface.SIGPWR;        --  Power failure
167
168end Ada.Interrupts.Names;
169