00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00076 #ifndef DK_SIGNAL_INCLUDED
00077 #define DK_SIGNAL_INCLUDED 1
00078
00079 #include <dk.h>
00080 #include <dktypes.h>
00081
00083 #define DK_SIGNAL_SIGACTION 3
00084
00086 #define DK_SIGNAL_TYPE_SIGSET 2
00087
00089 #define DK_SIGNAL_SIGNAL 1
00090
00092 #define DK_SIGNAL_NONE 0
00093
00094 #if defined(EXTERN)
00095 #undef EXTERN
00096 #endif
00097 #ifndef DK_SIGNAL_C
00098 #if !DK_HAVE_PROTOTYPES
00099 #define EXTERN extern
00100 #else
00101 #define EXTERN
00102 #endif
00103 #else
00104 #define EXTERN
00105 #endif
00106
00107
00108
00113 #if DK_HAVE_SIGACTION
00114 #define dksignal_refresh(i,disp)
00115 #else
00116 #if DK_HAVE_SIGSET
00117 #define dksignal_refresh(i,disp)
00118 #else
00119 #if DK_HAVE_SIGNAL
00120 #define dksignal_refresh(i,disp) signal(i,disp)
00121 #else
00122 #define dksignal_refresh(i,disp)
00123 #endif
00124 #endif
00125 #endif
00126
00127
00128
00133 #if DK_HAVE_SIGACTION
00134 #define dksignal_return(i)
00135 #else
00136 #if DK_HAVE_SIGSET
00137 #define dksignal_return(i)
00138 #else
00139 #if DK_HAVE_SIGNAL
00140 #define dksignal_return(i)
00141 #else
00142 #define dksignal_return(i)
00143 #endif
00144 #endif
00145 #endif
00146
00147
00148
00149 #if defined(__cplusplus)
00150 extern "C" {
00151 #endif
00152
00153
00154
00159 EXTERN
00160 dk_signal_disp_t dksignal_set DK_PR((int signo, dk_signal_disp_t disp));
00161
00162
00163
00172 EXTERN
00173 int dksignal_available DK_PR((void));
00174
00175
00176
00177 #if defined(__cplusplus)
00178 }
00179 #endif
00180 #endif
00181