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