1*6635Sab196087 /*
2*6635Sab196087 * CDDL HEADER START
3*6635Sab196087 *
4*6635Sab196087 * The contents of this file are subject to the terms of the
5*6635Sab196087 * Common Development and Distribution License (the "License").
6*6635Sab196087 * You may not use this file except in compliance with the License.
7*6635Sab196087 *
8*6635Sab196087 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9*6635Sab196087 * or http://www.opensolaris.org/os/licensing.
10*6635Sab196087 * See the License for the specific language governing permissions
11*6635Sab196087 * and limitations under the License.
12*6635Sab196087 *
13*6635Sab196087 * When distributing Covered Code, include this CDDL HEADER in each
14*6635Sab196087 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15*6635Sab196087 * If applicable, add the following below this CDDL HEADER, with the
16*6635Sab196087 * fields enclosed by brackets "[]" replaced with your own identifying
17*6635Sab196087 * information: Portions Copyright [yyyy] [name of copyright owner]
18*6635Sab196087 *
19*6635Sab196087 * CDDL HEADER END
20*6635Sab196087 */
21*6635Sab196087
22*6635Sab196087 /*
23*6635Sab196087 * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
24*6635Sab196087 * Use is subject to license terms.
25*6635Sab196087 */
26*6635Sab196087 #pragma ident "%Z%%M% %I% %E% SMI"
27*6635Sab196087
28*6635Sab196087 #include <struct_layout.h>
29*6635Sab196087
30*6635Sab196087
31*6635Sab196087 static const sl_auxv_layout_t auxv_layout = {
32*6635Sab196087 { 0, 8, 0, 0 }, /* sizeof (auxv_t) */
33*6635Sab196087 { 0, 4, 0, 1 }, /* a_type */
34*6635Sab196087 { 4, 4, 0, 1 }, /* a_un.a_val */
35*6635Sab196087 { 4, 4, 0, 0 }, /* a_un.a_ptr */
36*6635Sab196087 { 4, 4, 0, 0 }, /* a_un.a_fcn */
37*6635Sab196087 };
38*6635Sab196087
39*6635Sab196087
40*6635Sab196087 static const sl_prgregset_layout_t prgregset_layout = {
41*6635Sab196087 { 0, 76, 0, 0 }, /* sizeof (prgregset_t) */
42*6635Sab196087 { 0, 4, 19, 0 }, /* elt0 */
43*6635Sab196087 };
44*6635Sab196087
45*6635Sab196087
46*6635Sab196087 static const sl_lwpstatus_layout_t lwpstatus_layout = {
47*6635Sab196087 { 0, 800, 0, 0 }, /* sizeof (lwpstatus_t) */
48*6635Sab196087 { 0, 4, 0, 0 }, /* pr_flags */
49*6635Sab196087 { 4, 4, 0, 0 }, /* pr_lwpid */
50*6635Sab196087 { 8, 2, 0, 0 }, /* pr_why */
51*6635Sab196087 { 10, 2, 0, 0 }, /* pr_what */
52*6635Sab196087 { 12, 2, 0, 0 }, /* pr_cursig */
53*6635Sab196087 { 16, 128, 0, 0 }, /* pr_info */
54*6635Sab196087 { 144, 16, 0, 0 }, /* pr_lwppend */
55*6635Sab196087 { 160, 16, 0, 0 }, /* pr_lwphold */
56*6635Sab196087 { 176, 32, 0, 0 }, /* pr_action */
57*6635Sab196087 { 208, 12, 0, 0 }, /* pr_altstack */
58*6635Sab196087 { 220, 4, 0, 0 }, /* pr_oldcontext */
59*6635Sab196087 { 224, 2, 0, 0 }, /* pr_syscall */
60*6635Sab196087 { 226, 2, 0, 0 }, /* pr_nsysarg */
61*6635Sab196087 { 228, 4, 0, 0 }, /* pr_errno */
62*6635Sab196087 { 232, 4, 8, 0 }, /* pr_sysarg[] */
63*6635Sab196087 { 264, 4, 0, 0 }, /* pr_rval1 */
64*6635Sab196087 { 268, 4, 0, 0 }, /* pr_rval2 */
65*6635Sab196087 { 272, 1, 8, 0 }, /* pr_clname[] */
66*6635Sab196087 { 280, 8, 0, 0 }, /* pr_tstamp */
67*6635Sab196087 { 288, 8, 0, 0 }, /* pr_utime */
68*6635Sab196087 { 296, 8, 0, 0 }, /* pr_stime */
69*6635Sab196087 { 332, 4, 0, 0 }, /* pr_errpriv */
70*6635Sab196087 { 336, 4, 0, 0 }, /* pr_ustack */
71*6635Sab196087 { 340, 4, 0, 0 }, /* pr_instr */
72*6635Sab196087 { 344, 76, 0, 0 }, /* pr_reg */
73*6635Sab196087 { 420, 380, 0, 0 }, /* pr_fpreg */
74*6635Sab196087 };
75*6635Sab196087
76*6635Sab196087
77*6635Sab196087 static const sl_pstatus_layout_t pstatus_layout = {
78*6635Sab196087 { 0, 1136, 0, 0 }, /* sizeof (pstatus_t) */
79*6635Sab196087 { 0, 4, 0, 1 }, /* pr_flags */
80*6635Sab196087 { 4, 4, 0, 1 }, /* pr_nlwp */
81*6635Sab196087 { 8, 4, 0, 0 }, /* pr_pid */
82*6635Sab196087 { 12, 4, 0, 0 }, /* pr_ppid */
83*6635Sab196087 { 16, 4, 0, 0 }, /* pr_pgid */
84*6635Sab196087 { 20, 4, 0, 0 }, /* pr_sid */
85*6635Sab196087 { 24, 4, 0, 1 }, /* pr_aslwpid */
86*6635Sab196087 { 28, 4, 0, 1 }, /* pr_agentid */
87*6635Sab196087 { 32, 16, 0, 0 }, /* pr_sigpend */
88*6635Sab196087 { 48, 4, 0, 0 }, /* pr_brkbase */
89*6635Sab196087 { 52, 4, 0, 0 }, /* pr_brksize */
90*6635Sab196087 { 56, 4, 0, 0 }, /* pr_stkbase */
91*6635Sab196087 { 60, 4, 0, 0 }, /* pr_stksize */
92*6635Sab196087 { 64, 8, 0, 0 }, /* pr_utime */
93*6635Sab196087 { 72, 8, 0, 0 }, /* pr_stime */
94*6635Sab196087 { 80, 8, 0, 0 }, /* pr_cutime */
95*6635Sab196087 { 88, 8, 0, 0 }, /* pr_cstime */
96*6635Sab196087 { 96, 16, 0, 0 }, /* pr_sigtrace */
97*6635Sab196087 { 112, 16, 0, 0 }, /* pr_flttrace */
98*6635Sab196087 { 128, 64, 0, 0 }, /* pr_sysentry */
99*6635Sab196087 { 192, 64, 0, 0 }, /* pr_sysexit */
100*6635Sab196087 { 256, 1, 0, 0 }, /* pr_dmodel */
101*6635Sab196087 { 260, 4, 0, 1 }, /* pr_taskid */
102*6635Sab196087 { 264, 4, 0, 1 }, /* pr_projid */
103*6635Sab196087 { 268, 4, 0, 1 }, /* pr_nzomb */
104*6635Sab196087 { 272, 4, 0, 1 }, /* pr_zoneid */
105*6635Sab196087 { 336, 800, 0, 0 }, /* pr_lwp */
106*6635Sab196087 };
107*6635Sab196087
108*6635Sab196087
109*6635Sab196087 static const sl_prstatus_layout_t prstatus_layout = {
110*6635Sab196087 { 0, 432, 0, 0 }, /* sizeof (prstatus_t) */
111*6635Sab196087 { 0, 4, 0, 1 }, /* pr_flags */
112*6635Sab196087 { 4, 2, 0, 1 }, /* pr_why */
113*6635Sab196087 { 6, 2, 0, 1 }, /* pr_what */
114*6635Sab196087 { 8, 128, 0, 0 }, /* pr_info */
115*6635Sab196087 { 136, 2, 0, 1 }, /* pr_cursig */
116*6635Sab196087 { 138, 2, 0, 0 }, /* pr_nlwp */
117*6635Sab196087 { 140, 16, 0, 0 }, /* pr_sigpend */
118*6635Sab196087 { 156, 16, 0, 0 }, /* pr_sighold */
119*6635Sab196087 { 172, 12, 0, 0 }, /* pr_altstack */
120*6635Sab196087 { 184, 32, 0, 0 }, /* pr_action */
121*6635Sab196087 { 216, 4, 0, 0 }, /* pr_pid */
122*6635Sab196087 { 220, 4, 0, 0 }, /* pr_ppid */
123*6635Sab196087 { 224, 4, 0, 0 }, /* pr_pgrp */
124*6635Sab196087 { 228, 4, 0, 0 }, /* pr_sid */
125*6635Sab196087 { 232, 8, 0, 0 }, /* pr_utime */
126*6635Sab196087 { 240, 8, 0, 0 }, /* pr_stime */
127*6635Sab196087 { 248, 8, 0, 0 }, /* pr_cutime */
128*6635Sab196087 { 256, 8, 0, 0 }, /* pr_cstime */
129*6635Sab196087 { 264, 1, 8, 0 }, /* pr_clname[] */
130*6635Sab196087 { 272, 2, 0, 1 }, /* pr_syscall */
131*6635Sab196087 { 274, 2, 0, 1 }, /* pr_nsysarg */
132*6635Sab196087 { 276, 4, 8, 1 }, /* pr_sysarg[] */
133*6635Sab196087 { 308, 4, 0, 0 }, /* pr_who */
134*6635Sab196087 { 312, 16, 0, 0 }, /* pr_lwppend */
135*6635Sab196087 { 328, 4, 0, 0 }, /* pr_oldcontext */
136*6635Sab196087 { 332, 4, 0, 0 }, /* pr_brkbase */
137*6635Sab196087 { 336, 4, 0, 0 }, /* pr_brksize */
138*6635Sab196087 { 340, 4, 0, 0 }, /* pr_stkbase */
139*6635Sab196087 { 344, 4, 0, 0 }, /* pr_stksize */
140*6635Sab196087 { 348, 2, 0, 1 }, /* pr_processor */
141*6635Sab196087 { 350, 2, 0, 1 }, /* pr_bind */
142*6635Sab196087 { 352, 4, 0, 1 }, /* pr_instr */
143*6635Sab196087 { 356, 76, 0, 0 }, /* pr_reg */
144*6635Sab196087 };
145*6635Sab196087
146*6635Sab196087
147*6635Sab196087 static const sl_psinfo_layout_t psinfo_layout = {
148*6635Sab196087 { 0, 336, 0, 0 }, /* sizeof (psinfo_t) */
149*6635Sab196087 { 0, 4, 0, 1 }, /* pr_flag */
150*6635Sab196087 { 4, 4, 0, 1 }, /* pr_nlwp */
151*6635Sab196087 { 8, 4, 0, 0 }, /* pr_pid */
152*6635Sab196087 { 12, 4, 0, 0 }, /* pr_ppid */
153*6635Sab196087 { 16, 4, 0, 0 }, /* pr_pgid */
154*6635Sab196087 { 20, 4, 0, 0 }, /* pr_sid */
155*6635Sab196087 { 24, 4, 0, 0 }, /* pr_uid */
156*6635Sab196087 { 28, 4, 0, 0 }, /* pr_euid */
157*6635Sab196087 { 32, 4, 0, 0 }, /* pr_gid */
158*6635Sab196087 { 36, 4, 0, 0 }, /* pr_egid */
159*6635Sab196087 { 40, 4, 0, 0 }, /* pr_addr */
160*6635Sab196087 { 44, 4, 0, 0 }, /* pr_size */
161*6635Sab196087 { 48, 4, 0, 0 }, /* pr_rssize */
162*6635Sab196087 { 56, 4, 0, 0 }, /* pr_ttydev */
163*6635Sab196087 { 60, 2, 0, 0 }, /* pr_pctcpu */
164*6635Sab196087 { 62, 2, 0, 0 }, /* pr_pctmem */
165*6635Sab196087 { 64, 8, 0, 0 }, /* pr_start */
166*6635Sab196087 { 72, 8, 0, 0 }, /* pr_time */
167*6635Sab196087 { 80, 8, 0, 0 }, /* pr_ctime */
168*6635Sab196087 { 88, 1, 16, 0 }, /* pr_fname[] */
169*6635Sab196087 { 104, 1, 80, 0 }, /* pr_psargs[] */
170*6635Sab196087 { 184, 4, 0, 1 }, /* pr_wstat */
171*6635Sab196087 { 188, 4, 0, 1 }, /* pr_argc */
172*6635Sab196087 { 192, 4, 0, 0 }, /* pr_argv */
173*6635Sab196087 { 196, 4, 0, 0 }, /* pr_envp */
174*6635Sab196087 { 200, 1, 0, 0 }, /* pr_dmodel */
175*6635Sab196087 { 204, 4, 0, 0 }, /* pr_taskid */
176*6635Sab196087 { 208, 4, 0, 0 }, /* pr_projid */
177*6635Sab196087 { 212, 4, 0, 1 }, /* pr_nzomb */
178*6635Sab196087 { 216, 4, 0, 0 }, /* pr_poolid */
179*6635Sab196087 { 220, 4, 0, 0 }, /* pr_zoneid */
180*6635Sab196087 { 224, 4, 0, 0 }, /* pr_contract */
181*6635Sab196087 { 232, 104, 0, 0 }, /* pr_lwp */
182*6635Sab196087 };
183*6635Sab196087
184*6635Sab196087
185*6635Sab196087 static const sl_prpsinfo_layout_t prpsinfo_layout = {
186*6635Sab196087 { 0, 260, 0, 0 }, /* sizeof (prpsinfo_t) */
187*6635Sab196087 { 0, 1, 0, 0 }, /* pr_state */
188*6635Sab196087 { 1, 1, 0, 0 }, /* pr_sname */
189*6635Sab196087 { 2, 1, 0, 0 }, /* pr_zomb */
190*6635Sab196087 { 3, 1, 0, 0 }, /* pr_nice */
191*6635Sab196087 { 4, 4, 0, 0 }, /* pr_flag */
192*6635Sab196087 { 8, 4, 0, 0 }, /* pr_uid */
193*6635Sab196087 { 12, 4, 0, 0 }, /* pr_gid */
194*6635Sab196087 { 16, 4, 0, 0 }, /* pr_pid */
195*6635Sab196087 { 20, 4, 0, 0 }, /* pr_ppid */
196*6635Sab196087 { 24, 4, 0, 0 }, /* pr_pgrp */
197*6635Sab196087 { 28, 4, 0, 0 }, /* pr_sid */
198*6635Sab196087 { 32, 4, 0, 0 }, /* pr_addr */
199*6635Sab196087 { 36, 4, 0, 0 }, /* pr_size */
200*6635Sab196087 { 40, 4, 0, 0 }, /* pr_rssize */
201*6635Sab196087 { 44, 4, 0, 0 }, /* pr_wchan */
202*6635Sab196087 { 48, 8, 0, 0 }, /* pr_start */
203*6635Sab196087 { 56, 8, 0, 0 }, /* pr_time */
204*6635Sab196087 { 64, 4, 0, 1 }, /* pr_pri */
205*6635Sab196087 { 68, 1, 0, 0 }, /* pr_oldpri */
206*6635Sab196087 { 69, 1, 0, 0 }, /* pr_cpu */
207*6635Sab196087 { 70, 2, 0, 0 }, /* pr_ottydev */
208*6635Sab196087 { 72, 4, 0, 0 }, /* pr_lttydev */
209*6635Sab196087 { 76, 1, 8, 0 }, /* pr_clname[] */
210*6635Sab196087 { 84, 1, 16, 0 }, /* pr_fname[] */
211*6635Sab196087 { 100, 1, 80, 0 }, /* pr_psargs[] */
212*6635Sab196087 { 180, 2, 0, 1 }, /* pr_syscall */
213*6635Sab196087 { 184, 8, 0, 0 }, /* pr_ctime */
214*6635Sab196087 { 192, 4, 0, 0 }, /* pr_bysize */
215*6635Sab196087 { 196, 4, 0, 0 }, /* pr_byrssize */
216*6635Sab196087 { 200, 4, 0, 1 }, /* pr_argc */
217*6635Sab196087 { 204, 4, 0, 0 }, /* pr_argv */
218*6635Sab196087 { 208, 4, 0, 0 }, /* pr_envp */
219*6635Sab196087 { 212, 4, 0, 1 }, /* pr_wstat */
220*6635Sab196087 { 216, 2, 0, 0 }, /* pr_pctcpu */
221*6635Sab196087 { 218, 2, 0, 0 }, /* pr_pctmem */
222*6635Sab196087 { 220, 4, 0, 0 }, /* pr_euid */
223*6635Sab196087 { 224, 4, 0, 0 }, /* pr_egid */
224*6635Sab196087 { 228, 4, 0, 0 }, /* pr_aslwpid */
225*6635Sab196087 { 232, 1, 0, 0 }, /* pr_dmodel */
226*6635Sab196087 };
227*6635Sab196087
228*6635Sab196087
229*6635Sab196087 static const sl_lwpsinfo_layout_t lwpsinfo_layout = {
230*6635Sab196087 { 0, 104, 0, 0 }, /* sizeof (lwpsinfo_t) */
231*6635Sab196087 { 0, 4, 0, 1 }, /* pr_flag */
232*6635Sab196087 { 4, 4, 0, 0 }, /* pr_lwpid */
233*6635Sab196087 { 8, 4, 0, 0 }, /* pr_addr */
234*6635Sab196087 { 12, 4, 0, 0 }, /* pr_wchan */
235*6635Sab196087 { 16, 1, 0, 0 }, /* pr_stype */
236*6635Sab196087 { 17, 1, 0, 0 }, /* pr_state */
237*6635Sab196087 { 18, 1, 0, 0 }, /* pr_sname */
238*6635Sab196087 { 19, 1, 0, 0 }, /* pr_nice */
239*6635Sab196087 { 20, 2, 0, 0 }, /* pr_syscall */
240*6635Sab196087 { 22, 1, 0, 0 }, /* pr_oldpri */
241*6635Sab196087 { 23, 1, 0, 0 }, /* pr_cpu */
242*6635Sab196087 { 24, 4, 0, 1 }, /* pr_pri */
243*6635Sab196087 { 28, 2, 0, 0 }, /* pr_pctcpu */
244*6635Sab196087 { 32, 8, 0, 0 }, /* pr_start */
245*6635Sab196087 { 40, 8, 0, 0 }, /* pr_time */
246*6635Sab196087 { 48, 1, 8, 0 }, /* pr_clname[] */
247*6635Sab196087 { 56, 1, 16, 0 }, /* pr_name[] */
248*6635Sab196087 { 72, 4, 0, 1 }, /* pr_onpro */
249*6635Sab196087 { 76, 4, 0, 1 }, /* pr_bindpro */
250*6635Sab196087 { 80, 4, 0, 1 }, /* pr_bindpset */
251*6635Sab196087 { 84, 4, 0, 1 }, /* pr_lgrp */
252*6635Sab196087 };
253*6635Sab196087
254*6635Sab196087
255*6635Sab196087 static const sl_prcred_layout_t prcred_layout = {
256*6635Sab196087 { 0, 32, 0, 0 }, /* sizeof (prcred_t) */
257*6635Sab196087 { 0, 4, 0, 0 }, /* pr_euid */
258*6635Sab196087 { 4, 4, 0, 0 }, /* pr_ruid */
259*6635Sab196087 { 8, 4, 0, 0 }, /* pr_suid */
260*6635Sab196087 { 12, 4, 0, 0 }, /* pr_egid */
261*6635Sab196087 { 16, 4, 0, 0 }, /* pr_rgid */
262*6635Sab196087 { 20, 4, 0, 0 }, /* pr_sgid */
263*6635Sab196087 { 24, 4, 0, 1 }, /* pr_ngroups */
264*6635Sab196087 { 28, 4, 1, 0 }, /* pr_groups[] */
265*6635Sab196087 };
266*6635Sab196087
267*6635Sab196087
268*6635Sab196087 static const sl_prpriv_layout_t prpriv_layout = {
269*6635Sab196087 { 0, 16, 0, 0 }, /* sizeof (prpriv_t) */
270*6635Sab196087 { 0, 4, 0, 0 }, /* pr_nsets */
271*6635Sab196087 { 4, 4, 0, 0 }, /* pr_setsize */
272*6635Sab196087 { 8, 4, 0, 0 }, /* pr_infosize */
273*6635Sab196087 { 12, 4, 1, 0 }, /* pr_sets[] */
274*6635Sab196087 };
275*6635Sab196087
276*6635Sab196087
277*6635Sab196087 static const sl_priv_impl_info_layout_t priv_impl_info_layout = {
278*6635Sab196087 { 0, 28, 0, 0 }, /* sizeof (priv_impl_info_t) */
279*6635Sab196087 { 0, 4, 0, 0 }, /* priv_headersize */
280*6635Sab196087 { 4, 4, 0, 0 }, /* priv_flags */
281*6635Sab196087 { 8, 4, 0, 0 }, /* priv_nsets */
282*6635Sab196087 { 12, 4, 0, 0 }, /* priv_setsize */
283*6635Sab196087 { 16, 4, 0, 0 }, /* priv_max */
284*6635Sab196087 { 20, 4, 0, 0 }, /* priv_infosize */
285*6635Sab196087 { 24, 4, 0, 0 }, /* priv_globalinfosize */
286*6635Sab196087 };
287*6635Sab196087
288*6635Sab196087
289*6635Sab196087 static const sl_fltset_layout_t fltset_layout = {
290*6635Sab196087 { 0, 16, 0, 0 }, /* sizeof (fltset_t) */
291*6635Sab196087 { 0, 4, 4, 0 }, /* word[] */
292*6635Sab196087 };
293*6635Sab196087
294*6635Sab196087
295*6635Sab196087 static const sl_siginfo_layout_t siginfo_layout = {
296*6635Sab196087 { 0, 128, 0, 0 }, /* sizeof (siginfo_t) */
297*6635Sab196087 { 0, 4, 0, 0 }, /* si_signo */
298*6635Sab196087 { 8, 4, 0, 0 }, /* si_errno */
299*6635Sab196087 { 4, 4, 0, 1 }, /* si_code */
300*6635Sab196087 { 20, 4, 0, 0 }, /* si_value.sival_int */
301*6635Sab196087 { 20, 4, 0, 0 }, /* si_value.sival_ptr */
302*6635Sab196087 { 12, 4, 0, 0 }, /* si_pid */
303*6635Sab196087 { 16, 4, 0, 0 }, /* si_uid */
304*6635Sab196087 { 28, 4, 0, 0 }, /* si_ctid */
305*6635Sab196087 { 32, 4, 0, 0 }, /* si_zoneid */
306*6635Sab196087 { 12, 4, 0, 0 }, /* si_entity */
307*6635Sab196087 { 12, 4, 0, 0 }, /* si_addr */
308*6635Sab196087 { 20, 4, 0, 0 }, /* si_status */
309*6635Sab196087 { 16, 4, 0, 0 }, /* si_band */
310*6635Sab196087 };
311*6635Sab196087
312*6635Sab196087
313*6635Sab196087 static const sl_sigset_layout_t sigset_layout = {
314*6635Sab196087 { 0, 16, 0, 0 }, /* sizeof (sigset_t) */
315*6635Sab196087 { 0, 4, 4, 0 }, /* __sigbits[] */
316*6635Sab196087 };
317*6635Sab196087
318*6635Sab196087
319*6635Sab196087 static const sl_sigaction_layout_t sigaction_layout = {
320*6635Sab196087 { 0, 32, 0, 0 }, /* sizeof (struct sigaction) */
321*6635Sab196087 { 0, 4, 0, 0 }, /* sa_flags */
322*6635Sab196087 { 4, 4, 0, 0 }, /* sa_handler */
323*6635Sab196087 { 4, 4, 0, 0 }, /* sa_sigaction */
324*6635Sab196087 { 8, 16, 0, 0 }, /* sa_mask */
325*6635Sab196087 };
326*6635Sab196087
327*6635Sab196087
328*6635Sab196087 static const sl_stack_layout_t stack_layout = {
329*6635Sab196087 { 0, 12, 0, 0 }, /* sizeof (stack_t) */
330*6635Sab196087 { 0, 4, 0, 0 }, /* ss_sp */
331*6635Sab196087 { 4, 4, 0, 0 }, /* ss_size */
332*6635Sab196087 { 8, 4, 0, 0 }, /* ss_flags */
333*6635Sab196087 };
334*6635Sab196087
335*6635Sab196087
336*6635Sab196087 static const sl_sysset_layout_t sysset_layout = {
337*6635Sab196087 { 0, 64, 0, 0 }, /* sizeof (sysset_t) */
338*6635Sab196087 { 0, 4, 16, 0 }, /* word[] */
339*6635Sab196087 };
340*6635Sab196087
341*6635Sab196087
342*6635Sab196087 static const sl_timestruc_layout_t timestruc_layout = {
343*6635Sab196087 { 0, 8, 0, 0 }, /* sizeof (timestruc_t) */
344*6635Sab196087 { 0, 4, 0, 0 }, /* tv_sec */
345*6635Sab196087 { 4, 4, 0, 0 }, /* tv_nsec */
346*6635Sab196087 };
347*6635Sab196087
348*6635Sab196087
349*6635Sab196087 static const sl_utsname_layout_t utsname_layout = {
350*6635Sab196087 { 0, 1285, 0, 0 }, /* sizeof (struct utsname) */
351*6635Sab196087 { 0, 1, 257, 0 }, /* sysname[] */
352*6635Sab196087 { 257, 1, 257, 0 }, /* nodename[] */
353*6635Sab196087 { 514, 1, 257, 0 }, /* release[] */
354*6635Sab196087 { 771, 1, 257, 0 }, /* version[] */
355*6635Sab196087 { 1028, 1, 257, 0 }, /* machine[] */
356*6635Sab196087 };
357*6635Sab196087
358*6635Sab196087
359*6635Sab196087
360*6635Sab196087
361*6635Sab196087 static const sl_arch_layout_t layout_i386 = {
362*6635Sab196087 &auxv_layout,
363*6635Sab196087 &fltset_layout,
364*6635Sab196087 &lwpsinfo_layout,
365*6635Sab196087 &lwpstatus_layout,
366*6635Sab196087 &prcred_layout,
367*6635Sab196087 &priv_impl_info_layout,
368*6635Sab196087 &prpriv_layout,
369*6635Sab196087 &psinfo_layout,
370*6635Sab196087 &pstatus_layout,
371*6635Sab196087 &prgregset_layout,
372*6635Sab196087 &prpsinfo_layout,
373*6635Sab196087 &prstatus_layout,
374*6635Sab196087 &sigaction_layout,
375*6635Sab196087 &siginfo_layout,
376*6635Sab196087 &sigset_layout,
377*6635Sab196087 &stack_layout,
378*6635Sab196087 &sysset_layout,
379*6635Sab196087 ×truc_layout,
380*6635Sab196087 &utsname_layout,
381*6635Sab196087 };
382*6635Sab196087
383*6635Sab196087
384*6635Sab196087 const sl_arch_layout_t *
struct_layout_i386(void)385*6635Sab196087 struct_layout_i386(void)
386*6635Sab196087 {
387*6635Sab196087 return (&layout_i386);
388*6635Sab196087 }
389