summaryrefslogtreecommitdiffstats
path: root/contrib/ipfilter/lib/count4bits.c
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/ipfilter/lib/count4bits.c')
-rw-r--r--contrib/ipfilter/lib/count4bits.c38
1 files changed, 0 insertions, 38 deletions
diff --git a/contrib/ipfilter/lib/count4bits.c b/contrib/ipfilter/lib/count4bits.c
deleted file mode 100644
index 51e6025..0000000
--- a/contrib/ipfilter/lib/count4bits.c
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * Copyright (C) 2002 by Darren Reed.
- *
- * See the IPFILTER.LICENCE file for details on licencing.
- *
- * $Id: count4bits.c,v 1.1.4.1 2006/06/16 17:20:57 darrenr Exp $
- */
-
-#include "ipf.h"
-
-
-/*
- * count consecutive 1's in bit mask. If the mask generated by counting
- * consecutive 1's is different to that passed, return -1, else return #
- * of bits.
- */
-int count4bits(ip)
-u_int ip;
-{
- int cnt = 0, i, j;
- u_int ipn;
-
- ip = ipn = ntohl(ip);
- for (i = 32; i; i--, ipn *= 2)
- if (ipn & 0x80000000)
- cnt++;
- else
- break;
- ipn = 0;
- for (i = 32, j = cnt; i; i--, j--) {
- ipn *= 2;
- if (j > 0)
- ipn++;
- }
- if (ipn == ip)
- return cnt;
- return -1;
-}
OpenPOWER on IntegriCloud