Print this page
11037 SMB File access audit logging (reserve IDs)
Split |
Close |
Expand all |
Collapse all |
--- old/usr/src/cmd/praudit/toktable.h
+++ new/usr/src/cmd/praudit/toktable.h
1 1 /*
2 2 * CDDL HEADER START
3 3 *
4 4 * The contents of this file are subject to the terms of the
5 5 * Common Development and Distribution License (the "License").
6 6 * You may not use this file except in compliance with the License.
7 7 *
8 8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 9 * or http://www.opensolaris.org/os/licensing.
10 10 * See the License for the specific language governing permissions
11 11 * and limitations under the License.
12 12 *
13 13 * When distributing Covered Code, include this CDDL HEADER in each
↓ open down ↓ |
13 lines elided |
↑ open up ↑ |
14 14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 15 * If applicable, add the following below this CDDL HEADER, with the
16 16 * fields enclosed by brackets "[]" replaced with your own identifying
17 17 * information: Portions Copyright [yyyy] [name of copyright owner]
18 18 *
19 19 * CDDL HEADER END
20 20 */
21 21 /*
22 22 * Copyright 2010 Sun Microsystems, Inc. All rights reserved.
23 23 * Use is subject to license terms.
24 + *
25 + * Copyright 2018 Nexenta Systems, Inc. All rights reserved.
24 26 */
25 27
26 28 #ifndef _TOKTABLE_H
27 29 #define _TOKTABLE_H
28 30
29 31 #ifdef __cplusplus
30 32 extern "C" {
31 33 #endif
32 34
33 35 /*
34 36 * Solaris Audit Token Table.
35 37 */
36 38
37 39 typedef struct token_desc {
38 40 char *t_name; /* name of the token */
39 41 char *t_tagname; /* tag name */
40 42 int (*func)(); /* token processing function */
41 43 short t_type; /* token or tag type */
42 44 } token_desc_t;
43 45
44 46
45 47 #define NOFUNC (int (*)())0
46 48
47 49 #define MAXTOKEN 0xff
48 50
49 51 extern token_desc_t tokentable[];
50 52
51 53 /*
52 54 * Tag types -
53 55 *
54 56 * attribute: an attribute:
55 57 * xxx="..."
56 58 *
57 59 * element: a simple element:
58 60 * <xxx> ... </xxx>
59 61 *
60 62 * enclosed: a self contained element, optionally with attributes:
61 63 * <xxx a="" b="" ... />
62 64 *
63 65 * extended: an element with attributes:
64 66 * <xxx a="" b="" ...> ... </xxx>
65 67 */
66 68 #define T_ATTRIBUTE 1 /* attribute */
67 69 #define T_ELEMENT 2 /* element */
68 70 #define T_ENCLOSED 3 /* enclosed element */
69 71 #define T_EXTENDED 4 /* extended element */
70 72 #define T_UNKNOWN 99 /* huh... */
71 73
72 74 /*
73 75 * Define the kinds of tags
74 76 */
75 77 enum tagnum_t { TAG_INVALID = MAXTOKEN,
76 78 TAG_UID,
77 79 TAG_GID,
78 80 TAG_RUID,
79 81 TAG_RGID,
80 82 TAG_AUID,
81 83 TAG_PID,
82 84 TAG_SID,
83 85 TAG_TID32,
84 86 TAG_TID64,
85 87 TAG_TID32_EX,
86 88 TAG_TID64_EX,
87 89 TAG_EVMOD,
88 90 TAG_TOKVERS,
89 91 TAG_EVTYPE,
90 92 TAG_ISO,
91 93 TAG_ERRVAL,
92 94 TAG_RETVAL,
93 95 TAG_SETTYPE,
94 96 TAG_GROUPID,
95 97 TAG_XID,
96 98 TAG_XCUID,
97 99 TAG_XSELTEXT,
98 100 TAG_XSELTYPE,
99 101 TAG_XSELDATA,
100 102 TAG_ARGNUM,
101 103 TAG_ARGVAL32,
102 104 TAG_ARGVAL64,
103 105 TAG_ARGDESC,
104 106 TAG_MODE,
105 107 TAG_FSID,
106 108 TAG_NODEID32,
107 109 TAG_NODEID64,
108 110 TAG_DEVICE32,
109 111 TAG_DEVICE64,
110 112 TAG_SEQNUM, /* with sequence token */
111 113 TAG_ARGV, /* with cmd token */
112 114 TAG_ARGE, /* with cmd token */
113 115 TAG_ARG, /* with exec_args token */
114 116 TAG_ENV, /* with exec_env token */
115 117 TAG_XAT, /* with attr_path token */
116 118 TAG_RESULT, /* with use_of_privilege token */
117 119 TAG_CUID, /* with IPC_perm token */
118 120 TAG_CGID, /* with IPC_perm token */
119 121 TAG_SEQ, /* with IPC_perm token */
120 122 TAG_KEY, /* with IPC_perm token */
121 123 TAG_IPVERS, /* with ip token */
122 124 TAG_IPSERV, /* with ip token */
123 125 TAG_IPLEN, /* with ip token */
124 126 TAG_IPID, /* with ip token */
125 127 TAG_IPOFFS, /* with ip token */
126 128 TAG_IPTTL, /* with ip token */
127 129 TAG_IPPROTO, /* with ip token */
128 130 TAG_IPCKSUM, /* with ip token */
129 131 TAG_IPSRC, /* with ip token */
130 132 TAG_IPDEST, /* with ip token */
131 133 TAG_ACLTYPE, /* with acl token */
132 134 TAG_ACLVAL, /* with acl token */
133 135 TAG_SOCKTYPE, /* with socket token */
134 136 TAG_SOCKPORT, /* with socket token */
135 137 TAG_SOCKADDR, /* with socket token */
136 138 TAG_SOCKEXDOM, /* with socket_ex token */
137 139 TAG_SOCKEXTYPE, /* with socket_ex token */
138 140 TAG_SOCKEXLPORT, /* with socket_ex token */
139 141 TAG_SOCKEXLADDR, /* with socket_ex token */
140 142 TAG_SOCKEXFPORT, /* with socket_ex token */
141 143 TAG_SOCKEXFADDR, /* with socket_ex token */
142 144 TAG_IPCTYPE, /* with IPC token */
143 145 TAG_IPCID, /* with IPC token */
144 146 TAG_ARBPRINT, /* with arbitrary (data) token */
145 147 TAG_ARBTYPE, /* with arbitrary (data) token */
146 148 TAG_ARBCOUNT, /* with arbitrary (data) token */
147 149 TAG_HOSTID, /* with extended header token */
148 150 TAG_ZONENAME, /* with zonename token */
↓ open down ↓ |
115 lines elided |
↑ open up ↑ |
149 151 TAG_TID_TYPE, /* with tid token */
150 152 TAG_IP, /* with tid token, type=ip */
151 153 TAG_IP_LOCAL, /* with tid token, type=ip */
152 154 TAG_IP_REMOTE, /* with tid token, type=ip */
153 155 TAG_IP_ADR, /* with tid token, type=ip */
154 156 TAG_ACEMASK, /* with ace token */
155 157 TAG_ACEFLAGS, /* with ace token */
156 158 TAG_ACETYPE, /* with ace token */
157 159 TAG_ACEID, /* with ace token */
158 160 TAG_USERNAME, /* with user token */
161 + TAG_WSID, /* with wsid token */
159 162 MAXTAG
160 163 };
161 164
162 165
163 166 /*
164 167 * These tokens are the same for all versions of Solaris
165 168 */
166 169
167 170 /*
168 171 * Control tokens
169 172 */
170 173
171 174 extern int file_token();
172 175 extern int trailer_token();
173 176 extern int header_token();
174 177 extern int header32_ex_token();
175 178
176 179 /*
177 180 * Data tokens
178 181 */
179 182
180 183 extern int arbitrary_data_token();
181 184 extern int fmri_token();
182 185 extern int s5_IPC_token();
183 186 extern int path_token();
184 187 extern int path_attr_token();
185 188 extern int subject32_token();
186 189 extern int process32_token();
187 190 extern int return_value32_token();
188 191 extern int text_token();
189 192 extern int opaque_token();
190 193 extern int ip_addr_token();
191 194 extern int ip_token();
192 195 extern int iport_token();
193 196 extern int argument32_token();
194 197 extern int socket_token();
195 198 extern int sequence_token();
196 199
197 200 /*
198 201 * Modifier tokens
199 202 */
200 203
201 204 extern int acl_token();
202 205 extern int ace_token();
203 206 extern int attribute_token();
204 207 extern int s5_IPC_perm_token();
205 208 extern int group_token();
206 209 extern int label_token();
207 210 extern int privilege_token();
208 211 extern int useofpriv_token();
209 212 extern int liaison_token();
210 213 extern int newgroup_token();
211 214 extern int exec_args_token();
212 215 extern int exec_env_token();
213 216 extern int attribute32_token();
214 217 extern int useofauth_token();
215 218 extern int user_token();
216 219 extern int zonename_token();
217 220 extern int secflags_token();
218 221
219 222 /*
220 223 * X windows tokens
221 224 */
222 225
223 226 extern int xatom_token();
224 227 extern int xselect_token();
225 228 extern int xcolormap_token();
226 229 extern int xcursor_token();
227 230 extern int xfont_token();
228 231 extern int xgc_token();
229 232 extern int xpixmap_token();
230 233 extern int xproperty_token();
231 234 extern int xwindow_token();
232 235 extern int xclient_token();
233 236
234 237 /*
235 238 * Command tokens
236 239 */
237 240
238 241 extern int cmd_token();
239 242 extern int exit_token();
240 243
241 244 /*
242 245 * Miscellaneous tokens
243 246 */
244 247
245 248 extern int host_token();
246 249
247 250 /*
248 251 * Solaris64 tokens
249 252 */
250 253
251 254 extern int argument64_token();
252 255 extern int return_value64_token();
253 256 extern int attribute64_token();
254 257 extern int header64_token();
255 258 extern int subject64_token();
256 259 extern int process64_token();
257 260 extern int file64_token();
258 261
259 262 /*
260 263 * Extended network address tokens
261 264 */
262 265
263 266 extern int header64_ex_token();
264 267 extern int subject32_ex_token();
265 268 extern int process32_ex_token();
266 269 extern int subject64_ex_token();
267 270 extern int process64_ex_token();
268 271 extern int ip_addr_ex_token();
269 272 extern int socket_ex_token();
270 273 extern int tid_token();
271 274
272 275 #ifdef __cplusplus
273 276 }
274 277 #endif
275 278
276 279 #endif /* _TOKTABLE_H */
↓ open down ↓ |
108 lines elided |
↑ open up ↑ |
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX