0023d2559601aeb632a57a546411eef04e85c12b
tdreszer
  Thu Nov 11 09:46:02 2010 -0800
Added some standard bit mask macros
diff --git src/inc/common.h src/inc/common.h
index e987229..5fb77dd 100644
--- src/inc/common.h
+++ src/inc/common.h
@@ -1329,16 +1329,22 @@
 /* debugging function to run the pstack program on the current process. In
  * prints a message, following by a new line, and then the stack track.  Just
  * prints errors to stderr rather than aborts. For debugging purposes
  * only.  */
 #if defined(__GNUC__)
 __attribute__((format(printf, 1, 2)))
 #endif
 ;
 
 // SETTING_ON set of macros are frequently used comparisons of string values for boolean questions.
 // Notice the subtle difference between NOT_ON and IS_OFF.  NOT_ON could be NULL but IS_OFF must be explicitly set
 #define SETTING_IS_ON(setting)    (setting && (sameWord(setting,"on") || sameWord(setting,"true") || sameWord(setting,"enabled") || atoi(setting) != 0))
 #define SETTING_NOT_ON(setting)   (!SETTING_IS_ON(setting))
 #define SETTING_IS_OFF(setting)   (setting && (sameWord(setting,"off") || sameWord(setting,"false") || sameWord(setting,"disabled") || atoi(setting) == 0))
 
+// Standard bit mask macros
+#define BITS_ADD(    flags,bits) ((flags) = ((flags) |  (bits)))
+#define BITS_REMOVE( flags,bits) ((flags) = ((flags) & ~(bits)))
+#define BITS_ARE_ON( flags,bits) (((flags) & (bits)) == (bits))
+#define BITS_ARE_OFF(flags,bits) (((flags) & (bits)) == 0)
+
 #endif /* COMMON_H */