1*d6c23f6fSyx160601 /* 2*d6c23f6fSyx160601 * Copyright (C) 2005 by Darren Reed. 3*d6c23f6fSyx160601 * 4*d6c23f6fSyx160601 * See the IPFILTER.LICENCE file for details on licencing. 5*d6c23f6fSyx160601 * 6*d6c23f6fSyx160601 */ 7*d6c23f6fSyx160601 8*d6c23f6fSyx160601 #pragma ident "%Z%%M% %I% %E% SMI" 9*d6c23f6fSyx160601 10*d6c23f6fSyx160601 #include "ipf.h" 11*d6c23f6fSyx160601 12*d6c23f6fSyx160601 13*d6c23f6fSyx160601 void printaddr(v, type, ifname, addr, mask) 14*d6c23f6fSyx160601 int v, type; 15*d6c23f6fSyx160601 char *ifname; 16*d6c23f6fSyx160601 u_32_t *addr, *mask; 17*d6c23f6fSyx160601 { 18*d6c23f6fSyx160601 char *suffix; 19*d6c23f6fSyx160601 20*d6c23f6fSyx160601 switch (type) 21*d6c23f6fSyx160601 { 22*d6c23f6fSyx160601 case FRI_BROADCAST : 23*d6c23f6fSyx160601 suffix = "/bcast"; 24*d6c23f6fSyx160601 break; 25*d6c23f6fSyx160601 26*d6c23f6fSyx160601 case FRI_DYNAMIC : 27*d6c23f6fSyx160601 printf("%s", ifname); 28*d6c23f6fSyx160601 printmask(v, mask); 29*d6c23f6fSyx160601 suffix = NULL; 30*d6c23f6fSyx160601 break; 31*d6c23f6fSyx160601 32*d6c23f6fSyx160601 case FRI_NETWORK : 33*d6c23f6fSyx160601 suffix = "/net"; 34*d6c23f6fSyx160601 break; 35*d6c23f6fSyx160601 36*d6c23f6fSyx160601 case FRI_NETMASKED : 37*d6c23f6fSyx160601 suffix = "/netmasked"; 38*d6c23f6fSyx160601 break; 39*d6c23f6fSyx160601 40*d6c23f6fSyx160601 case FRI_PEERADDR : 41*d6c23f6fSyx160601 suffix = "/peer"; 42*d6c23f6fSyx160601 break; 43*d6c23f6fSyx160601 44*d6c23f6fSyx160601 case FRI_LOOKUP : 45*d6c23f6fSyx160601 suffix = NULL; 46*d6c23f6fSyx160601 printlookup((i6addr_t *)addr, (i6addr_t *)mask); 47*d6c23f6fSyx160601 break; 48*d6c23f6fSyx160601 49*d6c23f6fSyx160601 case FRI_NORMAL : 50*d6c23f6fSyx160601 printhostmask(v, addr, mask); 51*d6c23f6fSyx160601 suffix = NULL; 52*d6c23f6fSyx160601 break; 53*d6c23f6fSyx160601 default : 54*d6c23f6fSyx160601 printf("<%d>", type); 55*d6c23f6fSyx160601 printmask(v, mask); 56*d6c23f6fSyx160601 suffix = NULL; 57*d6c23f6fSyx160601 break; 58*d6c23f6fSyx160601 } 59*d6c23f6fSyx160601 60*d6c23f6fSyx160601 if (suffix != NULL) { 61*d6c23f6fSyx160601 printf("%s/%s", ifname, suffix); 62*d6c23f6fSyx160601 } 63*d6c23f6fSyx160601 } 64