1193326Sed/* $FreeBSD: releng/11.0/contrib/ipfilter/lib/printmask.c 255332 2013-09-06 23:11:19Z cy $ */ 2193326Sed 3193326Sed/* 4193326Sed * Copyright (C) 2012 by Darren Reed. 5193326Sed * 6193326Sed * See the IPFILTER.LICENCE file for details on licencing. 7288943Sdim * 8193326Sed * $Id$ 9193326Sed */ 10193326Sed 11193326Sed#include "ipf.h" 12193326Sed 13193326Sed 14193326Sedvoid 15193326Sedprintmask(family, mask) 16193326Sed int family; 17193326Sed u_32_t *mask; 18193326Sed{ 19193326Sed struct in_addr ipa; 20193326Sed int ones; 21193326Sed 22193326Sed if (family == AF_INET6) { 23193326Sed PRINTF("/%d", count6bits(mask)); 24193326Sed } else if ((ones = count4bits(*mask)) == -1) { 25193326Sed ipa.s_addr = *mask; 26193326Sed PRINTF("/%s", inet_ntoa(ipa)); 27193326Sed } else { 28193326Sed PRINTF("/%d", ones); 29193326Sed } 30193326Sed} 31193326Sed