diff options
author | Baruch Sterin <baruchs@gmail.com> | 2011-02-01 11:13:53 -0800 |
---|---|---|
committer | Baruch Sterin <baruchs@gmail.com> | 2011-02-01 11:13:53 -0800 |
commit | b538a5fad096764a686a68f843f74ee36d3c7ef1 (patch) | |
tree | bdeacf8e2427a12ecb5e047bf865c44b6ffc003a /src/misc/util/utilSignal.h | |
parent | 624af674a0e7f1a675917afaaf371db6a5588821 (diff) | |
download | abc-b538a5fad096764a686a68f843f74ee36d3c7ef1.tar.gz abc-b538a5fad096764a686a68f843f74ee36d3c7ef1.tar.bz2 abc-b538a5fad096764a686a68f843f74ee36d3c7ef1.zip |
1. Replace system() with a function that responds to SIGINT. 2. Add functions to cleanup temporary files on SIGINT. 3. Fix bugs related to signal handling.
Diffstat (limited to 'src/misc/util/utilSignal.h')
-rw-r--r-- | src/misc/util/utilSignal.h | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/src/misc/util/utilSignal.h b/src/misc/util/utilSignal.h new file mode 100644 index 00000000..d9802aa0 --- /dev/null +++ b/src/misc/util/utilSignal.h @@ -0,0 +1,71 @@ +/**CFile**************************************************************** + + FileName [utilSignal.h] + + SystemName [ABC: Logic synthesis and verification system.] + + PackageName [] + + Synopsis [] + + Author [] + + Affiliation [UC Berkeley] + + Date [] + + Revision [] + +***********************************************************************/ + +#ifndef __UTIL_SIGNAL_H__ +#define __UTIL_SIGNAL_H__ + +//////////////////////////////////////////////////////////////////////// +/// INCLUDES /// +//////////////////////////////////////////////////////////////////////// + +//////////////////////////////////////////////////////////////////////// +/// PARAMETERS /// +//////////////////////////////////////////////////////////////////////// + +ABC_NAMESPACE_HEADER_START + +//////////////////////////////////////////////////////////////////////// +/// BASIC TYPES /// +//////////////////////////////////////////////////////////////////////// + +//////////////////////////////////////////////////////////////////////// +/// MACRO DEFINITIONS /// +//////////////////////////////////////////////////////////////////////// + +//////////////////////////////////////////////////////////////////////// +/// FUNCTION DECLARATIONS /// +//////////////////////////////////////////////////////////////////////// + +/*=== utilSignal.c ==========================================================*/ + +void Util_SignalCleanup(); + +void Util_SignalStartHandler(); +void Util_SignalResetHandler(); +void Util_SignalStopHandler(); + +void Util_SignalBlockSignals(); +void Util_SignalUnblockSignals(); + +void Util_SignalAddChildPid(int pid); +void Util_SignalRemoveChildPid(int pid); + +int Util_SignalTmpFile(const char* prefix, const char* suffix, char** out_name); +void Util_SignalTmpFileRemove(const char* fname, int fLeave); + +int Util_SignalSystem(const char* cmd); + +ABC_NAMESPACE_HEADER_END + +#endif + +//////////////////////////////////////////////////////////////////////// +/// END OF FILE /// +//////////////////////////////////////////////////////////////////////// |