res.c (074e084f) | res.c (da14cebe) |
---|---|
1/* 2 * CDDL HEADER START 3 * 4 * The contents of this file are subject to the terms of the 5 * Common Development and Distribution License (the "License"). 6 * You may not use this file except in compliance with the License. 7 * 8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE --- 9 unchanged lines hidden (view full) --- 18 * 19 * CDDL HEADER END 20 */ 21/* 22 * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 23 * Use is subject to license terms. 24 */ 25 | 1/* 2 * CDDL HEADER START 3 * 4 * The contents of this file are subject to the terms of the 5 * Common Development and Distribution License (the "License"). 6 * You may not use this file except in compliance with the License. 7 * 8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE --- 9 unchanged lines hidden (view full) --- 18 * 19 * CDDL HEADER END 20 */ 21/* 22 * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 23 * Use is subject to license terms. 24 */ 25 |
26#pragma ident "%Z%%M% %I% %E% SMI" 27 | |
28#include <stdlib.h> 29#include <stdio.h> 30#include <libintl.h> 31#include <string.h> 32#include <sys/acctctl.h> 33 34#include "utils.h" 35#include "aconf.h" --- 48 unchanged lines hidden (view full) --- 84 { AC_FLOW, AC_FLOW_NPKTS, "npkts" }, 85 { AC_FLOW, AC_FLOW_CTIME, "ctime" }, 86 { AC_FLOW, AC_FLOW_LSEEN, "lseen" }, 87 { AC_FLOW, AC_FLOW_PROJID, "projid" }, 88 { AC_FLOW, AC_FLOW_UID, "uid" }, 89 { AC_FLOW, AC_FLOW_ANAME, "action" }, 90 91 /* | 26#include <stdlib.h> 27#include <stdio.h> 28#include <libintl.h> 29#include <string.h> 30#include <sys/acctctl.h> 31 32#include "utils.h" 33#include "aconf.h" --- 48 unchanged lines hidden (view full) --- 82 { AC_FLOW, AC_FLOW_NPKTS, "npkts" }, 83 { AC_FLOW, AC_FLOW_CTIME, "ctime" }, 84 { AC_FLOW, AC_FLOW_LSEEN, "lseen" }, 85 { AC_FLOW, AC_FLOW_PROJID, "projid" }, 86 { AC_FLOW, AC_FLOW_UID, "uid" }, 87 { AC_FLOW, AC_FLOW_ANAME, "action" }, 88 89 /* |
90 * Net accounting resources 91 */ 92 93 { AC_NET, AC_NET_NAME, "name" }, 94 { AC_NET, AC_NET_EHOST, "ehost" }, 95 { AC_NET, AC_NET_EDEST, "edest" }, 96 { AC_NET, AC_NET_VLAN_TPID, "vlan_pid" }, 97 { AC_NET, AC_NET_VLAN_TCI, "vlan_tci" }, 98 { AC_NET, AC_NET_SAP, "sap" }, 99 { AC_NET, AC_NET_PRIORITY, "priority" }, 100 { AC_NET, AC_NET_BWLIMIT, "bwlimit" }, 101 { AC_NET, AC_NET_DEVNAME, "devname" }, 102 { AC_NET, AC_NET_SADDR, "src_ip" }, 103 { AC_NET, AC_NET_DADDR, "dst_ip" }, 104 { AC_NET, AC_NET_SPORT, "src_port" }, 105 { AC_NET, AC_NET_DPORT, "dst_port" }, 106 { AC_NET, AC_NET_PROTOCOL, "protocol" }, 107 { AC_NET, AC_NET_DSFIELD, "dsfield" }, 108 { AC_NET, AC_NET_CURTIME, "curtime" }, 109 { AC_NET, AC_NET_IBYTES, "ibytes" }, 110 { AC_NET, AC_NET_OBYTES, "obytes" }, 111 { AC_NET, AC_NET_IPKTS, "ipkts" }, 112 { AC_NET, AC_NET_OPKTS, "opkts" }, 113 { AC_NET, AC_NET_IERRPKTS, "ierrpkts" }, 114 { AC_NET, AC_NET_OERRPKTS, "oerrpkts" }, 115 116 /* |
|
92 * These are included for compatibility with old acctadm that 93 * didn't have resource groups for individual accounting types. 94 * It was possible to have resource "pid" enabled for task 95 * accounting even though we couldn't actually track it. 96 */ 97 { AC_TASK, AC_NONE, "pid" }, 98 { AC_TASK, AC_NONE, "uid" }, 99 { AC_TASK, AC_NONE, "gid" }, --- 29 unchanged lines hidden (view full) --- 129 { AC_FLOW_SADDR, AC_FLOW_DADDR, AC_FLOW_SPORT, AC_FLOW_DPORT, 130 AC_FLOW_PROTOCOL, AC_FLOW_DSFIELD, AC_FLOW_NBYTES, 131 AC_FLOW_NPKTS, AC_FLOW_ANAME, AC_FLOW_CTIME, AC_FLOW_LSEEN, 132 AC_FLOW_PROJID, AC_FLOW_UID, AC_NONE } }, 133 { AC_FLOW, "basic", 134 { AC_FLOW_SADDR, AC_FLOW_DADDR, AC_FLOW_SPORT, AC_FLOW_DPORT, 135 AC_FLOW_PROTOCOL, AC_FLOW_NBYTES, AC_FLOW_NPKTS, AC_FLOW_ANAME, 136 AC_NONE } }, | 117 * These are included for compatibility with old acctadm that 118 * didn't have resource groups for individual accounting types. 119 * It was possible to have resource "pid" enabled for task 120 * accounting even though we couldn't actually track it. 121 */ 122 { AC_TASK, AC_NONE, "pid" }, 123 { AC_TASK, AC_NONE, "uid" }, 124 { AC_TASK, AC_NONE, "gid" }, --- 29 unchanged lines hidden (view full) --- 154 { AC_FLOW_SADDR, AC_FLOW_DADDR, AC_FLOW_SPORT, AC_FLOW_DPORT, 155 AC_FLOW_PROTOCOL, AC_FLOW_DSFIELD, AC_FLOW_NBYTES, 156 AC_FLOW_NPKTS, AC_FLOW_ANAME, AC_FLOW_CTIME, AC_FLOW_LSEEN, 157 AC_FLOW_PROJID, AC_FLOW_UID, AC_NONE } }, 158 { AC_FLOW, "basic", 159 { AC_FLOW_SADDR, AC_FLOW_DADDR, AC_FLOW_SPORT, AC_FLOW_DPORT, 160 AC_FLOW_PROTOCOL, AC_FLOW_NBYTES, AC_FLOW_NPKTS, AC_FLOW_ANAME, 161 AC_NONE } }, |
162 { AC_NET, "extended", 163 { AC_NET_NAME, AC_NET_EHOST, AC_NET_EDEST, AC_NET_VLAN_TPID, 164 AC_NET_VLAN_TCI, AC_NET_SAP, AC_NET_PRIORITY, 165 AC_NET_BWLIMIT, AC_NET_DEVNAME, AC_NET_SADDR, AC_NET_DADDR, 166 AC_NET_SPORT, AC_NET_DPORT, AC_NET_PROTOCOL, AC_NET_DSFIELD, 167 AC_NET_CURTIME, AC_NET_IBYTES, AC_NET_OBYTES, AC_NET_IPKTS, 168 AC_NET_OPKTS, AC_NET_IERRPKTS, AC_NET_OERRPKTS, AC_NONE } }, 169 { AC_NET, "basic", 170 { AC_NET_NAME, AC_NET_DEVNAME, AC_NET_EHOST, AC_NET_EDEST, 171 AC_NET_VLAN_TPID, AC_NET_VLAN_TCI, AC_NET_SAP, 172 AC_NET_PRIORITY, AC_NET_BWLIMIT, AC_NET_CURTIME, AC_NET_IBYTES, 173 AC_NET_OBYTES, AC_NET_IPKTS, AC_NET_OPKTS, AC_NET_IERRPKTS, 174 AC_NET_OERRPKTS, AC_NONE } }, |
|
137 { AC_NONE, NULL, 138 { AC_NONE } } 139}; 140 141/* 142 * this function returns the id of the named resource 143 */ 144static int --- 52 unchanged lines hidden (view full) --- 197/* 198 * this function prints the list of resource groups and their members 199 */ 200void 201printgroups(int type) 202{ 203 int header = 0; 204 | 175 { AC_NONE, NULL, 176 { AC_NONE } } 177}; 178 179/* 180 * this function returns the id of the named resource 181 */ 182static int --- 52 unchanged lines hidden (view full) --- 235/* 236 * this function prints the list of resource groups and their members 237 */ 238void 239printgroups(int type) 240{ 241 int header = 0; 242 |
205 if ((type & AC_PROC) && (type & AC_TASK) && (type & AC_FLOW)) | 243 if ((type & AC_PROC) && (type & AC_TASK) && (type & AC_FLOW) && 244 (type & AC_NET)) { |
206 header = 1; | 245 header = 1; |
207 | 246 } |
208 if (type & AC_PROC) { 209 if (header == 1) 210 (void) printf("process:\n"); 211 printgroup(AC_PROC); 212 } 213 if (type & AC_TASK) { 214 if (header == 1) 215 (void) printf("task:\n"); 216 printgroup(AC_TASK); 217 } 218 if (type & AC_FLOW) { 219 if (header == 1) 220 (void) printf("flow:\n"); 221 printgroup(AC_FLOW); 222 } | 247 if (type & AC_PROC) { 248 if (header == 1) 249 (void) printf("process:\n"); 250 printgroup(AC_PROC); 251 } 252 if (type & AC_TASK) { 253 if (header == 1) 254 (void) printf("task:\n"); 255 printgroup(AC_TASK); 256 } 257 if (type & AC_FLOW) { 258 if (header == 1) 259 (void) printf("flow:\n"); 260 printgroup(AC_FLOW); 261 } |
262 if (type & AC_NET) { 263 if (header == 1) 264 (void) printf("net:\n"); 265 printgroup(AC_NET); 266 } |
|
223} 224 225/* 226 * this function sets the state of the particular resource 227 */ 228static void 229resset(ac_res_t *res, int id, int state) 230{ --- 124 unchanged lines hidden --- | 267} 268 269/* 270 * this function sets the state of the particular resource 271 */ 272static void 273resset(ac_res_t *res, int id, int state) 274{ --- 124 unchanged lines hidden --- |