1 /*----------------------------------------------------------------------- 2 3 File : cco_signals.h 4 5 Author: Stephan Schulz 6 7 Contents 8 9 Signal handler for limit signals...not really necessary, but may 10 work around some Solaris bugs. Also some support infrastructure... 11 12 Copyright 1998, 1999 by the author. 13 This code is released under the GNU General Public Licence and 14 the GNU Lesser General Public License. 15 See the file COPYING in the main E directory for details.. 16 Run "eprover -h" for contact information. 17 18 Changes 19 20 <1> Fri Nov 6 14:50:28 MET 1998 21 New 22 23 -----------------------------------------------------------------------*/ 24 25 #ifndef CCO_SIGNALS 26 27 #define CCO_SIGNALS 28 29 #include <signal.h> 30 #include <sys/types.h> 31 #include <sys/time.h> 32 #include <sys/resource.h> 33 34 #include <cio_tempfile.h> 35 36 /*---------------------------------------------------------------------*/ 37 /* Data type declarations */ 38 /*---------------------------------------------------------------------*/ 39 40 41 42 43 /*---------------------------------------------------------------------*/ 44 /* Exported Functions and Variables */ 45 /*---------------------------------------------------------------------*/ 46 47 extern rlim_t ScheduleTimeLimit; /* Used for 48 * determining how 49 * much time the 50 * scheduler can use 51 * in total */ 52 extern rlim_t SystemTimeLimit; /* Returned by the 53 initial getrlimit 54 call as general hard 55 time limit */ 56 extern rlim_t SoftTimeLimit; /* Try to exit 57 gracefully */ 58 extern rlim_t HardTimeLimit; /* Exit now! */ 59 extern sig_atomic_t TimeIsUp; 60 extern sig_atomic_t TimeLimitIsSoft; /* Have we hit hard or 61 soft? */ 62 extern bool SilentTimeOut; 63 64 void ESignalSetup(int mysignal); 65 void ESignalHandler(int mysignal); 66 67 68 #endif 69 70 /*---------------------------------------------------------------------*/ 71 /* End of File */ 72 /*---------------------------------------------------------------------*/ 73 74 75 76 77 78