43 static void XBitFreeAll(
void *store)
52 if (g_ippair_bit_storage_id.
id == -1) {
53 FatalError(
"Can't initiate ippair storage for bits");
70 for ( ; gv != NULL; gv = gv->
next) {
81 static XBit *IPPairBitGet(
IPPair *h, uint32_t idx)
84 for ( ; gv != NULL; gv = gv->
next) {
94 static void IPPairBitAdd(
IPPair *h, uint32_t idx, uint32_t expire)
96 XBit *fb = IPPairBitGet(h, idx);
117 static void IPPairBitRemove(
IPPair *h, uint32_t idx)
119 XBit *fb = IPPairBitGet(h, idx);
133 XBit *fb = IPPairBitGet(h, idx);
135 IPPairBitAdd(h, idx, expire);
141 XBit *fb = IPPairBitGet(h, idx);
143 IPPairBitRemove(h, idx);
149 XBit *fb = IPPairBitGet(h, idx);
151 IPPairBitRemove(h, idx);
153 IPPairBitAdd(h, idx, expire);
159 XBit *fb = IPPairBitGet(h, idx);
162 IPPairBitRemove(h, idx);
173 XBit *fb = IPPairBitGet(h, idx);
179 IPPairBitRemove(h, idx);
189 static int IPPairBitTest01 (
void)
198 IPPairBitAdd(h, 0, 0);
200 XBit *fb = IPPairBitGet(h,0);
210 static int IPPairBitTest02 (
void)
219 XBit *fb = IPPairBitGet(h,0);
229 static int IPPairBitTest03 (
void)
238 IPPairBitAdd(h, 0, 30);
240 XBit *fb = IPPairBitGet(h,0);
242 printf(
"fb == NULL although it was just added: ");
246 IPPairBitRemove(h, 0);
248 fb = IPPairBitGet(h,0);
250 printf(
"fb != NULL although it was just removed: ");
262 static int IPPairBitTest04 (
void)
271 IPPairBitAdd(h, 0,30);
272 IPPairBitAdd(h, 1,30);
273 IPPairBitAdd(h, 2,30);
274 IPPairBitAdd(h, 3,30);
276 XBit *fb = IPPairBitGet(h,0);
286 static int IPPairBitTest05 (
void)
295 IPPairBitAdd(h, 0,90);
296 IPPairBitAdd(h, 1,90);
297 IPPairBitAdd(h, 2,90);
298 IPPairBitAdd(h, 3,90);
300 XBit *fb = IPPairBitGet(h,1);
310 static int IPPairBitTest06 (
void)
319 IPPairBitAdd(h, 0,90);
320 IPPairBitAdd(h, 1,90);
321 IPPairBitAdd(h, 2,90);
322 IPPairBitAdd(h, 3,90);
324 XBit *fb = IPPairBitGet(h,2);
334 static int IPPairBitTest07 (
void)
343 IPPairBitAdd(h, 0,90);
344 IPPairBitAdd(h, 1,90);
345 IPPairBitAdd(h, 2,90);
346 IPPairBitAdd(h, 3,90);
348 XBit *fb = IPPairBitGet(h,3);
358 static int IPPairBitTest08 (
void)
367 IPPairBitAdd(h, 0,90);
368 IPPairBitAdd(h, 1,90);
369 IPPairBitAdd(h, 2,90);
370 IPPairBitAdd(h, 3,90);
372 XBit *fb = IPPairBitGet(h,0);
376 IPPairBitRemove(h,0);
378 fb = IPPairBitGet(h,0);
380 printf(
"fb != NULL even though it was removed: ");
391 static int IPPairBitTest09 (
void)
400 IPPairBitAdd(h, 0,90);
401 IPPairBitAdd(h, 1,90);
402 IPPairBitAdd(h, 2,90);
403 IPPairBitAdd(h, 3,90);
405 XBit *fb = IPPairBitGet(h,1);
409 IPPairBitRemove(h,1);
411 fb = IPPairBitGet(h,1);
413 printf(
"fb != NULL even though it was removed: ");
424 static int IPPairBitTest10 (
void)
433 IPPairBitAdd(h, 0,90);
434 IPPairBitAdd(h, 1,90);
435 IPPairBitAdd(h, 2,90);
436 IPPairBitAdd(h, 3,90);
438 XBit *fb = IPPairBitGet(h,2);
442 IPPairBitRemove(h,2);
444 fb = IPPairBitGet(h,2);
446 printf(
"fb != NULL even though it was removed: ");
457 static int IPPairBitTest11 (
void)
466 IPPairBitAdd(h, 0,90);
467 IPPairBitAdd(h, 1,90);
468 IPPairBitAdd(h, 2,90);
469 IPPairBitAdd(h, 3,90);
471 XBit *fb = IPPairBitGet(h,3);
475 IPPairBitRemove(h,3);
477 fb = IPPairBitGet(h,3);
479 printf(
"fb != NULL even though it was removed: ");