File: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/signal.h

Green shading in the line number column means the source is part of the translation unit, red means it is conditionally excluded. Highlighted line numbers link to the translation unit page. Highlighted macros link to the macro page.

       1: #ifndef _UAPI_ASM_X86_SIGNAL_H
       2: #define _UAPI_ASM_X86_SIGNAL_H
       3: 
       4: #ifndef __ASSEMBLY__
       5: #include <linux/types.h>
       6: #include <linux/time.h>
       7: #include <linux/compiler.h>
       8: 
       9: /* Avoid too many header ordering problems.  */
      10: struct siginfo;
      11: 
      12: #ifndef __KERNEL__
      13: /* Here we must cater to libcs that poke about in kernel headers.  */
      14: 
      15: #define NSIG        32
      16: typedef unsigned long sigset_t;
      17: 
      18: #endif /* __KERNEL__ */
      19: #endif /* __ASSEMBLY__ */
      20: 
      21: 
      22: #define SIGHUP         1
      23: #define SIGINT         2
      24: #define SIGQUIT         3
      25: #define SIGILL         4
      26: #define SIGTRAP         5
      27: #define SIGABRT         6
      28: #define SIGIOT         6
      29: #define SIGBUS         7
      30: #define SIGFPE         8
      31: #define SIGKILL         9
      32: #define SIGUSR1        10
      33: #define SIGSEGV        11
      34: #define SIGUSR2        12
      35: #define SIGPIPE        13
      36: #define SIGALRM        14
      37: #define SIGTERM        15
      38: #define SIGSTKFLT    16
      39: #define SIGCHLD        17
      40: #define SIGCONT        18
      41: #define SIGSTOP        19
      42: #define SIGTSTP        20
      43: #define SIGTTIN        21
      44: #define SIGTTOU        22
      45: #define SIGURG        23
      46: #define SIGXCPU        24
      47: #define SIGXFSZ        25
      48: #define SIGVTALRM    26
      49: #define SIGPROF        27
      50: #define SIGWINCH    28
      51: #define SIGIO        29
      52: #define SIGPOLL        SIGIO
      53: /*
      54: #define SIGLOST        29
      55: */
      56: #define SIGPWR        30
      57: #define SIGSYS        31
      58: #define    SIGUNUSED    31
      59: 
      60: /* These should not be considered constants from userland.  */
      61: #define SIGRTMIN    32
      62: #define SIGRTMAX    _NSIG
      63: 
      64: /*
      65:  * SA_FLAGS values:
      66:  *
      67:  * SA_ONSTACK indicates that a registered stack_t will be used.
      68:  * SA_RESTART flag to get restarting signals (which were the default long ago)
      69:  * SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
      70:  * SA_RESETHAND clears the handler when the signal is delivered.
      71:  * SA_NOCLDWAIT flag on SIGCHLD to inhibit zombies.
      72:  * SA_NODEFER prevents the current signal from being masked in the handler.
      73:  *
      74:  * SA_ONESHOT and SA_NOMASK are the historical Linux names for the Single
      75:  * Unix names RESETHAND and NODEFER respectively.
      76:  */
      77: #define SA_NOCLDSTOP    0x00000001u
      78: #define SA_NOCLDWAIT    0x00000002u
      79: #define SA_SIGINFO    0x00000004u
      80: #define SA_ONSTACK    0x08000000u
      81: #define SA_RESTART    0x10000000u
      82: #define SA_NODEFER    0x40000000u
      83: #define SA_RESETHAND    0x80000000u
      84: 
      85: #define SA_NOMASK    SA_NODEFER
      86: #define SA_ONESHOT    SA_RESETHAND
      87: 
      88: #define SA_RESTORER    0x04000000
      89: 
      90: #define MINSIGSTKSZ    2048
      91: #define SIGSTKSZ    8192
      92: 
      93: #include <asm-generic/signal-defs.h>
      94: 
      95: #ifndef __ASSEMBLY__
      96: 
      97: 
      98: # ifndef __KERNEL__
      99: /* Here we must cater to libcs that poke about in kernel headers.  */
     100: #ifdef __i386__
     101: 
     102: struct sigaction {
     103:     union {
     104:       __sighandler_t _sa_handler;
     105:       void (*_sa_sigaction)(int, struct siginfo *, void *);
     106:     } _u;
     107:     sigset_t sa_mask;
     108:     unsigned long sa_flags;
     109:     void (*sa_restorer)(void);
     110: };
     111: 
     112: #define sa_handler    _u._sa_handler
     113: #define sa_sigaction    _u._sa_sigaction
     114: 
     115: #else /* __i386__ */
     116: 
     117: struct sigaction {
     118:     __sighandler_t sa_handler;
     119:     unsigned long sa_flags;
     120:     __sigrestore_t sa_restorer;
     121:     sigset_t sa_mask;        /* mask last for extensibility */
     122: };
     123: 
     124: #endif /* !__i386__ */
     125: # endif /* ! __KERNEL__ */
     126: 
     127: typedef struct sigaltstack {
     128:     void __user *ss_sp;
     129:     int ss_flags;
     130:     size_t ss_size;
     131: } stack_t;
     132: 
     133: #endif /* __ASSEMBLY__ */
     134: 
     135: #endif /* _UAPI_ASM_X86_SIGNAL_H */
     136: