]> CyberLeo.Net >> Repos - FreeBSD/stable/9.git/blob - sys/compat/freebsd32/freebsd32_proto.h
MFC r239347, 240295, 240296 and 253325:
[FreeBSD/stable/9.git] / sys / compat / freebsd32 / freebsd32_proto.h
1 /*
2  * System call prototypes.
3  *
4  * DO NOT EDIT-- this file is automatically generated.
5  * $FreeBSD$
6  * created from FreeBSD: stable/9/sys/compat/freebsd32/syscalls.master 254130 2013-08-09 06:51:34Z kib 
7  */
8
9 #ifndef _FREEBSD32_SYSPROTO_H_
10 #define _FREEBSD32_SYSPROTO_H_
11
12 #include <sys/signal.h>
13 #include <sys/acl.h>
14 #include <sys/cpuset.h>
15 #include <sys/_semaphore.h>
16 #include <sys/ucontext.h>
17
18 #include <bsm/audit_kevents.h>
19
20 struct proc;
21
22 struct thread;
23
24 #define PAD_(t) (sizeof(register_t) <= sizeof(t) ? \
25                 0 : sizeof(register_t) - sizeof(t))
26
27 #if BYTE_ORDER == LITTLE_ENDIAN
28 #define PADL_(t)        0
29 #define PADR_(t)        PAD_(t)
30 #else
31 #define PADL_(t)        PAD_(t)
32 #define PADR_(t)        0
33 #endif
34
35 #if !defined(PAD64_REQUIRED) && defined(__powerpc__)
36 #define PAD64_REQUIRED
37 #endif
38 struct freebsd32_wait4_args {
39         char pid_l_[PADL_(int)]; int pid; char pid_r_[PADR_(int)];
40         char status_l_[PADL_(int *)]; int * status; char status_r_[PADR_(int *)];
41         char options_l_[PADL_(int)]; int options; char options_r_[PADR_(int)];
42         char rusage_l_[PADL_(struct rusage32 *)]; struct rusage32 * rusage; char rusage_r_[PADR_(struct rusage32 *)];
43 };
44 struct freebsd32_recvmsg_args {
45         char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)];
46         char msg_l_[PADL_(struct msghdr32 *)]; struct msghdr32 * msg; char msg_r_[PADR_(struct msghdr32 *)];
47         char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
48 };
49 struct freebsd32_sendmsg_args {
50         char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)];
51         char msg_l_[PADL_(struct msghdr32 *)]; struct msghdr32 * msg; char msg_r_[PADR_(struct msghdr32 *)];
52         char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
53 };
54 struct freebsd32_recvfrom_args {
55         char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)];
56         char buf_l_[PADL_(u_int32_t)]; u_int32_t buf; char buf_r_[PADR_(u_int32_t)];
57         char len_l_[PADL_(u_int32_t)]; u_int32_t len; char len_r_[PADR_(u_int32_t)];
58         char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
59         char from_l_[PADL_(u_int32_t)]; u_int32_t from; char from_r_[PADR_(u_int32_t)];
60         char fromlenaddr_l_[PADL_(u_int32_t)]; u_int32_t fromlenaddr; char fromlenaddr_r_[PADR_(u_int32_t)];
61 };
62 struct ofreebsd32_sigpending_args {
63         register_t dummy;
64 };
65 struct freebsd32_sigaltstack_args {
66         char ss_l_[PADL_(struct sigaltstack32 *)]; struct sigaltstack32 * ss; char ss_r_[PADR_(struct sigaltstack32 *)];
67         char oss_l_[PADL_(struct sigaltstack32 *)]; struct sigaltstack32 * oss; char oss_r_[PADR_(struct sigaltstack32 *)];
68 };
69 struct freebsd32_ioctl_args {
70         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
71         char com_l_[PADL_(uint32_t)]; uint32_t com; char com_r_[PADR_(uint32_t)];
72         char data_l_[PADL_(struct md_ioctl32 *)]; struct md_ioctl32 * data; char data_r_[PADR_(struct md_ioctl32 *)];
73 };
74 struct freebsd32_execve_args {
75         char fname_l_[PADL_(char *)]; char * fname; char fname_r_[PADR_(char *)];
76         char argv_l_[PADL_(u_int32_t *)]; u_int32_t * argv; char argv_r_[PADR_(u_int32_t *)];
77         char envv_l_[PADL_(u_int32_t *)]; u_int32_t * envv; char envv_r_[PADR_(u_int32_t *)];
78 };
79 struct freebsd32_mprotect_args {
80         char addr_l_[PADL_(const void *)]; const void * addr; char addr_r_[PADR_(const void *)];
81         char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)];
82         char prot_l_[PADL_(int)]; int prot; char prot_r_[PADR_(int)];
83 };
84 struct freebsd32_setitimer_args {
85         char which_l_[PADL_(u_int)]; u_int which; char which_r_[PADR_(u_int)];
86         char itv_l_[PADL_(struct itimerval32 *)]; struct itimerval32 * itv; char itv_r_[PADR_(struct itimerval32 *)];
87         char oitv_l_[PADL_(struct itimerval32 *)]; struct itimerval32 * oitv; char oitv_r_[PADR_(struct itimerval32 *)];
88 };
89 struct freebsd32_getitimer_args {
90         char which_l_[PADL_(u_int)]; u_int which; char which_r_[PADR_(u_int)];
91         char itv_l_[PADL_(struct itimerval32 *)]; struct itimerval32 * itv; char itv_r_[PADR_(struct itimerval32 *)];
92 };
93 struct freebsd32_select_args {
94         char nd_l_[PADL_(int)]; int nd; char nd_r_[PADR_(int)];
95         char in_l_[PADL_(fd_set *)]; fd_set * in; char in_r_[PADR_(fd_set *)];
96         char ou_l_[PADL_(fd_set *)]; fd_set * ou; char ou_r_[PADR_(fd_set *)];
97         char ex_l_[PADL_(fd_set *)]; fd_set * ex; char ex_r_[PADR_(fd_set *)];
98         char tv_l_[PADL_(struct timeval32 *)]; struct timeval32 * tv; char tv_r_[PADR_(struct timeval32 *)];
99 };
100 struct freebsd32_gettimeofday_args {
101         char tp_l_[PADL_(struct timeval32 *)]; struct timeval32 * tp; char tp_r_[PADR_(struct timeval32 *)];
102         char tzp_l_[PADL_(struct timezone *)]; struct timezone * tzp; char tzp_r_[PADR_(struct timezone *)];
103 };
104 struct freebsd32_getrusage_args {
105         char who_l_[PADL_(int)]; int who; char who_r_[PADR_(int)];
106         char rusage_l_[PADL_(struct rusage32 *)]; struct rusage32 * rusage; char rusage_r_[PADR_(struct rusage32 *)];
107 };
108 struct freebsd32_readv_args {
109         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
110         char iovp_l_[PADL_(struct iovec32 *)]; struct iovec32 * iovp; char iovp_r_[PADR_(struct iovec32 *)];
111         char iovcnt_l_[PADL_(u_int)]; u_int iovcnt; char iovcnt_r_[PADR_(u_int)];
112 };
113 struct freebsd32_writev_args {
114         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
115         char iovp_l_[PADL_(struct iovec32 *)]; struct iovec32 * iovp; char iovp_r_[PADR_(struct iovec32 *)];
116         char iovcnt_l_[PADL_(u_int)]; u_int iovcnt; char iovcnt_r_[PADR_(u_int)];
117 };
118 struct freebsd32_settimeofday_args {
119         char tv_l_[PADL_(struct timeval32 *)]; struct timeval32 * tv; char tv_r_[PADR_(struct timeval32 *)];
120         char tzp_l_[PADL_(struct timezone *)]; struct timezone * tzp; char tzp_r_[PADR_(struct timezone *)];
121 };
122 struct freebsd32_utimes_args {
123         char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
124         char tptr_l_[PADL_(struct timeval32 *)]; struct timeval32 * tptr; char tptr_r_[PADR_(struct timeval32 *)];
125 };
126 struct freebsd32_adjtime_args {
127         char delta_l_[PADL_(struct timeval32 *)]; struct timeval32 * delta; char delta_r_[PADR_(struct timeval32 *)];
128         char olddelta_l_[PADL_(struct timeval32 *)]; struct timeval32 * olddelta; char olddelta_r_[PADR_(struct timeval32 *)];
129 };
130 struct freebsd32_sysarch_args {
131         char op_l_[PADL_(int)]; int op; char op_r_[PADR_(int)];
132         char parms_l_[PADL_(char *)]; char * parms; char parms_r_[PADR_(char *)];
133 };
134 struct freebsd32_semsys_args {
135         char which_l_[PADL_(int)]; int which; char which_r_[PADR_(int)];
136         char a2_l_[PADL_(int)]; int a2; char a2_r_[PADR_(int)];
137         char a3_l_[PADL_(int)]; int a3; char a3_r_[PADR_(int)];
138         char a4_l_[PADL_(int)]; int a4; char a4_r_[PADR_(int)];
139         char a5_l_[PADL_(int)]; int a5; char a5_r_[PADR_(int)];
140 };
141 struct freebsd32_msgsys_args {
142         char which_l_[PADL_(int)]; int which; char which_r_[PADR_(int)];
143         char a2_l_[PADL_(int)]; int a2; char a2_r_[PADR_(int)];
144         char a3_l_[PADL_(int)]; int a3; char a3_r_[PADR_(int)];
145         char a4_l_[PADL_(int)]; int a4; char a4_r_[PADR_(int)];
146         char a5_l_[PADL_(int)]; int a5; char a5_r_[PADR_(int)];
147         char a6_l_[PADL_(int)]; int a6; char a6_r_[PADR_(int)];
148 };
149 struct freebsd32_shmsys_args {
150         char which_l_[PADL_(uint32_t)]; uint32_t which; char which_r_[PADR_(uint32_t)];
151         char a2_l_[PADL_(uint32_t)]; uint32_t a2; char a2_r_[PADR_(uint32_t)];
152         char a3_l_[PADL_(uint32_t)]; uint32_t a3; char a3_r_[PADR_(uint32_t)];
153         char a4_l_[PADL_(uint32_t)]; uint32_t a4; char a4_r_[PADR_(uint32_t)];
154 };
155 struct freebsd32_stat_args {
156         char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
157         char ub_l_[PADL_(struct stat32 *)]; struct stat32 * ub; char ub_r_[PADR_(struct stat32 *)];
158 };
159 struct freebsd32_fstat_args {
160         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
161         char ub_l_[PADL_(struct stat32 *)]; struct stat32 * ub; char ub_r_[PADR_(struct stat32 *)];
162 };
163 struct freebsd32_lstat_args {
164         char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
165         char ub_l_[PADL_(struct stat32 *)]; struct stat32 * ub; char ub_r_[PADR_(struct stat32 *)];
166 };
167 struct freebsd32_getdirentries_args {
168         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
169         char buf_l_[PADL_(char *)]; char * buf; char buf_r_[PADR_(char *)];
170         char count_l_[PADL_(u_int)]; u_int count; char count_r_[PADR_(u_int)];
171         char basep_l_[PADL_(int32_t *)]; int32_t * basep; char basep_r_[PADR_(int32_t *)];
172 };
173 struct freebsd32_sysctl_args {
174         char name_l_[PADL_(int *)]; int * name; char name_r_[PADR_(int *)];
175         char namelen_l_[PADL_(u_int)]; u_int namelen; char namelen_r_[PADR_(u_int)];
176         char old_l_[PADL_(void *)]; void * old; char old_r_[PADR_(void *)];
177         char oldlenp_l_[PADL_(u_int32_t *)]; u_int32_t * oldlenp; char oldlenp_r_[PADR_(u_int32_t *)];
178         char new_l_[PADL_(void *)]; void * new; char new_r_[PADR_(void *)];
179         char newlen_l_[PADL_(u_int32_t)]; u_int32_t newlen; char newlen_r_[PADR_(u_int32_t)];
180 };
181 struct freebsd32_futimes_args {
182         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
183         char tptr_l_[PADL_(struct timeval32 *)]; struct timeval32 * tptr; char tptr_r_[PADR_(struct timeval32 *)];
184 };
185 struct freebsd32_msgsnd_args {
186         char msqid_l_[PADL_(int)]; int msqid; char msqid_r_[PADR_(int)];
187         char msgp_l_[PADL_(void *)]; void * msgp; char msgp_r_[PADR_(void *)];
188         char msgsz_l_[PADL_(size_t)]; size_t msgsz; char msgsz_r_[PADR_(size_t)];
189         char msgflg_l_[PADL_(int)]; int msgflg; char msgflg_r_[PADR_(int)];
190 };
191 struct freebsd32_msgrcv_args {
192         char msqid_l_[PADL_(int)]; int msqid; char msqid_r_[PADR_(int)];
193         char msgp_l_[PADL_(void *)]; void * msgp; char msgp_r_[PADR_(void *)];
194         char msgsz_l_[PADL_(size_t)]; size_t msgsz; char msgsz_r_[PADR_(size_t)];
195         char msgtyp_l_[PADL_(long)]; long msgtyp; char msgtyp_r_[PADR_(long)];
196         char msgflg_l_[PADL_(int)]; int msgflg; char msgflg_r_[PADR_(int)];
197 };
198 struct freebsd32_clock_gettime_args {
199         char clock_id_l_[PADL_(clockid_t)]; clockid_t clock_id; char clock_id_r_[PADR_(clockid_t)];
200         char tp_l_[PADL_(struct timespec32 *)]; struct timespec32 * tp; char tp_r_[PADR_(struct timespec32 *)];
201 };
202 struct freebsd32_clock_settime_args {
203         char clock_id_l_[PADL_(clockid_t)]; clockid_t clock_id; char clock_id_r_[PADR_(clockid_t)];
204         char tp_l_[PADL_(const struct timespec32 *)]; const struct timespec32 * tp; char tp_r_[PADR_(const struct timespec32 *)];
205 };
206 struct freebsd32_clock_getres_args {
207         char clock_id_l_[PADL_(clockid_t)]; clockid_t clock_id; char clock_id_r_[PADR_(clockid_t)];
208         char tp_l_[PADL_(struct timespec32 *)]; struct timespec32 * tp; char tp_r_[PADR_(struct timespec32 *)];
209 };
210 struct freebsd32_ktimer_create_args {
211         char clock_id_l_[PADL_(clockid_t)]; clockid_t clock_id; char clock_id_r_[PADR_(clockid_t)];
212         char evp_l_[PADL_(struct sigevent32 *)]; struct sigevent32 * evp; char evp_r_[PADR_(struct sigevent32 *)];
213         char timerid_l_[PADL_(int *)]; int * timerid; char timerid_r_[PADR_(int *)];
214 };
215 struct freebsd32_ktimer_settime_args {
216         char timerid_l_[PADL_(int)]; int timerid; char timerid_r_[PADR_(int)];
217         char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
218         char value_l_[PADL_(const struct itimerspec32 *)]; const struct itimerspec32 * value; char value_r_[PADR_(const struct itimerspec32 *)];
219         char ovalue_l_[PADL_(struct itimerspec32 *)]; struct itimerspec32 * ovalue; char ovalue_r_[PADR_(struct itimerspec32 *)];
220 };
221 struct freebsd32_ktimer_gettime_args {
222         char timerid_l_[PADL_(int)]; int timerid; char timerid_r_[PADR_(int)];
223         char value_l_[PADL_(struct itimerspec32 *)]; struct itimerspec32 * value; char value_r_[PADR_(struct itimerspec32 *)];
224 };
225 struct freebsd32_nanosleep_args {
226         char rqtp_l_[PADL_(const struct timespec32 *)]; const struct timespec32 * rqtp; char rqtp_r_[PADR_(const struct timespec32 *)];
227         char rmtp_l_[PADL_(struct timespec32 *)]; struct timespec32 * rmtp; char rmtp_r_[PADR_(struct timespec32 *)];
228 };
229 struct freebsd32_aio_read_args {
230         char aiocbp_l_[PADL_(struct aiocb32 *)]; struct aiocb32 * aiocbp; char aiocbp_r_[PADR_(struct aiocb32 *)];
231 };
232 struct freebsd32_aio_write_args {
233         char aiocbp_l_[PADL_(struct aiocb32 *)]; struct aiocb32 * aiocbp; char aiocbp_r_[PADR_(struct aiocb32 *)];
234 };
235 struct freebsd32_lio_listio_args {
236         char mode_l_[PADL_(int)]; int mode; char mode_r_[PADR_(int)];
237         char acb_list_l_[PADL_(struct aiocb32 *const *)]; struct aiocb32 *const * acb_list; char acb_list_r_[PADR_(struct aiocb32 *const *)];
238         char nent_l_[PADL_(int)]; int nent; char nent_r_[PADR_(int)];
239         char sig_l_[PADL_(struct sigevent32 *)]; struct sigevent32 * sig; char sig_r_[PADR_(struct sigevent32 *)];
240 };
241 struct freebsd32_lutimes_args {
242         char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
243         char tptr_l_[PADL_(struct timeval32 *)]; struct timeval32 * tptr; char tptr_r_[PADR_(struct timeval32 *)];
244 };
245 struct freebsd32_preadv_args {
246         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
247         char iovp_l_[PADL_(struct iovec32 *)]; struct iovec32 * iovp; char iovp_r_[PADR_(struct iovec32 *)];
248         char iovcnt_l_[PADL_(u_int)]; u_int iovcnt; char iovcnt_r_[PADR_(u_int)];
249         char offset1_l_[PADL_(u_int32_t)]; u_int32_t offset1; char offset1_r_[PADR_(u_int32_t)];
250         char offset2_l_[PADL_(u_int32_t)]; u_int32_t offset2; char offset2_r_[PADR_(u_int32_t)];
251 };
252 struct freebsd32_pwritev_args {
253         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
254         char iovp_l_[PADL_(struct iovec32 *)]; struct iovec32 * iovp; char iovp_r_[PADR_(struct iovec32 *)];
255         char iovcnt_l_[PADL_(u_int)]; u_int iovcnt; char iovcnt_r_[PADR_(u_int)];
256         char offset1_l_[PADL_(u_int32_t)]; u_int32_t offset1; char offset1_r_[PADR_(u_int32_t)];
257         char offset2_l_[PADL_(u_int32_t)]; u_int32_t offset2; char offset2_r_[PADR_(u_int32_t)];
258 };
259 struct freebsd32_modstat_args {
260         char modid_l_[PADL_(int)]; int modid; char modid_r_[PADR_(int)];
261         char stat_l_[PADL_(struct module_stat32 *)]; struct module_stat32 * stat; char stat_r_[PADR_(struct module_stat32 *)];
262 };
263 struct freebsd32_kldstat_args {
264         char fileid_l_[PADL_(int)]; int fileid; char fileid_r_[PADR_(int)];
265         char stat_l_[PADL_(struct kld32_file_stat *)]; struct kld32_file_stat * stat; char stat_r_[PADR_(struct kld32_file_stat *)];
266 };
267 struct freebsd32_aio_return_args {
268         char aiocbp_l_[PADL_(struct aiocb32 *)]; struct aiocb32 * aiocbp; char aiocbp_r_[PADR_(struct aiocb32 *)];
269 };
270 struct freebsd32_aio_suspend_args {
271         char aiocbp_l_[PADL_(struct aiocb32 *const *)]; struct aiocb32 *const * aiocbp; char aiocbp_r_[PADR_(struct aiocb32 *const *)];
272         char nent_l_[PADL_(int)]; int nent; char nent_r_[PADR_(int)];
273         char timeout_l_[PADL_(const struct timespec32 *)]; const struct timespec32 * timeout; char timeout_r_[PADR_(const struct timespec32 *)];
274 };
275 struct freebsd32_aio_cancel_args {
276         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
277         char aiocbp_l_[PADL_(struct aiocb32 *)]; struct aiocb32 * aiocbp; char aiocbp_r_[PADR_(struct aiocb32 *)];
278 };
279 struct freebsd32_aio_error_args {
280         char aiocbp_l_[PADL_(struct aiocb32 *)]; struct aiocb32 * aiocbp; char aiocbp_r_[PADR_(struct aiocb32 *)];
281 };
282 struct freebsd32_oaio_read_args {
283         char aiocbp_l_[PADL_(struct oaiocb32 *)]; struct oaiocb32 * aiocbp; char aiocbp_r_[PADR_(struct oaiocb32 *)];
284 };
285 struct freebsd32_oaio_write_args {
286         char aiocbp_l_[PADL_(struct oaiocb32 *)]; struct oaiocb32 * aiocbp; char aiocbp_r_[PADR_(struct oaiocb32 *)];
287 };
288 struct freebsd32_olio_listio_args {
289         char mode_l_[PADL_(int)]; int mode; char mode_r_[PADR_(int)];
290         char acb_list_l_[PADL_(struct oaiocb32 *const *)]; struct oaiocb32 *const * acb_list; char acb_list_r_[PADR_(struct oaiocb32 *const *)];
291         char nent_l_[PADL_(int)]; int nent; char nent_r_[PADR_(int)];
292         char sig_l_[PADL_(struct osigevent32 *)]; struct osigevent32 * sig; char sig_r_[PADR_(struct osigevent32 *)];
293 };
294 struct freebsd32_jail_args {
295         char jail_l_[PADL_(struct jail32 *)]; struct jail32 * jail; char jail_r_[PADR_(struct jail32 *)];
296 };
297 struct freebsd32_sigtimedwait_args {
298         char set_l_[PADL_(const sigset_t *)]; const sigset_t * set; char set_r_[PADR_(const sigset_t *)];
299         char info_l_[PADL_(siginfo_t *)]; siginfo_t * info; char info_r_[PADR_(siginfo_t *)];
300         char timeout_l_[PADL_(const struct timespec *)]; const struct timespec * timeout; char timeout_r_[PADR_(const struct timespec *)];
301 };
302 struct freebsd32_sigwaitinfo_args {
303         char set_l_[PADL_(const sigset_t *)]; const sigset_t * set; char set_r_[PADR_(const sigset_t *)];
304         char info_l_[PADL_(siginfo_t *)]; siginfo_t * info; char info_r_[PADR_(siginfo_t *)];
305 };
306 struct freebsd32_aio_waitcomplete_args {
307         char aiocbp_l_[PADL_(struct aiocb32 **)]; struct aiocb32 ** aiocbp; char aiocbp_r_[PADR_(struct aiocb32 **)];
308         char timeout_l_[PADL_(struct timespec32 *)]; struct timespec32 * timeout; char timeout_r_[PADR_(struct timespec32 *)];
309 };
310 struct freebsd32_kevent_args {
311         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
312         char changelist_l_[PADL_(const struct kevent32 *)]; const struct kevent32 * changelist; char changelist_r_[PADR_(const struct kevent32 *)];
313         char nchanges_l_[PADL_(int)]; int nchanges; char nchanges_r_[PADR_(int)];
314         char eventlist_l_[PADL_(struct kevent32 *)]; struct kevent32 * eventlist; char eventlist_r_[PADR_(struct kevent32 *)];
315         char nevents_l_[PADL_(int)]; int nevents; char nevents_r_[PADR_(int)];
316         char timeout_l_[PADL_(const struct timespec32 *)]; const struct timespec32 * timeout; char timeout_r_[PADR_(const struct timespec32 *)];
317 };
318 struct freebsd32_nmount_args {
319         char iovp_l_[PADL_(struct iovec32 *)]; struct iovec32 * iovp; char iovp_r_[PADR_(struct iovec32 *)];
320         char iovcnt_l_[PADL_(unsigned int)]; unsigned int iovcnt; char iovcnt_r_[PADR_(unsigned int)];
321         char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
322 };
323 struct freebsd32_sendfile_args {
324         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
325         char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)];
326         char offset1_l_[PADL_(u_int32_t)]; u_int32_t offset1; char offset1_r_[PADR_(u_int32_t)];
327         char offset2_l_[PADL_(u_int32_t)]; u_int32_t offset2; char offset2_r_[PADR_(u_int32_t)];
328         char nbytes_l_[PADL_(size_t)]; size_t nbytes; char nbytes_r_[PADR_(size_t)];
329         char hdtr_l_[PADL_(struct sf_hdtr32 *)]; struct sf_hdtr32 * hdtr; char hdtr_r_[PADR_(struct sf_hdtr32 *)];
330         char sbytes_l_[PADL_(off_t *)]; off_t * sbytes; char sbytes_r_[PADR_(off_t *)];
331         char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
332 };
333 struct freebsd32_ksem_init_args {
334         char idp_l_[PADL_(semid_t *)]; semid_t * idp; char idp_r_[PADR_(semid_t *)];
335         char value_l_[PADL_(unsigned int)]; unsigned int value; char value_r_[PADR_(unsigned int)];
336 };
337 struct freebsd32_ksem_open_args {
338         char idp_l_[PADL_(semid_t *)]; semid_t * idp; char idp_r_[PADR_(semid_t *)];
339         char name_l_[PADL_(const char *)]; const char * name; char name_r_[PADR_(const char *)];
340         char oflag_l_[PADL_(int)]; int oflag; char oflag_r_[PADR_(int)];
341         char mode_l_[PADL_(mode_t)]; mode_t mode; char mode_r_[PADR_(mode_t)];
342         char value_l_[PADL_(unsigned int)]; unsigned int value; char value_r_[PADR_(unsigned int)];
343 };
344 struct freebsd32_sigaction_args {
345         char sig_l_[PADL_(int)]; int sig; char sig_r_[PADR_(int)];
346         char act_l_[PADL_(struct sigaction32 *)]; struct sigaction32 * act; char act_r_[PADR_(struct sigaction32 *)];
347         char oact_l_[PADL_(struct sigaction32 *)]; struct sigaction32 * oact; char oact_r_[PADR_(struct sigaction32 *)];
348 };
349 struct freebsd32_sigreturn_args {
350         char sigcntxp_l_[PADL_(const struct freebsd32_ucontext *)]; const struct freebsd32_ucontext * sigcntxp; char sigcntxp_r_[PADR_(const struct freebsd32_ucontext *)];
351 };
352 struct freebsd32_getcontext_args {
353         char ucp_l_[PADL_(struct freebsd32_ucontext *)]; struct freebsd32_ucontext * ucp; char ucp_r_[PADR_(struct freebsd32_ucontext *)];
354 };
355 struct freebsd32_setcontext_args {
356         char ucp_l_[PADL_(const struct freebsd32_ucontext *)]; const struct freebsd32_ucontext * ucp; char ucp_r_[PADR_(const struct freebsd32_ucontext *)];
357 };
358 struct freebsd32_swapcontext_args {
359         char oucp_l_[PADL_(struct freebsd32_ucontext *)]; struct freebsd32_ucontext * oucp; char oucp_r_[PADR_(struct freebsd32_ucontext *)];
360         char ucp_l_[PADL_(const struct freebsd32_ucontext *)]; const struct freebsd32_ucontext * ucp; char ucp_r_[PADR_(const struct freebsd32_ucontext *)];
361 };
362 struct freebsd32_umtx_lock_args {
363         char umtx_l_[PADL_(struct umtx *)]; struct umtx * umtx; char umtx_r_[PADR_(struct umtx *)];
364 };
365 struct freebsd32_umtx_unlock_args {
366         char umtx_l_[PADL_(struct umtx *)]; struct umtx * umtx; char umtx_r_[PADR_(struct umtx *)];
367 };
368 struct freebsd32_ksem_timedwait_args {
369         char id_l_[PADL_(semid_t)]; semid_t id; char id_r_[PADR_(semid_t)];
370         char abstime_l_[PADL_(const struct timespec32 *)]; const struct timespec32 * abstime; char abstime_r_[PADR_(const struct timespec32 *)];
371 };
372 struct freebsd32_thr_suspend_args {
373         char timeout_l_[PADL_(const struct timespec32 *)]; const struct timespec32 * timeout; char timeout_r_[PADR_(const struct timespec32 *)];
374 };
375 struct freebsd32_umtx_op_args {
376         char obj_l_[PADL_(void *)]; void * obj; char obj_r_[PADR_(void *)];
377         char op_l_[PADL_(int)]; int op; char op_r_[PADR_(int)];
378         char val_l_[PADL_(u_long)]; u_long val; char val_r_[PADR_(u_long)];
379         char uaddr_l_[PADL_(void *)]; void * uaddr; char uaddr_r_[PADR_(void *)];
380         char uaddr2_l_[PADL_(void *)]; void * uaddr2; char uaddr2_r_[PADR_(void *)];
381 };
382 struct freebsd32_thr_new_args {
383         char param_l_[PADL_(struct thr_param32 *)]; struct thr_param32 * param; char param_r_[PADR_(struct thr_param32 *)];
384         char param_size_l_[PADL_(int)]; int param_size; char param_size_r_[PADR_(int)];
385 };
386 struct freebsd32_kmq_open_args {
387         char path_l_[PADL_(const char *)]; const char * path; char path_r_[PADR_(const char *)];
388         char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
389         char mode_l_[PADL_(mode_t)]; mode_t mode; char mode_r_[PADR_(mode_t)];
390         char attr_l_[PADL_(const struct mq_attr32 *)]; const struct mq_attr32 * attr; char attr_r_[PADR_(const struct mq_attr32 *)];
391 };
392 struct freebsd32_kmq_setattr_args {
393         char mqd_l_[PADL_(int)]; int mqd; char mqd_r_[PADR_(int)];
394         char attr_l_[PADL_(const struct mq_attr32 *)]; const struct mq_attr32 * attr; char attr_r_[PADR_(const struct mq_attr32 *)];
395         char oattr_l_[PADL_(struct mq_attr32 *)]; struct mq_attr32 * oattr; char oattr_r_[PADR_(struct mq_attr32 *)];
396 };
397 struct freebsd32_kmq_timedreceive_args {
398         char mqd_l_[PADL_(int)]; int mqd; char mqd_r_[PADR_(int)];
399         char msg_ptr_l_[PADL_(char *)]; char * msg_ptr; char msg_ptr_r_[PADR_(char *)];
400         char msg_len_l_[PADL_(size_t)]; size_t msg_len; char msg_len_r_[PADR_(size_t)];
401         char msg_prio_l_[PADL_(unsigned *)]; unsigned * msg_prio; char msg_prio_r_[PADR_(unsigned *)];
402         char abs_timeout_l_[PADL_(const struct timespec32 *)]; const struct timespec32 * abs_timeout; char abs_timeout_r_[PADR_(const struct timespec32 *)];
403 };
404 struct freebsd32_kmq_timedsend_args {
405         char mqd_l_[PADL_(int)]; int mqd; char mqd_r_[PADR_(int)];
406         char msg_ptr_l_[PADL_(const char *)]; const char * msg_ptr; char msg_ptr_r_[PADR_(const char *)];
407         char msg_len_l_[PADL_(size_t)]; size_t msg_len; char msg_len_r_[PADR_(size_t)];
408         char msg_prio_l_[PADL_(unsigned)]; unsigned msg_prio; char msg_prio_r_[PADR_(unsigned)];
409         char abs_timeout_l_[PADL_(const struct timespec32 *)]; const struct timespec32 * abs_timeout; char abs_timeout_r_[PADR_(const struct timespec32 *)];
410 };
411 struct freebsd32_kmq_notify_args {
412         char mqd_l_[PADL_(int)]; int mqd; char mqd_r_[PADR_(int)];
413         char sigev_l_[PADL_(const struct sigevent32 *)]; const struct sigevent32 * sigev; char sigev_r_[PADR_(const struct sigevent32 *)];
414 };
415 struct freebsd32_aio_fsync_args {
416         char op_l_[PADL_(int)]; int op; char op_r_[PADR_(int)];
417         char aiocbp_l_[PADL_(struct aiocb32 *)]; struct aiocb32 * aiocbp; char aiocbp_r_[PADR_(struct aiocb32 *)];
418 };
419 #ifdef PAD64_REQUIRED
420 struct freebsd32_pread_args {
421         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
422         char buf_l_[PADL_(void *)]; void * buf; char buf_r_[PADR_(void *)];
423         char nbyte_l_[PADL_(size_t)]; size_t nbyte; char nbyte_r_[PADR_(size_t)];
424         char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
425         char offset1_l_[PADL_(u_int32_t)]; u_int32_t offset1; char offset1_r_[PADR_(u_int32_t)];
426         char offset2_l_[PADL_(u_int32_t)]; u_int32_t offset2; char offset2_r_[PADR_(u_int32_t)];
427 };
428 struct freebsd32_pwrite_args {
429         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
430         char buf_l_[PADL_(const void *)]; const void * buf; char buf_r_[PADR_(const void *)];
431         char nbyte_l_[PADL_(size_t)]; size_t nbyte; char nbyte_r_[PADR_(size_t)];
432         char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
433         char offset1_l_[PADL_(u_int32_t)]; u_int32_t offset1; char offset1_r_[PADR_(u_int32_t)];
434         char offset2_l_[PADL_(u_int32_t)]; u_int32_t offset2; char offset2_r_[PADR_(u_int32_t)];
435 };
436 struct freebsd32_mmap_args {
437         char addr_l_[PADL_(caddr_t)]; caddr_t addr; char addr_r_[PADR_(caddr_t)];
438         char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)];
439         char prot_l_[PADL_(int)]; int prot; char prot_r_[PADR_(int)];
440         char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
441         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
442         char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
443         char pos1_l_[PADL_(u_int32_t)]; u_int32_t pos1; char pos1_r_[PADR_(u_int32_t)];
444         char pos2_l_[PADL_(u_int32_t)]; u_int32_t pos2; char pos2_r_[PADR_(u_int32_t)];
445 };
446 struct freebsd32_lseek_args {
447         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
448         char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
449         char offset1_l_[PADL_(u_int32_t)]; u_int32_t offset1; char offset1_r_[PADR_(u_int32_t)];
450         char offset2_l_[PADL_(u_int32_t)]; u_int32_t offset2; char offset2_r_[PADR_(u_int32_t)];
451         char whence_l_[PADL_(int)]; int whence; char whence_r_[PADR_(int)];
452 };
453 struct freebsd32_truncate_args {
454         char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
455         char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
456         char length1_l_[PADL_(u_int32_t)]; u_int32_t length1; char length1_r_[PADR_(u_int32_t)];
457         char length2_l_[PADL_(u_int32_t)]; u_int32_t length2; char length2_r_[PADR_(u_int32_t)];
458 };
459 struct freebsd32_ftruncate_args {
460         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
461         char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
462         char length1_l_[PADL_(u_int32_t)]; u_int32_t length1; char length1_r_[PADR_(u_int32_t)];
463         char length2_l_[PADL_(u_int32_t)]; u_int32_t length2; char length2_r_[PADR_(u_int32_t)];
464 };
465 #else
466 struct freebsd32_pread_args {
467         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
468         char buf_l_[PADL_(void *)]; void * buf; char buf_r_[PADR_(void *)];
469         char nbyte_l_[PADL_(size_t)]; size_t nbyte; char nbyte_r_[PADR_(size_t)];
470         char offset1_l_[PADL_(u_int32_t)]; u_int32_t offset1; char offset1_r_[PADR_(u_int32_t)];
471         char offset2_l_[PADL_(u_int32_t)]; u_int32_t offset2; char offset2_r_[PADR_(u_int32_t)];
472 };
473 struct freebsd32_pwrite_args {
474         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
475         char buf_l_[PADL_(const void *)]; const void * buf; char buf_r_[PADR_(const void *)];
476         char nbyte_l_[PADL_(size_t)]; size_t nbyte; char nbyte_r_[PADR_(size_t)];
477         char offset1_l_[PADL_(u_int32_t)]; u_int32_t offset1; char offset1_r_[PADR_(u_int32_t)];
478         char offset2_l_[PADL_(u_int32_t)]; u_int32_t offset2; char offset2_r_[PADR_(u_int32_t)];
479 };
480 struct freebsd32_mmap_args {
481         char addr_l_[PADL_(caddr_t)]; caddr_t addr; char addr_r_[PADR_(caddr_t)];
482         char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)];
483         char prot_l_[PADL_(int)]; int prot; char prot_r_[PADR_(int)];
484         char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
485         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
486         char pos1_l_[PADL_(u_int32_t)]; u_int32_t pos1; char pos1_r_[PADR_(u_int32_t)];
487         char pos2_l_[PADL_(u_int32_t)]; u_int32_t pos2; char pos2_r_[PADR_(u_int32_t)];
488 };
489 struct freebsd32_lseek_args {
490         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
491         char offset1_l_[PADL_(u_int32_t)]; u_int32_t offset1; char offset1_r_[PADR_(u_int32_t)];
492         char offset2_l_[PADL_(u_int32_t)]; u_int32_t offset2; char offset2_r_[PADR_(u_int32_t)];
493         char whence_l_[PADL_(int)]; int whence; char whence_r_[PADR_(int)];
494 };
495 struct freebsd32_truncate_args {
496         char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
497         char length1_l_[PADL_(u_int32_t)]; u_int32_t length1; char length1_r_[PADR_(u_int32_t)];
498         char length2_l_[PADL_(u_int32_t)]; u_int32_t length2; char length2_r_[PADR_(u_int32_t)];
499 };
500 struct freebsd32_ftruncate_args {
501         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
502         char length1_l_[PADL_(u_int32_t)]; u_int32_t length1; char length1_r_[PADR_(u_int32_t)];
503         char length2_l_[PADL_(u_int32_t)]; u_int32_t length2; char length2_r_[PADR_(u_int32_t)];
504 };
505 #endif
506 #ifdef PAD64_REQUIRED
507 struct freebsd32_cpuset_setid_args {
508         char which_l_[PADL_(cpuwhich_t)]; cpuwhich_t which; char which_r_[PADR_(cpuwhich_t)];
509         char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
510         char id1_l_[PADL_(u_int32_t)]; u_int32_t id1; char id1_r_[PADR_(u_int32_t)];
511         char id2_l_[PADL_(u_int32_t)]; u_int32_t id2; char id2_r_[PADR_(u_int32_t)];
512         char setid_l_[PADL_(cpusetid_t)]; cpusetid_t setid; char setid_r_[PADR_(cpusetid_t)];
513 };
514 #else
515 struct freebsd32_cpuset_setid_args {
516         char which_l_[PADL_(cpuwhich_t)]; cpuwhich_t which; char which_r_[PADR_(cpuwhich_t)];
517         char id1_l_[PADL_(u_int32_t)]; u_int32_t id1; char id1_r_[PADR_(u_int32_t)];
518         char id2_l_[PADL_(u_int32_t)]; u_int32_t id2; char id2_r_[PADR_(u_int32_t)];
519         char setid_l_[PADL_(cpusetid_t)]; cpusetid_t setid; char setid_r_[PADR_(cpusetid_t)];
520 };
521 #endif
522 struct freebsd32_cpuset_getid_args {
523         char level_l_[PADL_(cpulevel_t)]; cpulevel_t level; char level_r_[PADR_(cpulevel_t)];
524         char which_l_[PADL_(cpuwhich_t)]; cpuwhich_t which; char which_r_[PADR_(cpuwhich_t)];
525         char id1_l_[PADL_(u_int32_t)]; u_int32_t id1; char id1_r_[PADR_(u_int32_t)];
526         char id2_l_[PADL_(u_int32_t)]; u_int32_t id2; char id2_r_[PADR_(u_int32_t)];
527         char setid_l_[PADL_(cpusetid_t *)]; cpusetid_t * setid; char setid_r_[PADR_(cpusetid_t *)];
528 };
529 struct freebsd32_cpuset_getaffinity_args {
530         char level_l_[PADL_(cpulevel_t)]; cpulevel_t level; char level_r_[PADR_(cpulevel_t)];
531         char which_l_[PADL_(cpuwhich_t)]; cpuwhich_t which; char which_r_[PADR_(cpuwhich_t)];
532         char id1_l_[PADL_(u_int32_t)]; u_int32_t id1; char id1_r_[PADR_(u_int32_t)];
533         char id2_l_[PADL_(u_int32_t)]; u_int32_t id2; char id2_r_[PADR_(u_int32_t)];
534         char cpusetsize_l_[PADL_(size_t)]; size_t cpusetsize; char cpusetsize_r_[PADR_(size_t)];
535         char mask_l_[PADL_(cpuset_t *)]; cpuset_t * mask; char mask_r_[PADR_(cpuset_t *)];
536 };
537 struct freebsd32_cpuset_setaffinity_args {
538         char level_l_[PADL_(cpulevel_t)]; cpulevel_t level; char level_r_[PADR_(cpulevel_t)];
539         char which_l_[PADL_(cpuwhich_t)]; cpuwhich_t which; char which_r_[PADR_(cpuwhich_t)];
540         char id1_l_[PADL_(u_int32_t)]; u_int32_t id1; char id1_r_[PADR_(u_int32_t)];
541         char id2_l_[PADL_(u_int32_t)]; u_int32_t id2; char id2_r_[PADR_(u_int32_t)];
542         char cpusetsize_l_[PADL_(size_t)]; size_t cpusetsize; char cpusetsize_r_[PADR_(size_t)];
543         char mask_l_[PADL_(const cpuset_t *)]; const cpuset_t * mask; char mask_r_[PADR_(const cpuset_t *)];
544 };
545 struct freebsd32_fexecve_args {
546         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
547         char argv_l_[PADL_(u_int32_t *)]; u_int32_t * argv; char argv_r_[PADR_(u_int32_t *)];
548         char envv_l_[PADL_(u_int32_t *)]; u_int32_t * envv; char envv_r_[PADR_(u_int32_t *)];
549 };
550 struct freebsd32_fstatat_args {
551         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
552         char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
553         char buf_l_[PADL_(struct stat *)]; struct stat * buf; char buf_r_[PADR_(struct stat *)];
554         char flag_l_[PADL_(int)]; int flag; char flag_r_[PADR_(int)];
555 };
556 struct freebsd32_futimesat_args {
557         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
558         char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
559         char times_l_[PADL_(struct timeval *)]; struct timeval * times; char times_r_[PADR_(struct timeval *)];
560 };
561 struct freebsd32_jail_get_args {
562         char iovp_l_[PADL_(struct iovec32 *)]; struct iovec32 * iovp; char iovp_r_[PADR_(struct iovec32 *)];
563         char iovcnt_l_[PADL_(unsigned int)]; unsigned int iovcnt; char iovcnt_r_[PADR_(unsigned int)];
564         char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
565 };
566 struct freebsd32_jail_set_args {
567         char iovp_l_[PADL_(struct iovec32 *)]; struct iovec32 * iovp; char iovp_r_[PADR_(struct iovec32 *)];
568         char iovcnt_l_[PADL_(unsigned int)]; unsigned int iovcnt; char iovcnt_r_[PADR_(unsigned int)];
569         char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
570 };
571 struct freebsd32_semctl_args {
572         char semid_l_[PADL_(int)]; int semid; char semid_r_[PADR_(int)];
573         char semnum_l_[PADL_(int)]; int semnum; char semnum_r_[PADR_(int)];
574         char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)];
575         char arg_l_[PADL_(union semun32 *)]; union semun32 * arg; char arg_r_[PADR_(union semun32 *)];
576 };
577 struct freebsd32_msgctl_args {
578         char msqid_l_[PADL_(int)]; int msqid; char msqid_r_[PADR_(int)];
579         char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)];
580         char buf_l_[PADL_(struct msqid_ds32 *)]; struct msqid_ds32 * buf; char buf_r_[PADR_(struct msqid_ds32 *)];
581 };
582 struct freebsd32_shmctl_args {
583         char shmid_l_[PADL_(int)]; int shmid; char shmid_r_[PADR_(int)];
584         char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)];
585         char buf_l_[PADL_(struct shmid_ds32 *)]; struct shmid_ds32 * buf; char buf_r_[PADR_(struct shmid_ds32 *)];
586 };
587 struct freebsd32_pselect_args {
588         char nd_l_[PADL_(int)]; int nd; char nd_r_[PADR_(int)];
589         char in_l_[PADL_(fd_set *)]; fd_set * in; char in_r_[PADR_(fd_set *)];
590         char ou_l_[PADL_(fd_set *)]; fd_set * ou; char ou_r_[PADR_(fd_set *)];
591         char ex_l_[PADL_(fd_set *)]; fd_set * ex; char ex_r_[PADR_(fd_set *)];
592         char ts_l_[PADL_(const struct timespec32 *)]; const struct timespec32 * ts; char ts_r_[PADR_(const struct timespec32 *)];
593         char sm_l_[PADL_(const sigset_t *)]; const sigset_t * sm; char sm_r_[PADR_(const sigset_t *)];
594 };
595 #ifdef PAD64_REQUIRED
596 struct freebsd32_posix_fallocate_args {
597         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
598         char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
599         char offset1_l_[PADL_(uint32_t)]; uint32_t offset1; char offset1_r_[PADR_(uint32_t)];
600         char offset2_l_[PADL_(uint32_t)]; uint32_t offset2; char offset2_r_[PADR_(uint32_t)];
601         char len1_l_[PADL_(uint32_t)]; uint32_t len1; char len1_r_[PADR_(uint32_t)];
602         char len2_l_[PADL_(uint32_t)]; uint32_t len2; char len2_r_[PADR_(uint32_t)];
603 };
604 struct freebsd32_posix_fadvise_args {
605         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
606         char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
607         char offset1_l_[PADL_(uint32_t)]; uint32_t offset1; char offset1_r_[PADR_(uint32_t)];
608         char offset2_l_[PADL_(uint32_t)]; uint32_t offset2; char offset2_r_[PADR_(uint32_t)];
609         char len1_l_[PADL_(uint32_t)]; uint32_t len1; char len1_r_[PADR_(uint32_t)];
610         char len2_l_[PADL_(uint32_t)]; uint32_t len2; char len2_r_[PADR_(uint32_t)];
611         char advice_l_[PADL_(int)]; int advice; char advice_r_[PADR_(int)];
612 };
613 struct freebsd32_wait6_args {
614         char idtype_l_[PADL_(int)]; int idtype; char idtype_r_[PADR_(int)];
615         char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
616         char id1_l_[PADL_(uint32_t)]; uint32_t id1; char id1_r_[PADR_(uint32_t)];
617         char id2_l_[PADL_(uint32_t)]; uint32_t id2; char id2_r_[PADR_(uint32_t)];
618         char status_l_[PADL_(int *)]; int * status; char status_r_[PADR_(int *)];
619         char options_l_[PADL_(int)]; int options; char options_r_[PADR_(int)];
620         char wrusage_l_[PADL_(struct wrusage32 *)]; struct wrusage32 * wrusage; char wrusage_r_[PADR_(struct wrusage32 *)];
621         char info_l_[PADL_(siginfo_t *)]; siginfo_t * info; char info_r_[PADR_(siginfo_t *)];
622 };
623 #else
624 struct freebsd32_posix_fallocate_args {
625         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
626         char offset1_l_[PADL_(uint32_t)]; uint32_t offset1; char offset1_r_[PADR_(uint32_t)];
627         char offset2_l_[PADL_(uint32_t)]; uint32_t offset2; char offset2_r_[PADR_(uint32_t)];
628         char len1_l_[PADL_(uint32_t)]; uint32_t len1; char len1_r_[PADR_(uint32_t)];
629         char len2_l_[PADL_(uint32_t)]; uint32_t len2; char len2_r_[PADR_(uint32_t)];
630 };
631 struct freebsd32_posix_fadvise_args {
632         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
633         char offset1_l_[PADL_(uint32_t)]; uint32_t offset1; char offset1_r_[PADR_(uint32_t)];
634         char offset2_l_[PADL_(uint32_t)]; uint32_t offset2; char offset2_r_[PADR_(uint32_t)];
635         char len1_l_[PADL_(uint32_t)]; uint32_t len1; char len1_r_[PADR_(uint32_t)];
636         char len2_l_[PADL_(uint32_t)]; uint32_t len2; char len2_r_[PADR_(uint32_t)];
637         char advice_l_[PADL_(int)]; int advice; char advice_r_[PADR_(int)];
638 };
639 struct freebsd32_wait6_args {
640         char idtype_l_[PADL_(int)]; int idtype; char idtype_r_[PADR_(int)];
641         char id1_l_[PADL_(uint32_t)]; uint32_t id1; char id1_r_[PADR_(uint32_t)];
642         char id2_l_[PADL_(uint32_t)]; uint32_t id2; char id2_r_[PADR_(uint32_t)];
643         char status_l_[PADL_(int *)]; int * status; char status_r_[PADR_(int *)];
644         char options_l_[PADL_(int)]; int options; char options_r_[PADR_(int)];
645         char wrusage_l_[PADL_(struct wrusage32 *)]; struct wrusage32 * wrusage; char wrusage_r_[PADR_(struct wrusage32 *)];
646         char info_l_[PADL_(siginfo_t *)]; siginfo_t * info; char info_r_[PADR_(siginfo_t *)];
647 };
648 #endif
649 #if !defined(PAD64_REQUIRED) && defined(__powerpc__)
650 #define PAD64_REQUIRED
651 #endif
652 int     freebsd32_wait4(struct thread *, struct freebsd32_wait4_args *);
653 int     freebsd32_recvmsg(struct thread *, struct freebsd32_recvmsg_args *);
654 int     freebsd32_sendmsg(struct thread *, struct freebsd32_sendmsg_args *);
655 int     freebsd32_recvfrom(struct thread *, struct freebsd32_recvfrom_args *);
656 int     freebsd32_sigaltstack(struct thread *, struct freebsd32_sigaltstack_args *);
657 int     freebsd32_ioctl(struct thread *, struct freebsd32_ioctl_args *);
658 int     freebsd32_execve(struct thread *, struct freebsd32_execve_args *);
659 int     freebsd32_mprotect(struct thread *, struct freebsd32_mprotect_args *);
660 int     freebsd32_setitimer(struct thread *, struct freebsd32_setitimer_args *);
661 int     freebsd32_getitimer(struct thread *, struct freebsd32_getitimer_args *);
662 int     freebsd32_select(struct thread *, struct freebsd32_select_args *);
663 int     freebsd32_gettimeofday(struct thread *, struct freebsd32_gettimeofday_args *);
664 int     freebsd32_getrusage(struct thread *, struct freebsd32_getrusage_args *);
665 int     freebsd32_readv(struct thread *, struct freebsd32_readv_args *);
666 int     freebsd32_writev(struct thread *, struct freebsd32_writev_args *);
667 int     freebsd32_settimeofday(struct thread *, struct freebsd32_settimeofday_args *);
668 int     freebsd32_utimes(struct thread *, struct freebsd32_utimes_args *);
669 int     freebsd32_adjtime(struct thread *, struct freebsd32_adjtime_args *);
670 int     freebsd32_sysarch(struct thread *, struct freebsd32_sysarch_args *);
671 int     freebsd32_semsys(struct thread *, struct freebsd32_semsys_args *);
672 int     freebsd32_msgsys(struct thread *, struct freebsd32_msgsys_args *);
673 int     freebsd32_shmsys(struct thread *, struct freebsd32_shmsys_args *);
674 int     freebsd32_stat(struct thread *, struct freebsd32_stat_args *);
675 int     freebsd32_fstat(struct thread *, struct freebsd32_fstat_args *);
676 int     freebsd32_lstat(struct thread *, struct freebsd32_lstat_args *);
677 int     freebsd32_getdirentries(struct thread *, struct freebsd32_getdirentries_args *);
678 int     freebsd32_sysctl(struct thread *, struct freebsd32_sysctl_args *);
679 int     freebsd32_futimes(struct thread *, struct freebsd32_futimes_args *);
680 int     freebsd32_msgsnd(struct thread *, struct freebsd32_msgsnd_args *);
681 int     freebsd32_msgrcv(struct thread *, struct freebsd32_msgrcv_args *);
682 int     freebsd32_clock_gettime(struct thread *, struct freebsd32_clock_gettime_args *);
683 int     freebsd32_clock_settime(struct thread *, struct freebsd32_clock_settime_args *);
684 int     freebsd32_clock_getres(struct thread *, struct freebsd32_clock_getres_args *);
685 int     freebsd32_ktimer_create(struct thread *, struct freebsd32_ktimer_create_args *);
686 int     freebsd32_ktimer_settime(struct thread *, struct freebsd32_ktimer_settime_args *);
687 int     freebsd32_ktimer_gettime(struct thread *, struct freebsd32_ktimer_gettime_args *);
688 int     freebsd32_nanosleep(struct thread *, struct freebsd32_nanosleep_args *);
689 int     freebsd32_aio_read(struct thread *, struct freebsd32_aio_read_args *);
690 int     freebsd32_aio_write(struct thread *, struct freebsd32_aio_write_args *);
691 int     freebsd32_lio_listio(struct thread *, struct freebsd32_lio_listio_args *);
692 int     freebsd32_lutimes(struct thread *, struct freebsd32_lutimes_args *);
693 int     freebsd32_preadv(struct thread *, struct freebsd32_preadv_args *);
694 int     freebsd32_pwritev(struct thread *, struct freebsd32_pwritev_args *);
695 int     freebsd32_modstat(struct thread *, struct freebsd32_modstat_args *);
696 int     freebsd32_kldstat(struct thread *, struct freebsd32_kldstat_args *);
697 int     freebsd32_aio_return(struct thread *, struct freebsd32_aio_return_args *);
698 int     freebsd32_aio_suspend(struct thread *, struct freebsd32_aio_suspend_args *);
699 int     freebsd32_aio_cancel(struct thread *, struct freebsd32_aio_cancel_args *);
700 int     freebsd32_aio_error(struct thread *, struct freebsd32_aio_error_args *);
701 int     freebsd32_oaio_read(struct thread *, struct freebsd32_oaio_read_args *);
702 int     freebsd32_oaio_write(struct thread *, struct freebsd32_oaio_write_args *);
703 int     freebsd32_olio_listio(struct thread *, struct freebsd32_olio_listio_args *);
704 int     freebsd32_jail(struct thread *, struct freebsd32_jail_args *);
705 int     freebsd32_sigtimedwait(struct thread *, struct freebsd32_sigtimedwait_args *);
706 int     freebsd32_sigwaitinfo(struct thread *, struct freebsd32_sigwaitinfo_args *);
707 int     freebsd32_aio_waitcomplete(struct thread *, struct freebsd32_aio_waitcomplete_args *);
708 int     freebsd32_kevent(struct thread *, struct freebsd32_kevent_args *);
709 int     freebsd32_nmount(struct thread *, struct freebsd32_nmount_args *);
710 int     freebsd32_sendfile(struct thread *, struct freebsd32_sendfile_args *);
711 int     freebsd32_ksem_init(struct thread *, struct freebsd32_ksem_init_args *);
712 int     freebsd32_ksem_open(struct thread *, struct freebsd32_ksem_open_args *);
713 int     freebsd32_sigaction(struct thread *, struct freebsd32_sigaction_args *);
714 int     freebsd32_sigreturn(struct thread *, struct freebsd32_sigreturn_args *);
715 int     freebsd32_getcontext(struct thread *, struct freebsd32_getcontext_args *);
716 int     freebsd32_setcontext(struct thread *, struct freebsd32_setcontext_args *);
717 int     freebsd32_swapcontext(struct thread *, struct freebsd32_swapcontext_args *);
718 int     freebsd32_umtx_lock(struct thread *, struct freebsd32_umtx_lock_args *);
719 int     freebsd32_umtx_unlock(struct thread *, struct freebsd32_umtx_unlock_args *);
720 int     freebsd32_ksem_timedwait(struct thread *, struct freebsd32_ksem_timedwait_args *);
721 int     freebsd32_thr_suspend(struct thread *, struct freebsd32_thr_suspend_args *);
722 int     freebsd32_umtx_op(struct thread *, struct freebsd32_umtx_op_args *);
723 int     freebsd32_thr_new(struct thread *, struct freebsd32_thr_new_args *);
724 int     freebsd32_kmq_open(struct thread *, struct freebsd32_kmq_open_args *);
725 int     freebsd32_kmq_setattr(struct thread *, struct freebsd32_kmq_setattr_args *);
726 int     freebsd32_kmq_timedreceive(struct thread *, struct freebsd32_kmq_timedreceive_args *);
727 int     freebsd32_kmq_timedsend(struct thread *, struct freebsd32_kmq_timedsend_args *);
728 int     freebsd32_kmq_notify(struct thread *, struct freebsd32_kmq_notify_args *);
729 int     freebsd32_aio_fsync(struct thread *, struct freebsd32_aio_fsync_args *);
730 #ifdef PAD64_REQUIRED
731 int     freebsd32_pread(struct thread *, struct freebsd32_pread_args *);
732 int     freebsd32_pwrite(struct thread *, struct freebsd32_pwrite_args *);
733 int     freebsd32_mmap(struct thread *, struct freebsd32_mmap_args *);
734 int     freebsd32_lseek(struct thread *, struct freebsd32_lseek_args *);
735 int     freebsd32_truncate(struct thread *, struct freebsd32_truncate_args *);
736 int     freebsd32_ftruncate(struct thread *, struct freebsd32_ftruncate_args *);
737 #else
738 int     freebsd32_pread(struct thread *, struct freebsd32_pread_args *);
739 int     freebsd32_pwrite(struct thread *, struct freebsd32_pwrite_args *);
740 int     freebsd32_mmap(struct thread *, struct freebsd32_mmap_args *);
741 int     freebsd32_lseek(struct thread *, struct freebsd32_lseek_args *);
742 int     freebsd32_truncate(struct thread *, struct freebsd32_truncate_args *);
743 int     freebsd32_ftruncate(struct thread *, struct freebsd32_ftruncate_args *);
744 #endif
745 #ifdef PAD64_REQUIRED
746 int     freebsd32_cpuset_setid(struct thread *, struct freebsd32_cpuset_setid_args *);
747 #else
748 int     freebsd32_cpuset_setid(struct thread *, struct freebsd32_cpuset_setid_args *);
749 #endif
750 int     freebsd32_cpuset_getid(struct thread *, struct freebsd32_cpuset_getid_args *);
751 int     freebsd32_cpuset_getaffinity(struct thread *, struct freebsd32_cpuset_getaffinity_args *);
752 int     freebsd32_cpuset_setaffinity(struct thread *, struct freebsd32_cpuset_setaffinity_args *);
753 int     freebsd32_fexecve(struct thread *, struct freebsd32_fexecve_args *);
754 int     freebsd32_fstatat(struct thread *, struct freebsd32_fstatat_args *);
755 int     freebsd32_futimesat(struct thread *, struct freebsd32_futimesat_args *);
756 int     freebsd32_jail_get(struct thread *, struct freebsd32_jail_get_args *);
757 int     freebsd32_jail_set(struct thread *, struct freebsd32_jail_set_args *);
758 int     freebsd32_semctl(struct thread *, struct freebsd32_semctl_args *);
759 int     freebsd32_msgctl(struct thread *, struct freebsd32_msgctl_args *);
760 int     freebsd32_shmctl(struct thread *, struct freebsd32_shmctl_args *);
761 int     freebsd32_pselect(struct thread *, struct freebsd32_pselect_args *);
762 #ifdef PAD64_REQUIRED
763 int     freebsd32_posix_fallocate(struct thread *, struct freebsd32_posix_fallocate_args *);
764 int     freebsd32_posix_fadvise(struct thread *, struct freebsd32_posix_fadvise_args *);
765 int     freebsd32_wait6(struct thread *, struct freebsd32_wait6_args *);
766 #else
767 int     freebsd32_posix_fallocate(struct thread *, struct freebsd32_posix_fallocate_args *);
768 int     freebsd32_posix_fadvise(struct thread *, struct freebsd32_posix_fadvise_args *);
769 int     freebsd32_wait6(struct thread *, struct freebsd32_wait6_args *);
770 #endif
771
772 #ifdef COMPAT_43
773
774 #if !defined(PAD64_REQUIRED) && defined(__powerpc__)
775 #define PAD64_REQUIRED
776 #endif
777 struct ofreebsd32_lseek_args {
778         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
779         char offset_l_[PADL_(int)]; int offset; char offset_r_[PADR_(int)];
780         char whence_l_[PADL_(int)]; int whence; char whence_r_[PADR_(int)];
781 };
782 struct ofreebsd32_stat_args {
783         char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
784         char ub_l_[PADL_(struct ostat32 *)]; struct ostat32 * ub; char ub_r_[PADR_(struct ostat32 *)];
785 };
786 struct ofreebsd32_lstat_args {
787         char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
788         char ub_l_[PADL_(struct ostat *)]; struct ostat * ub; char ub_r_[PADR_(struct ostat *)];
789 };
790 struct ofreebsd32_sigaction_args {
791         char signum_l_[PADL_(int)]; int signum; char signum_r_[PADR_(int)];
792         char nsa_l_[PADL_(struct osigaction32 *)]; struct osigaction32 * nsa; char nsa_r_[PADR_(struct osigaction32 *)];
793         char osa_l_[PADL_(struct osigaction32 *)]; struct osigaction32 * osa; char osa_r_[PADR_(struct osigaction32 *)];
794 };
795 struct ofreebsd32_sigprocmask_args {
796         char how_l_[PADL_(int)]; int how; char how_r_[PADR_(int)];
797         char mask_l_[PADL_(osigset_t)]; osigset_t mask; char mask_r_[PADR_(osigset_t)];
798 };
799 struct ofreebsd32_fstat_args {
800         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
801         char ub_l_[PADL_(struct ostat32 *)]; struct ostat32 * ub; char ub_r_[PADR_(struct ostat32 *)];
802 };
803 struct ofreebsd32_getpagesize_args {
804         char dummy_l_[PADL_(int32_t)]; int32_t dummy; char dummy_r_[PADR_(int32_t)];
805 };
806 struct ofreebsd32_sigreturn_args {
807         char sigcntxp_l_[PADL_(struct ia32_sigcontext3 *)]; struct ia32_sigcontext3 * sigcntxp; char sigcntxp_r_[PADR_(struct ia32_sigcontext3 *)];
808 };
809 struct ofreebsd32_sigvec_args {
810         char signum_l_[PADL_(int)]; int signum; char signum_r_[PADR_(int)];
811         char nsv_l_[PADL_(struct sigvec32 *)]; struct sigvec32 * nsv; char nsv_r_[PADR_(struct sigvec32 *)];
812         char osv_l_[PADL_(struct sigvec32 *)]; struct sigvec32 * osv; char osv_r_[PADR_(struct sigvec32 *)];
813 };
814 struct ofreebsd32_sigblock_args {
815         char mask_l_[PADL_(int)]; int mask; char mask_r_[PADR_(int)];
816 };
817 struct ofreebsd32_sigsetmask_args {
818         char mask_l_[PADL_(int)]; int mask; char mask_r_[PADR_(int)];
819 };
820 struct ofreebsd32_sigsuspend_args {
821         char mask_l_[PADL_(int)]; int mask; char mask_r_[PADR_(int)];
822 };
823 struct ofreebsd32_sigstack_args {
824         char nss_l_[PADL_(struct sigstack32 *)]; struct sigstack32 * nss; char nss_r_[PADR_(struct sigstack32 *)];
825         char oss_l_[PADL_(struct sigstack32 *)]; struct sigstack32 * oss; char oss_r_[PADR_(struct sigstack32 *)];
826 };
827 struct ofreebsd32_getdirentries_args {
828         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
829         char buf_l_[PADL_(char *)]; char * buf; char buf_r_[PADR_(char *)];
830         char count_l_[PADL_(u_int)]; u_int count; char count_r_[PADR_(u_int)];
831         char basep_l_[PADL_(uint32_t *)]; uint32_t * basep; char basep_r_[PADR_(uint32_t *)];
832 };
833 #ifdef PAD64_REQUIRED
834 #else
835 #endif
836 #ifdef PAD64_REQUIRED
837 #else
838 #endif
839 #ifdef PAD64_REQUIRED
840 #else
841 #endif
842 int     ofreebsd32_lseek(struct thread *, struct ofreebsd32_lseek_args *);
843 int     ofreebsd32_stat(struct thread *, struct ofreebsd32_stat_args *);
844 int     ofreebsd32_lstat(struct thread *, struct ofreebsd32_lstat_args *);
845 int     ofreebsd32_sigaction(struct thread *, struct ofreebsd32_sigaction_args *);
846 int     ofreebsd32_sigprocmask(struct thread *, struct ofreebsd32_sigprocmask_args *);
847 int     ofreebsd32_sigpending(struct thread *, struct ofreebsd32_sigpending_args *);
848 int     ofreebsd32_fstat(struct thread *, struct ofreebsd32_fstat_args *);
849 int     ofreebsd32_getpagesize(struct thread *, struct ofreebsd32_getpagesize_args *);
850 int     ofreebsd32_sigreturn(struct thread *, struct ofreebsd32_sigreturn_args *);
851 int     ofreebsd32_sigvec(struct thread *, struct ofreebsd32_sigvec_args *);
852 int     ofreebsd32_sigblock(struct thread *, struct ofreebsd32_sigblock_args *);
853 int     ofreebsd32_sigsetmask(struct thread *, struct ofreebsd32_sigsetmask_args *);
854 int     ofreebsd32_sigsuspend(struct thread *, struct ofreebsd32_sigsuspend_args *);
855 int     ofreebsd32_sigstack(struct thread *, struct ofreebsd32_sigstack_args *);
856 int     ofreebsd32_getdirentries(struct thread *, struct ofreebsd32_getdirentries_args *);
857
858 #endif /* COMPAT_43 */
859
860
861 #ifdef COMPAT_FREEBSD4
862
863 #if !defined(PAD64_REQUIRED) && defined(__powerpc__)
864 #define PAD64_REQUIRED
865 #endif
866 struct freebsd4_freebsd32_getfsstat_args {
867         char buf_l_[PADL_(struct statfs32 *)]; struct statfs32 * buf; char buf_r_[PADR_(struct statfs32 *)];
868         char bufsize_l_[PADL_(long)]; long bufsize; char bufsize_r_[PADR_(long)];
869         char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
870 };
871 struct freebsd4_freebsd32_statfs_args {
872         char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
873         char buf_l_[PADL_(struct statfs32 *)]; struct statfs32 * buf; char buf_r_[PADR_(struct statfs32 *)];
874 };
875 struct freebsd4_freebsd32_fstatfs_args {
876         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
877         char buf_l_[PADL_(struct statfs32 *)]; struct statfs32 * buf; char buf_r_[PADR_(struct statfs32 *)];
878 };
879 struct freebsd4_freebsd32_fhstatfs_args {
880         char u_fhp_l_[PADL_(const struct fhandle *)]; const struct fhandle * u_fhp; char u_fhp_r_[PADR_(const struct fhandle *)];
881         char buf_l_[PADL_(struct statfs32 *)]; struct statfs32 * buf; char buf_r_[PADR_(struct statfs32 *)];
882 };
883 struct freebsd4_freebsd32_sendfile_args {
884         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
885         char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)];
886         char offset1_l_[PADL_(u_int32_t)]; u_int32_t offset1; char offset1_r_[PADR_(u_int32_t)];
887         char offset2_l_[PADL_(u_int32_t)]; u_int32_t offset2; char offset2_r_[PADR_(u_int32_t)];
888         char nbytes_l_[PADL_(size_t)]; size_t nbytes; char nbytes_r_[PADR_(size_t)];
889         char hdtr_l_[PADL_(struct sf_hdtr32 *)]; struct sf_hdtr32 * hdtr; char hdtr_r_[PADR_(struct sf_hdtr32 *)];
890         char sbytes_l_[PADL_(off_t *)]; off_t * sbytes; char sbytes_r_[PADR_(off_t *)];
891         char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
892 };
893 struct freebsd4_freebsd32_sigaction_args {
894         char sig_l_[PADL_(int)]; int sig; char sig_r_[PADR_(int)];
895         char act_l_[PADL_(struct sigaction32 *)]; struct sigaction32 * act; char act_r_[PADR_(struct sigaction32 *)];
896         char oact_l_[PADL_(struct sigaction32 *)]; struct sigaction32 * oact; char oact_r_[PADR_(struct sigaction32 *)];
897 };
898 struct freebsd4_freebsd32_sigreturn_args {
899         char sigcntxp_l_[PADL_(const struct freebsd4_freebsd32_ucontext *)]; const struct freebsd4_freebsd32_ucontext * sigcntxp; char sigcntxp_r_[PADR_(const struct freebsd4_freebsd32_ucontext *)];
900 };
901 #ifdef PAD64_REQUIRED
902 #else
903 #endif
904 #ifdef PAD64_REQUIRED
905 #else
906 #endif
907 #ifdef PAD64_REQUIRED
908 #else
909 #endif
910 int     freebsd4_freebsd32_getfsstat(struct thread *, struct freebsd4_freebsd32_getfsstat_args *);
911 int     freebsd4_freebsd32_statfs(struct thread *, struct freebsd4_freebsd32_statfs_args *);
912 int     freebsd4_freebsd32_fstatfs(struct thread *, struct freebsd4_freebsd32_fstatfs_args *);
913 int     freebsd4_freebsd32_fhstatfs(struct thread *, struct freebsd4_freebsd32_fhstatfs_args *);
914 int     freebsd4_freebsd32_sendfile(struct thread *, struct freebsd4_freebsd32_sendfile_args *);
915 int     freebsd4_freebsd32_sigaction(struct thread *, struct freebsd4_freebsd32_sigaction_args *);
916 int     freebsd4_freebsd32_sigreturn(struct thread *, struct freebsd4_freebsd32_sigreturn_args *);
917
918 #endif /* COMPAT_FREEBSD4 */
919
920
921 #ifdef COMPAT_FREEBSD6
922
923 #if !defined(PAD64_REQUIRED) && defined(__powerpc__)
924 #define PAD64_REQUIRED
925 #endif
926 struct freebsd6_freebsd32_pread_args {
927         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
928         char buf_l_[PADL_(void *)]; void * buf; char buf_r_[PADR_(void *)];
929         char nbyte_l_[PADL_(size_t)]; size_t nbyte; char nbyte_r_[PADR_(size_t)];
930         char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
931         char offset1_l_[PADL_(u_int32_t)]; u_int32_t offset1; char offset1_r_[PADR_(u_int32_t)];
932         char offset2_l_[PADL_(u_int32_t)]; u_int32_t offset2; char offset2_r_[PADR_(u_int32_t)];
933 };
934 struct freebsd6_freebsd32_pwrite_args {
935         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
936         char buf_l_[PADL_(const void *)]; const void * buf; char buf_r_[PADR_(const void *)];
937         char nbyte_l_[PADL_(size_t)]; size_t nbyte; char nbyte_r_[PADR_(size_t)];
938         char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
939         char offset1_l_[PADL_(u_int32_t)]; u_int32_t offset1; char offset1_r_[PADR_(u_int32_t)];
940         char offset2_l_[PADL_(u_int32_t)]; u_int32_t offset2; char offset2_r_[PADR_(u_int32_t)];
941 };
942 struct freebsd6_freebsd32_mmap_args {
943         char addr_l_[PADL_(caddr_t)]; caddr_t addr; char addr_r_[PADR_(caddr_t)];
944         char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)];
945         char prot_l_[PADL_(int)]; int prot; char prot_r_[PADR_(int)];
946         char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
947         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
948         char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
949         char pos1_l_[PADL_(u_int32_t)]; u_int32_t pos1; char pos1_r_[PADR_(u_int32_t)];
950         char pos2_l_[PADL_(u_int32_t)]; u_int32_t pos2; char pos2_r_[PADR_(u_int32_t)];
951 };
952 struct freebsd6_freebsd32_lseek_args {
953         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
954         char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
955         char offset1_l_[PADL_(u_int32_t)]; u_int32_t offset1; char offset1_r_[PADR_(u_int32_t)];
956         char offset2_l_[PADL_(u_int32_t)]; u_int32_t offset2; char offset2_r_[PADR_(u_int32_t)];
957         char whence_l_[PADL_(int)]; int whence; char whence_r_[PADR_(int)];
958 };
959 struct freebsd6_freebsd32_truncate_args {
960         char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
961         char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
962         char length1_l_[PADL_(u_int32_t)]; u_int32_t length1; char length1_r_[PADR_(u_int32_t)];
963         char length2_l_[PADL_(u_int32_t)]; u_int32_t length2; char length2_r_[PADR_(u_int32_t)];
964 };
965 struct freebsd6_freebsd32_ftruncate_args {
966         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
967         char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
968         char length1_l_[PADL_(u_int32_t)]; u_int32_t length1; char length1_r_[PADR_(u_int32_t)];
969         char length2_l_[PADL_(u_int32_t)]; u_int32_t length2; char length2_r_[PADR_(u_int32_t)];
970 };
971 #ifdef PAD64_REQUIRED
972 #else
973 #endif
974 #ifdef PAD64_REQUIRED
975 #else
976 #endif
977 #ifdef PAD64_REQUIRED
978 #else
979 #endif
980 int     freebsd6_freebsd32_pread(struct thread *, struct freebsd6_freebsd32_pread_args *);
981 int     freebsd6_freebsd32_pwrite(struct thread *, struct freebsd6_freebsd32_pwrite_args *);
982 int     freebsd6_freebsd32_mmap(struct thread *, struct freebsd6_freebsd32_mmap_args *);
983 int     freebsd6_freebsd32_lseek(struct thread *, struct freebsd6_freebsd32_lseek_args *);
984 int     freebsd6_freebsd32_truncate(struct thread *, struct freebsd6_freebsd32_truncate_args *);
985 int     freebsd6_freebsd32_ftruncate(struct thread *, struct freebsd6_freebsd32_ftruncate_args *);
986
987 #endif /* COMPAT_FREEBSD6 */
988
989
990 #ifdef COMPAT_FREEBSD7
991
992 #if !defined(PAD64_REQUIRED) && defined(__powerpc__)
993 #define PAD64_REQUIRED
994 #endif
995 struct freebsd7_freebsd32_semctl_args {
996         char semid_l_[PADL_(int)]; int semid; char semid_r_[PADR_(int)];
997         char semnum_l_[PADL_(int)]; int semnum; char semnum_r_[PADR_(int)];
998         char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)];
999         char arg_l_[PADL_(union semun32 *)]; union semun32 * arg; char arg_r_[PADR_(union semun32 *)];
1000 };
1001 struct freebsd7_freebsd32_msgctl_args {
1002         char msqid_l_[PADL_(int)]; int msqid; char msqid_r_[PADR_(int)];
1003         char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)];
1004         char buf_l_[PADL_(struct msqid_ds32_old *)]; struct msqid_ds32_old * buf; char buf_r_[PADR_(struct msqid_ds32_old *)];
1005 };
1006 struct freebsd7_freebsd32_shmctl_args {
1007         char shmid_l_[PADL_(int)]; int shmid; char shmid_r_[PADR_(int)];
1008         char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)];
1009         char buf_l_[PADL_(struct shmid_ds32_old *)]; struct shmid_ds32_old * buf; char buf_r_[PADR_(struct shmid_ds32_old *)];
1010 };
1011 #ifdef PAD64_REQUIRED
1012 #else
1013 #endif
1014 #ifdef PAD64_REQUIRED
1015 #else
1016 #endif
1017 #ifdef PAD64_REQUIRED
1018 #else
1019 #endif
1020 int     freebsd7_freebsd32_semctl(struct thread *, struct freebsd7_freebsd32_semctl_args *);
1021 int     freebsd7_freebsd32_msgctl(struct thread *, struct freebsd7_freebsd32_msgctl_args *);
1022 int     freebsd7_freebsd32_shmctl(struct thread *, struct freebsd7_freebsd32_shmctl_args *);
1023
1024 #endif /* COMPAT_FREEBSD7 */
1025
1026 #define FREEBSD32_SYS_AUE_freebsd32_wait4       AUE_WAIT4
1027 #define FREEBSD32_SYS_AUE_freebsd4_freebsd32_getfsstat  AUE_GETFSSTAT
1028 #define FREEBSD32_SYS_AUE_ofreebsd32_lseek      AUE_LSEEK
1029 #define FREEBSD32_SYS_AUE_freebsd32_recvmsg     AUE_RECVMSG
1030 #define FREEBSD32_SYS_AUE_freebsd32_sendmsg     AUE_SENDMSG
1031 #define FREEBSD32_SYS_AUE_freebsd32_recvfrom    AUE_RECVFROM
1032 #define FREEBSD32_SYS_AUE_ofreebsd32_stat       AUE_STAT
1033 #define FREEBSD32_SYS_AUE_ofreebsd32_lstat      AUE_LSTAT
1034 #define FREEBSD32_SYS_AUE_ofreebsd32_sigaction  AUE_SIGACTION
1035 #define FREEBSD32_SYS_AUE_ofreebsd32_sigprocmask        AUE_SIGPROCMASK
1036 #define FREEBSD32_SYS_AUE_ofreebsd32_sigpending AUE_SIGPENDING
1037 #define FREEBSD32_SYS_AUE_freebsd32_sigaltstack AUE_SIGALTSTACK
1038 #define FREEBSD32_SYS_AUE_freebsd32_ioctl       AUE_NULL
1039 #define FREEBSD32_SYS_AUE_freebsd32_execve      AUE_EXECVE
1040 #define FREEBSD32_SYS_AUE_ofreebsd32_fstat      AUE_FSTAT
1041 #define FREEBSD32_SYS_AUE_ofreebsd32_getpagesize        AUE_NULL
1042 #define FREEBSD32_SYS_AUE_freebsd32_mprotect    AUE_MPROTECT
1043 #define FREEBSD32_SYS_AUE_freebsd32_setitimer   AUE_SETITIMER
1044 #define FREEBSD32_SYS_AUE_freebsd32_getitimer   AUE_GETITIMER
1045 #define FREEBSD32_SYS_AUE_freebsd32_select      AUE_SELECT
1046 #define FREEBSD32_SYS_AUE_ofreebsd32_sigreturn  AUE_NULL
1047 #define FREEBSD32_SYS_AUE_ofreebsd32_sigvec     AUE_O_SIGVEC
1048 #define FREEBSD32_SYS_AUE_ofreebsd32_sigblock   AUE_O_SIGBLOCK
1049 #define FREEBSD32_SYS_AUE_ofreebsd32_sigsetmask AUE_O_SIGSETMASK
1050 #define FREEBSD32_SYS_AUE_ofreebsd32_sigsuspend AUE_SIGSUSPEND
1051 #define FREEBSD32_SYS_AUE_ofreebsd32_sigstack   AUE_O_SIGSTACK
1052 #define FREEBSD32_SYS_AUE_freebsd32_gettimeofday        AUE_GETTIMEOFDAY
1053 #define FREEBSD32_SYS_AUE_freebsd32_getrusage   AUE_GETRUSAGE
1054 #define FREEBSD32_SYS_AUE_freebsd32_readv       AUE_READV
1055 #define FREEBSD32_SYS_AUE_freebsd32_writev      AUE_WRITEV
1056 #define FREEBSD32_SYS_AUE_freebsd32_settimeofday        AUE_SETTIMEOFDAY
1057 #define FREEBSD32_SYS_AUE_freebsd32_utimes      AUE_UTIMES
1058 #define FREEBSD32_SYS_AUE_freebsd32_adjtime     AUE_ADJTIME
1059 #define FREEBSD32_SYS_AUE_ofreebsd32_getdirentries      AUE_GETDIRENTRIES
1060 #define FREEBSD32_SYS_AUE_freebsd4_freebsd32_statfs     AUE_STATFS
1061 #define FREEBSD32_SYS_AUE_freebsd4_freebsd32_fstatfs    AUE_FSTATFS
1062 #define FREEBSD32_SYS_AUE_freebsd32_sysarch     AUE_SYSARCH
1063 #define FREEBSD32_SYS_AUE_freebsd32_semsys      AUE_SEMSYS
1064 #define FREEBSD32_SYS_AUE_freebsd32_msgsys      AUE_MSGSYS
1065 #define FREEBSD32_SYS_AUE_freebsd32_shmsys      AUE_SHMSYS
1066 #define FREEBSD32_SYS_AUE_freebsd6_freebsd32_pread      AUE_PREAD
1067 #define FREEBSD32_SYS_AUE_freebsd6_freebsd32_pwrite     AUE_PWRITE
1068 #define FREEBSD32_SYS_AUE_freebsd32_stat        AUE_STAT
1069 #define FREEBSD32_SYS_AUE_freebsd32_fstat       AUE_FSTAT
1070 #define FREEBSD32_SYS_AUE_freebsd32_lstat       AUE_LSTAT
1071 #define FREEBSD32_SYS_AUE_freebsd32_getdirentries       AUE_GETDIRENTRIES
1072 #define FREEBSD32_SYS_AUE_freebsd6_freebsd32_mmap       AUE_MMAP
1073 #define FREEBSD32_SYS_AUE_freebsd6_freebsd32_lseek      AUE_LSEEK
1074 #define FREEBSD32_SYS_AUE_freebsd6_freebsd32_truncate   AUE_TRUNCATE
1075 #define FREEBSD32_SYS_AUE_freebsd6_freebsd32_ftruncate  AUE_FTRUNCATE
1076 #define FREEBSD32_SYS_AUE_freebsd32_sysctl      AUE_SYSCTL
1077 #define FREEBSD32_SYS_AUE_freebsd32_futimes     AUE_FUTIMES
1078 #define FREEBSD32_SYS_AUE_freebsd7_freebsd32_semctl     AUE_SEMCTL
1079 #define FREEBSD32_SYS_AUE_freebsd7_freebsd32_msgctl     AUE_MSGCTL
1080 #define FREEBSD32_SYS_AUE_freebsd32_msgsnd      AUE_MSGSND
1081 #define FREEBSD32_SYS_AUE_freebsd32_msgrcv      AUE_MSGRCV
1082 #define FREEBSD32_SYS_AUE_freebsd7_freebsd32_shmctl     AUE_SHMCTL
1083 #define FREEBSD32_SYS_AUE_freebsd32_clock_gettime       AUE_NULL
1084 #define FREEBSD32_SYS_AUE_freebsd32_clock_settime       AUE_CLOCK_SETTIME
1085 #define FREEBSD32_SYS_AUE_freebsd32_clock_getres        AUE_NULL
1086 #define FREEBSD32_SYS_AUE_freebsd32_ktimer_create       AUE_NULL
1087 #define FREEBSD32_SYS_AUE_freebsd32_ktimer_settime      AUE_NULL
1088 #define FREEBSD32_SYS_AUE_freebsd32_ktimer_gettime      AUE_NULL
1089 #define FREEBSD32_SYS_AUE_freebsd32_nanosleep   AUE_NULL
1090 #define FREEBSD32_SYS_AUE_freebsd32_aio_read    AUE_NULL
1091 #define FREEBSD32_SYS_AUE_freebsd32_aio_write   AUE_NULL
1092 #define FREEBSD32_SYS_AUE_freebsd32_lio_listio  AUE_NULL
1093 #define FREEBSD32_SYS_AUE_freebsd32_lutimes     AUE_LUTIMES
1094 #define FREEBSD32_SYS_AUE_freebsd32_preadv      AUE_PREADV
1095 #define FREEBSD32_SYS_AUE_freebsd32_pwritev     AUE_PWRITEV
1096 #define FREEBSD32_SYS_AUE_freebsd4_freebsd32_fhstatfs   AUE_FHSTATFS
1097 #define FREEBSD32_SYS_AUE_freebsd32_modstat     AUE_NULL
1098 #define FREEBSD32_SYS_AUE_freebsd32_kldstat     AUE_NULL
1099 #define FREEBSD32_SYS_AUE_freebsd32_aio_return  AUE_NULL
1100 #define FREEBSD32_SYS_AUE_freebsd32_aio_suspend AUE_NULL
1101 #define FREEBSD32_SYS_AUE_freebsd32_aio_cancel  AUE_NULL
1102 #define FREEBSD32_SYS_AUE_freebsd32_aio_error   AUE_NULL
1103 #define FREEBSD32_SYS_AUE_freebsd32_oaio_read   AUE_NULL
1104 #define FREEBSD32_SYS_AUE_freebsd32_oaio_write  AUE_NULL
1105 #define FREEBSD32_SYS_AUE_freebsd32_olio_listio AUE_NULL
1106 #define FREEBSD32_SYS_AUE_freebsd4_freebsd32_sendfile   AUE_SENDFILE
1107 #define FREEBSD32_SYS_AUE_freebsd32_jail        AUE_JAIL
1108 #define FREEBSD32_SYS_AUE_freebsd4_freebsd32_sigaction  AUE_SIGACTION
1109 #define FREEBSD32_SYS_AUE_freebsd4_freebsd32_sigreturn  AUE_SIGRETURN
1110 #define FREEBSD32_SYS_AUE_freebsd32_sigtimedwait        AUE_SIGWAIT
1111 #define FREEBSD32_SYS_AUE_freebsd32_sigwaitinfo AUE_NULL
1112 #define FREEBSD32_SYS_AUE_freebsd32_aio_waitcomplete    AUE_NULL
1113 #define FREEBSD32_SYS_AUE_freebsd32_kevent      AUE_NULL
1114 #define FREEBSD32_SYS_AUE_freebsd32_nmount      AUE_NMOUNT
1115 #define FREEBSD32_SYS_AUE_freebsd32_sendfile    AUE_SENDFILE
1116 #define FREEBSD32_SYS_AUE_freebsd32_ksem_init   AUE_NULL
1117 #define FREEBSD32_SYS_AUE_freebsd32_ksem_open   AUE_NULL
1118 #define FREEBSD32_SYS_AUE_freebsd32_sigaction   AUE_SIGACTION
1119 #define FREEBSD32_SYS_AUE_freebsd32_sigreturn   AUE_SIGRETURN
1120 #define FREEBSD32_SYS_AUE_freebsd32_getcontext  AUE_NULL
1121 #define FREEBSD32_SYS_AUE_freebsd32_setcontext  AUE_NULL
1122 #define FREEBSD32_SYS_AUE_freebsd32_swapcontext AUE_NULL
1123 #define FREEBSD32_SYS_AUE_freebsd32_umtx_lock   AUE_NULL
1124 #define FREEBSD32_SYS_AUE_freebsd32_umtx_unlock AUE_NULL
1125 #define FREEBSD32_SYS_AUE_freebsd32_ksem_timedwait      AUE_NULL
1126 #define FREEBSD32_SYS_AUE_freebsd32_thr_suspend AUE_NULL
1127 #define FREEBSD32_SYS_AUE_freebsd32_umtx_op     AUE_NULL
1128 #define FREEBSD32_SYS_AUE_freebsd32_thr_new     AUE_NULL
1129 #define FREEBSD32_SYS_AUE_freebsd32_kmq_open    AUE_NULL
1130 #define FREEBSD32_SYS_AUE_freebsd32_kmq_setattr AUE_NULL
1131 #define FREEBSD32_SYS_AUE_freebsd32_kmq_timedreceive    AUE_NULL
1132 #define FREEBSD32_SYS_AUE_freebsd32_kmq_timedsend       AUE_NULL
1133 #define FREEBSD32_SYS_AUE_freebsd32_kmq_notify  AUE_NULL
1134 #define FREEBSD32_SYS_AUE_freebsd32_aio_fsync   AUE_NULL
1135 #define FREEBSD32_SYS_AUE_freebsd32_pread       AUE_PREAD
1136 #define FREEBSD32_SYS_AUE_freebsd32_pwrite      AUE_PWRITE
1137 #define FREEBSD32_SYS_AUE_freebsd32_mmap        AUE_MMAP
1138 #define FREEBSD32_SYS_AUE_freebsd32_lseek       AUE_LSEEK
1139 #define FREEBSD32_SYS_AUE_freebsd32_truncate    AUE_TRUNCATE
1140 #define FREEBSD32_SYS_AUE_freebsd32_ftruncate   AUE_FTRUNCATE
1141 #define FREEBSD32_SYS_AUE_freebsd32_pread       AUE_PREAD
1142 #define FREEBSD32_SYS_AUE_freebsd32_pwrite      AUE_PWRITE
1143 #define FREEBSD32_SYS_AUE_freebsd32_mmap        AUE_MMAP
1144 #define FREEBSD32_SYS_AUE_freebsd32_lseek       AUE_LSEEK
1145 #define FREEBSD32_SYS_AUE_freebsd32_truncate    AUE_TRUNCATE
1146 #define FREEBSD32_SYS_AUE_freebsd32_ftruncate   AUE_FTRUNCATE
1147 #define FREEBSD32_SYS_AUE_freebsd32_cpuset_setid        AUE_NULL
1148 #define FREEBSD32_SYS_AUE_freebsd32_cpuset_setid        AUE_NULL
1149 #define FREEBSD32_SYS_AUE_freebsd32_cpuset_getid        AUE_NULL
1150 #define FREEBSD32_SYS_AUE_freebsd32_cpuset_getaffinity  AUE_NULL
1151 #define FREEBSD32_SYS_AUE_freebsd32_cpuset_setaffinity  AUE_NULL
1152 #define FREEBSD32_SYS_AUE_freebsd32_fexecve     AUE_FEXECVE
1153 #define FREEBSD32_SYS_AUE_freebsd32_fstatat     AUE_FSTATAT
1154 #define FREEBSD32_SYS_AUE_freebsd32_futimesat   AUE_FUTIMESAT
1155 #define FREEBSD32_SYS_AUE_freebsd32_jail_get    AUE_NULL
1156 #define FREEBSD32_SYS_AUE_freebsd32_jail_set    AUE_NULL
1157 #define FREEBSD32_SYS_AUE_freebsd32_semctl      AUE_SEMCTL
1158 #define FREEBSD32_SYS_AUE_freebsd32_msgctl      AUE_MSGCTL
1159 #define FREEBSD32_SYS_AUE_freebsd32_shmctl      AUE_SHMCTL
1160 #define FREEBSD32_SYS_AUE_freebsd32_pselect     AUE_SELECT
1161 #define FREEBSD32_SYS_AUE_freebsd32_posix_fallocate     AUE_NULL
1162 #define FREEBSD32_SYS_AUE_freebsd32_posix_fadvise       AUE_NULL
1163 #define FREEBSD32_SYS_AUE_freebsd32_wait6       AUE_WAIT6
1164 #define FREEBSD32_SYS_AUE_freebsd32_posix_fallocate     AUE_NULL
1165 #define FREEBSD32_SYS_AUE_freebsd32_posix_fadvise       AUE_NULL
1166 #define FREEBSD32_SYS_AUE_freebsd32_wait6       AUE_WAIT6
1167
1168 #undef PAD_
1169 #undef PADL_
1170 #undef PADR_
1171
1172 #endif /* !_FREEBSD32_SYSPROTO_H_ */