xref: /illumos-gate/usr/src/cmd/ipf/lib/printhostmask.c (revision f3ac678143127d4c6c1793fadabb5ded04e127b6)
1*f3ac6781SToomas Soome /*
2*f3ac6781SToomas Soome  * Copyright (C) 2000-2005 by Darren Reed.
3*f3ac6781SToomas Soome  *
4*f3ac6781SToomas Soome  * See the IPFILTER.LICENCE file for details on licencing.
5*f3ac6781SToomas Soome  *
6*f3ac6781SToomas Soome  * $Id: printhostmask.c,v 1.8 2002/04/11 15:01:19 darrenr Exp $
7*f3ac6781SToomas Soome  *
8*f3ac6781SToomas Soome  * Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
9*f3ac6781SToomas Soome  * Use is subject to license terms.
10*f3ac6781SToomas Soome  */
11*f3ac6781SToomas Soome 
12*f3ac6781SToomas Soome #include "ipf.h"
13*f3ac6781SToomas Soome 
14*f3ac6781SToomas Soome 
printhostmask(v,addr,mask)15*f3ac6781SToomas Soome void	printhostmask(v, addr, mask)
16*f3ac6781SToomas Soome int	v;
17*f3ac6781SToomas Soome u_32_t	*addr, *mask;
18*f3ac6781SToomas Soome {
19*f3ac6781SToomas Soome #ifdef  USE_INET6
20*f3ac6781SToomas Soome 	char ipbuf[INET6_ADDRSTRLEN];
21*f3ac6781SToomas Soome #else
22*f3ac6781SToomas Soome 	struct in_addr ipa;
23*f3ac6781SToomas Soome #endif
24*f3ac6781SToomas Soome 
25*f3ac6781SToomas Soome 	if ((v == 4) && (!*addr) && (!*mask))
26*f3ac6781SToomas Soome 		printf("any");
27*f3ac6781SToomas Soome 	else {
28*f3ac6781SToomas Soome #ifdef  USE_INET6
29*f3ac6781SToomas Soome 		void *ptr = addr;
30*f3ac6781SToomas Soome 		int af;
31*f3ac6781SToomas Soome 
32*f3ac6781SToomas Soome 		if (v == 4)
33*f3ac6781SToomas Soome 			af = AF_INET;
34*f3ac6781SToomas Soome 		else if (v == 6)
35*f3ac6781SToomas Soome 			af = AF_INET6;
36*f3ac6781SToomas Soome 		else
37*f3ac6781SToomas Soome 			af = 0;
38*f3ac6781SToomas Soome 		printf("%s", inet_ntop(af, ptr, ipbuf, sizeof(ipbuf)));
39*f3ac6781SToomas Soome #else
40*f3ac6781SToomas Soome 		ipa.s_addr = *addr;
41*f3ac6781SToomas Soome 		printf("%s", inet_ntoa(ipa));
42*f3ac6781SToomas Soome #endif
43*f3ac6781SToomas Soome 		if (mask != NULL)
44*f3ac6781SToomas Soome 			printmask(v, mask);
45*f3ac6781SToomas Soome 	}
46*f3ac6781SToomas Soome }
47