1145519Sdarrenr/* $FreeBSD$ */ 2145510Sdarrenr 3145510Sdarrenr/* 4255332Scy * Copyright (C) 2012 by Darren Reed. 5145510Sdarrenr * 6145510Sdarrenr * See the IPFILTER.LICENCE file for details on licencing. 7145510Sdarrenr * 8255332Scy * $Id$ 9145510Sdarrenr */ 10145510Sdarrenr 11145510Sdarrenr#include "ipf.h" 12145510Sdarrenr 13145510Sdarrenr 14145510Sdarrenrint count6bits(msk) 15255332Scy u_32_t *msk; 16145510Sdarrenr{ 17145510Sdarrenr int i = 0, k; 18145510Sdarrenr u_32_t j; 19145510Sdarrenr 20145510Sdarrenr for (k = 3; k >= 0; k--) 21145510Sdarrenr if (msk[k] == 0xffffffff) 22145510Sdarrenr i += 32; 23145510Sdarrenr else { 24145510Sdarrenr for (j = msk[k]; j; j <<= 1) 25145510Sdarrenr if (j & 0x80000000) 26145510Sdarrenr i++; 27145510Sdarrenr } 28145510Sdarrenr return i; 29145510Sdarrenr} 30