17c478bd9Sstevel@tonic-gate /* 2*d6c23f6fSyx160601 * Copyright (C) 2000-2005 by Darren Reed. 37c478bd9Sstevel@tonic-gate * 47c478bd9Sstevel@tonic-gate * See the IPFILTER.LICENCE file for details on licencing. 57c478bd9Sstevel@tonic-gate * 67c478bd9Sstevel@tonic-gate * $Id: printhostmask.c,v 1.8 2002/04/11 15:01:19 darrenr Exp $ 77663b816Sml37995 * 8*d6c23f6fSyx160601 * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 97663b816Sml37995 * Use is subject to license terms. 107c478bd9Sstevel@tonic-gate */ 117c478bd9Sstevel@tonic-gate 127663b816Sml37995 #pragma ident "%Z%%M% %I% %E% SMI" 137663b816Sml37995 147c478bd9Sstevel@tonic-gate #include "ipf.h" 157c478bd9Sstevel@tonic-gate 167c478bd9Sstevel@tonic-gate 177c478bd9Sstevel@tonic-gate void printhostmask(v, addr, mask) 187c478bd9Sstevel@tonic-gate int v; 197c478bd9Sstevel@tonic-gate u_32_t *addr, *mask; 207c478bd9Sstevel@tonic-gate { 217c478bd9Sstevel@tonic-gate #ifdef USE_INET6 227663b816Sml37995 char ipbuf[INET6_ADDRSTRLEN]; 237c478bd9Sstevel@tonic-gate #else 247c478bd9Sstevel@tonic-gate struct in_addr ipa; 257c478bd9Sstevel@tonic-gate #endif 267c478bd9Sstevel@tonic-gate 27*d6c23f6fSyx160601 if ((v == 4) && (!*addr) && (!*mask)) 287c478bd9Sstevel@tonic-gate printf("any"); 297c478bd9Sstevel@tonic-gate else { 307c478bd9Sstevel@tonic-gate #ifdef USE_INET6 317c478bd9Sstevel@tonic-gate void *ptr = addr; 327c478bd9Sstevel@tonic-gate int af; 337c478bd9Sstevel@tonic-gate 34*d6c23f6fSyx160601 if (v == 4) 357c478bd9Sstevel@tonic-gate af = AF_INET; 36*d6c23f6fSyx160601 else if (v == 6) 377c478bd9Sstevel@tonic-gate af = AF_INET6; 38*d6c23f6fSyx160601 else 397c478bd9Sstevel@tonic-gate af = 0; 407c478bd9Sstevel@tonic-gate printf("%s", inet_ntop(af, ptr, ipbuf, sizeof(ipbuf))); 417c478bd9Sstevel@tonic-gate #else 427c478bd9Sstevel@tonic-gate ipa.s_addr = *addr; 437c478bd9Sstevel@tonic-gate printf("%s", inet_ntoa(ipa)); 447c478bd9Sstevel@tonic-gate #endif 45*d6c23f6fSyx160601 if (mask != NULL) 467663b816Sml37995 printmask(v, mask); 477c478bd9Sstevel@tonic-gate } 487c478bd9Sstevel@tonic-gate } 49