summaryrefslogtreecommitdiff
path: root/lib/birdlib.h
diff options
context:
space:
mode:
Diffstat (limited to 'lib/birdlib.h')
-rw-r--r--lib/birdlib.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/birdlib.h b/lib/birdlib.h
index 04fb7fed..c49c5b99 100644
--- a/lib/birdlib.h
+++ b/lib/birdlib.h
@@ -33,6 +33,12 @@
#define ABS(a) ((a)>=0 ? (a) : -(a))
#define ARRAY_SIZE(a) (sizeof(a)/sizeof(*(a)))
+#define BIT32_VAL(p) (((u32) 1) << ((p) % 32))
+#define BIT32_TEST(b,p) ((b)[(p)/32] & BIT32_VAL(p))
+#define BIT32_SET(b,p) ((b)[(p)/32] |= BIT32_VAL(p))
+#define BIT32_CLR(b,p) ((b)[(p)/32] &= ~BIT32_VAL(p))
+#define BIT32_ZERO(b,l) memset((b), 0, (l)/8)
+
#ifndef NULL
#define NULL ((void *) 0)
#endif