/** @file | |
Implementation and Platform specific portion of <signal.h>. | |
Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved.<BR> | |
This program and the accompanying materials are licensed and made available under | |
the terms and conditions of the BSD License that accompanies this distribution. | |
The full text of the license may be found at | |
http://opensource.org/licenses/bsd-license. | |
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, | |
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. | |
**/ | |
#ifndef _SYS_SIGNAL_H | |
#define _SYS_SIGNAL_H | |
#include <sys/EfiCdefs.h> | |
#include <machine/signal.h> | |
/** The actual (default) signal numbers are assigned using an anonymous enum | |
so that the compiler can do the work of assigning values. This helps | |
ensure that the developer should never have to renumber the signals or | |
figure out what number to assign to a new signal. | |
Properly constructed programs will NEVER depend upon signal numbers being | |
in a particular order or having a particular value. All that is guaranteed | |
is that each signal number is distinct, positive, and non-zero. | |
**/ | |
enum { | |
__SigInt = 1, | |
__SigIll, | |
__SigAbrt, | |
__SigFpe, | |
__SigSegv, | |
__SigTerm, | |
__SigBreak, | |
__SigAlrm, | |
__SigVtAlrm, | |
__SigProf, | |
__SigUsr1, | |
__SigUsr2, | |
__SigWinch, | |
__SigPipe, | |
__SigQuit, | |
__Sig_Last | |
}; | |
/** The type of a signal handler function. **/ | |
typedef void __sighandler_t(int); | |
__BEGIN_DECLS | |
/** The signal function associates a "signal handler" with a signal number. | |
For historical reasons; programs expect signal to be declared | |
in <sys/signal.h>. | |
@param[in] sig Signal number that function is to be associated with. | |
@param[in] function The "handler" function to be associated with signal sig. | |
@return If the request can be honored, the signal function returns the | |
value of func for the most recent successful call to signal for | |
the specified signal sig. Otherwise, a value of SIG_ERR is | |
returned and a positive value is stored in errno. | |
*/ | |
__sighandler_t *signal(int sig, __sighandler_t *func); | |
__END_DECLS | |
#endif /* _SYS_SIGNAL_H */ |