summaryrefslogtreecommitdiffstats
path: root/contrib/ipfilter/lib/printhostmask.c
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/ipfilter/lib/printhostmask.c')
-rw-r--r--contrib/ipfilter/lib/printhostmask.c33
1 files changed, 13 insertions, 20 deletions
diff --git a/contrib/ipfilter/lib/printhostmask.c b/contrib/ipfilter/lib/printhostmask.c
index 44703c4..10d90b2 100644
--- a/contrib/ipfilter/lib/printhostmask.c
+++ b/contrib/ipfilter/lib/printhostmask.c
@@ -1,19 +1,20 @@
/* $FreeBSD$ */
/*
- * Copyright (C) 2000-2005 by Darren Reed.
+ * Copyright (C) 2012 by Darren Reed.
*
* See the IPFILTER.LICENCE file for details on licencing.
*
- * $Id: printhostmask.c,v 1.8.4.1 2006/06/16 17:21:12 darrenr Exp $
+ * $Id$
*/
#include "ipf.h"
-void printhostmask(v, addr, mask)
-int v;
-u_32_t *addr, *mask;
+void
+printhostmask(family, addr, mask)
+ int family;
+ u_32_t *addr, *mask;
{
#ifdef USE_INET6
char ipbuf[64];
@@ -21,26 +22,18 @@ u_32_t *addr, *mask;
struct in_addr ipa;
#endif
- if (!*addr && !*mask)
- printf("any");
+ if ((family == -1) || ((!addr || !*addr) && (!mask || !*mask)))
+ PRINTF("any");
else {
-#ifdef USE_INET6
void *ptr = addr;
- int af;
- if (v == 4) {
- ptr = addr;
- af = AF_INET;
- } else if (v == 6) {
- ptr = addr;
- af = AF_INET6;
- } else
- af = 0;
- printf("%s", inet_ntop(af, ptr, ipbuf, sizeof(ipbuf)));
+#ifdef USE_INET6
+ PRINTF("%s", inet_ntop(family, ptr, ipbuf, sizeof(ipbuf)));
#else
ipa.s_addr = *addr;
- printf("%s", inet_ntoa(ipa));
+ PRINTF("%s", inet_ntoa(ipa));
#endif
- printmask(mask);
+ if (mask != NULL)
+ printmask(family, mask);
}
}
OpenPOWER on IntegriCloud