git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12139 6f19259b-4bc3-4df7-8a09-765794883524
		
			
				
	
	
		
			69 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			69 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
/** @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 */
 |