Print this page
7029 want per-process exploit mitigation features (secflags)
7030 want basic address space layout randomization (aslr)
7031 noexec_user_stack should be a secflag
7032 want a means to forbid mappings around NULL.
Split |
Close |
Expand all |
Collapse all |
--- old/usr/src/lib/auditd_plugins/syslog/systoken.h
+++ new/usr/src/lib/auditd_plugins/syslog/systoken.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
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 24 */
25 25
26 26 #ifndef _SYSTOKEN_H
27 27 #define _SYSTOKEN_H
28 28
29 29 #ifdef __cplusplus
30 30 extern "C" {
31 31 #endif
32 32
33 33 #include "sysplugin.h"
34 34 #include <bsm/adt.h>
35 35
36 36 /*
37 37 * parse_context -- doc and cur are for XML input, chunk and
38 38 * remaining for "plain text input, i.e., the traditiona
39 39 * output from praudit
40 40 */
41 41
42 42 struct parse_context {
43 43 adr_t adr; /* input buffer pointers */
44 44 uint64_t id; /* message sequence number */
45 45 tosyslog_t out; /* output data */
46 46 };
47 47 typedef struct parse_context parse_context_t;
48 48
49 49 #define AU_TEXT_NAME " text "
50 50
51 51 #ifdef useless
52 52 /*
53 53 * the following *_ar_token() functions parallel the *_token()(
54 54 * functions defined in praudit/toktable.h
55 55 */
56 56
57 57 /*
58 58 * These tokens are the same for all versions of Solaris
59 59 */
60 60
61 61 /*
62 62 * Control tokens
63 63 */
64 64
65 65 extern void file_token(adr_t *, uint64_t, uint64_t);
66 66 extern void trailer_token(adr_t *, parse_context_t *);
67 67 extern void header_token(adr_t *, parse_context_t *);
68 68 extern void header32_ex_token(adr_t *, parse_context_t *);
69 69
70 70 /*
71 71 * Data tokens
72 72 */
73 73
74 74 extern void arbitrary_data_token(adr_t *, parse_context_t *);
75 75 extern void fmri_token(adr_t *, parse_context_t *);
76 76 extern void s5_IPC_token(adr_t *, parse_context_t *);
77 77 extern void path_token(adr_t *, parse_context_t *);
78 78 extern void subject32_token();
79 79 extern void process32_token();
80 80 extern void return_value32_token();
81 81 extern void text_token(adr_t *, parse_context_t *);
82 82 extern void opaque_token(adr_t *, parse_context_t *);
83 83 extern void ip_addr_token();
84 84 extern void ip_token(adr_t *, parse_context_t *);
85 85 extern void iport_token(adr_t *, parse_context_t *);
86 86 extern void argument32_token();
87 87 extern void socket_token();
88 88 extern void sequence_token(adr_t *, parse_context_t *);
89 89
90 90 /*
↓ open down ↓ |
90 lines elided |
↑ open up ↑ |
91 91 * Modifier tokens
92 92 */
93 93
94 94 extern void acl_token(adr_t *, parse_context_t *);
95 95 extern void attribute_token(adr_t *, parse_context_t *);
96 96 extern void s5_IPC_perm_token(adr_t *, parse_context_t *);
97 97 extern void group_token();
98 98 extern void label_token(adr_t *, parse_context_t *);
99 99 extern void privilege_token(adr_t *, parse_context_t *);
100 100 extern void useofpriv_token(adr_t *, parse_context_t *);
101 +extern void secflags_token(adr_t *, parse_context_t *);
101 102 extern void zonename_token(adr_t *, parse_context_t *);
102 103 extern void liaison_token(adr_t *, parse_context_t *);
103 104 extern void newgroup_token(adr_t *, parse_context_t *);
104 105 extern void exec_args_token(adr_t *, parse_context_t *);
105 106 extern void exec_env_token(adr_t *, parse_context_t *);
106 107 extern void attribute32_token(adr_t *, parse_context_t *);
107 108 extern void useofauth_token(adr_t *, parse_context_t *);
108 109 extern void user_token(adr_t *, parse_context_t *);
109 110
110 111 /*
111 112 * X windows tokens
112 113 */
113 114
114 115 extern void xatom_token(adr_t *, parse_context_t *);
115 116 extern void xselect_token(adr_t *, parse_context_t *);
116 117 extern void xcolormap_token(adr_t *, parse_context_t *);
117 118 extern void xcursor_token(adr_t *, parse_context_t *);
118 119 extern void xfont_token(adr_t *, parse_context_t *);
119 120 extern void xgc_token(adr_t *, parse_context_t *);
120 121 extern void xpixmap_token(adr_t *, parse_context_t *);
121 122 extern void xproperty_token(adr_t *, parse_context_t *);
122 123 extern void xwindow_token(adr_t *, parse_context_t *);
123 124 extern void xclient_token(adr_t *, parse_context_t *);
124 125
125 126 /*
126 127 * Command tokens
127 128 */
128 129
129 130 extern void cmd_token(adr_t *, parse_context_t *);
130 131 extern void exit_token(adr_t *, parse_context_t *);
131 132
132 133 /*
133 134 * Miscellaneous tokens
134 135 */
135 136
136 137 extern void host_token(adr_t *, parse_context_t *);
137 138
138 139 /*
139 140 * Solaris64 tokens
140 141 */
141 142
142 143 extern void argument64_token(adr_t *, parse_context_t *);
143 144 extern void return64_token(adr_t *, parse_context_t *);
144 145 extern void attribute64_token(adr_t *, parse_context_t *);
145 146 extern void header64_token(adr_t *, parse_context_t *);
146 147 extern void subject64_token(adr_t *, parse_context_t *);
147 148 extern void process64_token(adr_t *, parse_context_t *);
148 149 extern void file64_token(adr_t *, parse_context_t *);
149 150
150 151 /*
151 152 * Extended network address tokens
152 153 */
153 154
154 155 extern void header64_ex_token();
155 156 extern void subject32_ex_token();
156 157 extern void process32_ex_token();
157 158 extern void subject64_ex_token(adr_t *, parse_context_t *);
158 159 extern void process64_ex_token(adr_t *, parse_context_t *);
159 160 extern void ip_addr_ex_token(adr_t *, parse_context_t *);
160 161 extern void socket_ex_token(adr_t *, parse_context_t *);
161 162 extern void tid_token(adr_t *, parse_context_t *);
162 163 #endif
163 164
164 165 #ifdef __cplusplus
165 166 }
166 167 #endif
167 168
168 169 #endif /* _SYSTOKEN_H */
↓ open down ↓ |
58 lines elided |
↑ open up ↑ |
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX