xref: /illumos-gate/usr/src/cmd/ipf/lib/printpooldata.c (revision f3ac678143127d4c6c1793fadabb5ded04e127b6)
1*f3ac6781SToomas Soome /*
2*f3ac6781SToomas Soome  * Copyright (C) 2002 by Darren Reed.
3*f3ac6781SToomas Soome  *
4*f3ac6781SToomas Soome  * See the IPFILTER.LICENCE file for details on licencing.
5*f3ac6781SToomas Soome  *
6*f3ac6781SToomas Soome  * Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
7*f3ac6781SToomas Soome  * Use is subject to license terms.
8*f3ac6781SToomas Soome  */
9*f3ac6781SToomas Soome 
10*f3ac6781SToomas Soome #include "ipf.h"
11*f3ac6781SToomas Soome 
12*f3ac6781SToomas Soome #define	PRINTF	(void)printf
13*f3ac6781SToomas Soome #define	FPRINTF	(void)fprintf
14*f3ac6781SToomas Soome 
printpooldata(pool,opts)15*f3ac6781SToomas Soome void printpooldata(pool, opts)
16*f3ac6781SToomas Soome ip_pool_t *pool;
17*f3ac6781SToomas Soome int opts;
18*f3ac6781SToomas Soome {
19*f3ac6781SToomas Soome 
20*f3ac6781SToomas Soome 	if ((opts & OPT_DEBUG) == 0) {
21*f3ac6781SToomas Soome 		if ((pool->ipo_flags & IPOOL_ANON) != 0)
22*f3ac6781SToomas Soome 			PRINTF("# 'anonymous' tree %s\n", pool->ipo_name);
23*f3ac6781SToomas Soome 		PRINTF("table role = ");
24*f3ac6781SToomas Soome 	} else {
25*f3ac6781SToomas Soome 		PRINTF("Name: %s", pool->ipo_name);
26*f3ac6781SToomas Soome 		if ((pool->ipo_flags & IPOOL_ANON) == IPOOL_ANON)
27*f3ac6781SToomas Soome 			PRINTF("(anon)");
28*f3ac6781SToomas Soome 		putchar(' ');
29*f3ac6781SToomas Soome 		PRINTF("Role: ");
30*f3ac6781SToomas Soome 	}
31*f3ac6781SToomas Soome 
32*f3ac6781SToomas Soome 	switch (pool->ipo_unit)
33*f3ac6781SToomas Soome 	{
34*f3ac6781SToomas Soome 	case IPL_LOGIPF :
35*f3ac6781SToomas Soome 		PRINTF("ipf");
36*f3ac6781SToomas Soome 		break;
37*f3ac6781SToomas Soome 	case IPL_LOGNAT :
38*f3ac6781SToomas Soome 		PRINTF("nat");
39*f3ac6781SToomas Soome 		break;
40*f3ac6781SToomas Soome 	case IPL_LOGSTATE :
41*f3ac6781SToomas Soome 		PRINTF("state");
42*f3ac6781SToomas Soome 		break;
43*f3ac6781SToomas Soome 	case IPL_LOGAUTH :
44*f3ac6781SToomas Soome 		PRINTF("auth");
45*f3ac6781SToomas Soome 		break;
46*f3ac6781SToomas Soome 	case IPL_LOGSYNC :
47*f3ac6781SToomas Soome 		PRINTF("sync");
48*f3ac6781SToomas Soome 		break;
49*f3ac6781SToomas Soome 	case IPL_LOGSCAN :
50*f3ac6781SToomas Soome 		PRINTF("scan");
51*f3ac6781SToomas Soome 		break;
52*f3ac6781SToomas Soome 	case IPL_LOGLOOKUP :
53*f3ac6781SToomas Soome 		PRINTF("lookup");
54*f3ac6781SToomas Soome 		break;
55*f3ac6781SToomas Soome 	case IPL_LOGCOUNT :
56*f3ac6781SToomas Soome 		PRINTF("count");
57*f3ac6781SToomas Soome 		break;
58*f3ac6781SToomas Soome 	default :
59*f3ac6781SToomas Soome 		PRINTF("unknown(%d)", pool->ipo_unit);
60*f3ac6781SToomas Soome 	}
61*f3ac6781SToomas Soome 
62*f3ac6781SToomas Soome 	if ((opts & OPT_DEBUG) == 0) {
63*f3ac6781SToomas Soome 		PRINTF(" type = tree number = %s\n", pool->ipo_name);
64*f3ac6781SToomas Soome 	} else {
65*f3ac6781SToomas Soome 		putchar(' ');
66*f3ac6781SToomas Soome 
67*f3ac6781SToomas Soome 		PRINTF("\tReferences: %d\tHits: %lu\n", pool->ipo_ref,
68*f3ac6781SToomas Soome 			pool->ipo_hits);
69*f3ac6781SToomas Soome 		PRINTF("\tNodes Starting at %p\n", pool->ipo_list);
70*f3ac6781SToomas Soome 	}
71*f3ac6781SToomas Soome }
72