]> CyberLeo.Net >> Repos - FreeBSD/releng/8.0.git/blob - sys/compat/freebsd32/freebsd32_proto.h
Adjust to reflect 8.0-RELEASE.
[FreeBSD/releng/8.0.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 195468 2009-07-08 16:26:43Z trasz 
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 struct freebsd32_wait4_args {
36         char pid_l_[PADL_(int)]; int pid; char pid_r_[PADR_(int)];
37         char status_l_[PADL_(int *)]; int * status; char status_r_[PADR_(int *)];
38         char options_l_[PADL_(int)]; int options; char options_r_[PADR_(int)];
39         char rusage_l_[PADL_(struct rusage32 *)]; struct rusage32 * rusage; char rusage_r_[PADR_(struct rusage32 *)];
40 };
41 struct freebsd32_recvmsg_args {
42         char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)];
43         char msg_l_[PADL_(struct msghdr32 *)]; struct msghdr32 * msg; char msg_r_[PADR_(struct msghdr32 *)];
44         char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
45 };
46 struct freebsd32_sendmsg_args {
47         char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)];
48         char msg_l_[PADL_(struct msghdr32 *)]; struct msghdr32 * msg; char msg_r_[PADR_(struct msghdr32 *)];
49         char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
50 };
51 struct freebsd32_recvfrom_args {
52         char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)];
53         char buf_l_[PADL_(u_int32_t)]; u_int32_t buf; char buf_r_[PADR_(u_int32_t)];
54         char len_l_[PADL_(u_int32_t)]; u_int32_t len; char len_r_[PADR_(u_int32_t)];
55         char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
56         char from_l_[PADL_(u_int32_t)]; u_int32_t from; char from_r_[PADR_(u_int32_t)];
57         char fromlenaddr_l_[PADL_(u_int32_t)]; u_int32_t fromlenaddr; char fromlenaddr_r_[PADR_(u_int32_t)];
58 };
59 struct ofreebsd32_sigpending_args {
60         register_t dummy;
61 };
62 struct freebsd32_sigaltstack_args {
63         char ss_l_[PADL_(struct sigaltstack32 *)]; struct sigaltstack32 * ss; char ss_r_[PADR_(struct sigaltstack32 *)];
64         char oss_l_[PADL_(struct sigaltstack32 *)]; struct sigaltstack32 * oss; char oss_r_[PADR_(struct sigaltstack32 *)];
65 };
66 struct freebsd32_ioctl_args {
67         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
68         char com_l_[PADL_(uint32_t)]; uint32_t com; char com_r_[PADR_(uint32_t)];
69         char data_l_[PADL_(struct md_ioctl32 *)]; struct md_ioctl32 * data; char data_r_[PADR_(struct md_ioctl32 *)];
70 };
71 struct freebsd32_execve_args {
72         char fname_l_[PADL_(char *)]; char * fname; char fname_r_[PADR_(char *)];
73         char argv_l_[PADL_(u_int32_t *)]; u_int32_t * argv; char argv_r_[PADR_(u_int32_t *)];
74         char envv_l_[PADL_(u_int32_t *)]; u_int32_t * envv; char envv_r_[PADR_(u_int32_t *)];
75 };
76 struct freebsd32_setitimer_args {
77         char which_l_[PADL_(u_int)]; u_int which; char which_r_[PADR_(u_int)];
78         char itv_l_[PADL_(struct itimerval32 *)]; struct itimerval32 * itv; char itv_r_[PADR_(struct itimerval32 *)];
79         char oitv_l_[PADL_(struct itimerval32 *)]; struct itimerval32 * oitv; char oitv_r_[PADR_(struct itimerval32 *)];
80 };
81 struct freebsd32_getitimer_args {
82         char which_l_[PADL_(u_int)]; u_int which; char which_r_[PADR_(u_int)];
83         char itv_l_[PADL_(struct itimerval32 *)]; struct itimerval32 * itv; char itv_r_[PADR_(struct itimerval32 *)];
84 };
85 struct freebsd32_select_args {
86         char nd_l_[PADL_(int)]; int nd; char nd_r_[PADR_(int)];
87         char in_l_[PADL_(fd_set *)]; fd_set * in; char in_r_[PADR_(fd_set *)];
88         char ou_l_[PADL_(fd_set *)]; fd_set * ou; char ou_r_[PADR_(fd_set *)];
89         char ex_l_[PADL_(fd_set *)]; fd_set * ex; char ex_r_[PADR_(fd_set *)];
90         char tv_l_[PADL_(struct timeval32 *)]; struct timeval32 * tv; char tv_r_[PADR_(struct timeval32 *)];
91 };
92 struct freebsd32_gettimeofday_args {
93         char tp_l_[PADL_(struct timeval32 *)]; struct timeval32 * tp; char tp_r_[PADR_(struct timeval32 *)];
94         char tzp_l_[PADL_(struct timezone *)]; struct timezone * tzp; char tzp_r_[PADR_(struct timezone *)];
95 };
96 struct freebsd32_getrusage_args {
97         char who_l_[PADL_(int)]; int who; char who_r_[PADR_(int)];
98         char rusage_l_[PADL_(struct rusage32 *)]; struct rusage32 * rusage; char rusage_r_[PADR_(struct rusage32 *)];
99 };
100 struct freebsd32_readv_args {
101         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
102         char iovp_l_[PADL_(struct iovec32 *)]; struct iovec32 * iovp; char iovp_r_[PADR_(struct iovec32 *)];
103         char iovcnt_l_[PADL_(u_int)]; u_int iovcnt; char iovcnt_r_[PADR_(u_int)];
104 };
105 struct freebsd32_writev_args {
106         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
107         char iovp_l_[PADL_(struct iovec32 *)]; struct iovec32 * iovp; char iovp_r_[PADR_(struct iovec32 *)];
108         char iovcnt_l_[PADL_(u_int)]; u_int iovcnt; char iovcnt_r_[PADR_(u_int)];
109 };
110 struct freebsd32_settimeofday_args {
111         char tv_l_[PADL_(struct timeval32 *)]; struct timeval32 * tv; char tv_r_[PADR_(struct timeval32 *)];
112         char tzp_l_[PADL_(struct timezone *)]; struct timezone * tzp; char tzp_r_[PADR_(struct timezone *)];
113 };
114 struct freebsd32_utimes_args {
115         char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
116         char tptr_l_[PADL_(struct timeval32 *)]; struct timeval32 * tptr; char tptr_r_[PADR_(struct timeval32 *)];
117 };
118 struct freebsd32_adjtime_args {
119         char delta_l_[PADL_(struct timeval32 *)]; struct timeval32 * delta; char delta_r_[PADR_(struct timeval32 *)];
120         char olddelta_l_[PADL_(struct timeval32 *)]; struct timeval32 * olddelta; char olddelta_r_[PADR_(struct timeval32 *)];
121 };
122 struct freebsd32_sysarch_args {
123         char op_l_[PADL_(int)]; int op; char op_r_[PADR_(int)];
124         char parms_l_[PADL_(char *)]; char * parms; char parms_r_[PADR_(char *)];
125 };
126 struct freebsd32_semsys_args {
127         char which_l_[PADL_(int)]; int which; char which_r_[PADR_(int)];
128         char a2_l_[PADL_(int)]; int a2; char a2_r_[PADR_(int)];
129         char a3_l_[PADL_(int)]; int a3; char a3_r_[PADR_(int)];
130         char a4_l_[PADL_(int)]; int a4; char a4_r_[PADR_(int)];
131         char a5_l_[PADL_(int)]; int a5; char a5_r_[PADR_(int)];
132 };
133 struct freebsd32_msgsys_args {
134         char which_l_[PADL_(int)]; int which; char which_r_[PADR_(int)];
135         char a2_l_[PADL_(int)]; int a2; char a2_r_[PADR_(int)];
136         char a3_l_[PADL_(int)]; int a3; char a3_r_[PADR_(int)];
137         char a4_l_[PADL_(int)]; int a4; char a4_r_[PADR_(int)];
138         char a5_l_[PADL_(int)]; int a5; char a5_r_[PADR_(int)];
139         char a6_l_[PADL_(int)]; int a6; char a6_r_[PADR_(int)];
140 };
141 struct freebsd32_shmsys_args {
142         char which_l_[PADL_(uint32_t)]; uint32_t which; char which_r_[PADR_(uint32_t)];
143         char a2_l_[PADL_(uint32_t)]; uint32_t a2; char a2_r_[PADR_(uint32_t)];
144         char a3_l_[PADL_(uint32_t)]; uint32_t a3; char a3_r_[PADR_(uint32_t)];
145         char a4_l_[PADL_(uint32_t)]; uint32_t a4; char a4_r_[PADR_(uint32_t)];
146 };
147 struct freebsd32_stat_args {
148         char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
149         char ub_l_[PADL_(struct stat32 *)]; struct stat32 * ub; char ub_r_[PADR_(struct stat32 *)];
150 };
151 struct freebsd32_fstat_args {
152         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
153         char ub_l_[PADL_(struct stat32 *)]; struct stat32 * ub; char ub_r_[PADR_(struct stat32 *)];
154 };
155 struct freebsd32_lstat_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_getdirentries_args {
160         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
161         char buf_l_[PADL_(char *)]; char * buf; char buf_r_[PADR_(char *)];
162         char count_l_[PADL_(u_int)]; u_int count; char count_r_[PADR_(u_int)];
163         char basep_l_[PADL_(int32_t *)]; int32_t * basep; char basep_r_[PADR_(int32_t *)];
164 };
165 struct freebsd32_sysctl_args {
166         char name_l_[PADL_(int *)]; int * name; char name_r_[PADR_(int *)];
167         char namelen_l_[PADL_(u_int)]; u_int namelen; char namelen_r_[PADR_(u_int)];
168         char old_l_[PADL_(void *)]; void * old; char old_r_[PADR_(void *)];
169         char oldlenp_l_[PADL_(u_int32_t *)]; u_int32_t * oldlenp; char oldlenp_r_[PADR_(u_int32_t *)];
170         char new_l_[PADL_(void *)]; void * new; char new_r_[PADR_(void *)];
171         char newlen_l_[PADL_(u_int32_t)]; u_int32_t newlen; char newlen_r_[PADR_(u_int32_t)];
172 };
173 struct freebsd32_futimes_args {
174         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
175         char tptr_l_[PADL_(struct timeval32 *)]; struct timeval32 * tptr; char tptr_r_[PADR_(struct timeval32 *)];
176 };
177 struct freebsd32_msgsnd_args {
178         char msqid_l_[PADL_(int)]; int msqid; char msqid_r_[PADR_(int)];
179         char msgp_l_[PADL_(void *)]; void * msgp; char msgp_r_[PADR_(void *)];
180         char msgsz_l_[PADL_(size_t)]; size_t msgsz; char msgsz_r_[PADR_(size_t)];
181         char msgflg_l_[PADL_(int)]; int msgflg; char msgflg_r_[PADR_(int)];
182 };
183 struct freebsd32_msgrcv_args {
184         char msqid_l_[PADL_(int)]; int msqid; char msqid_r_[PADR_(int)];
185         char msgp_l_[PADL_(void *)]; void * msgp; char msgp_r_[PADR_(void *)];
186         char msgsz_l_[PADL_(size_t)]; size_t msgsz; char msgsz_r_[PADR_(size_t)];
187         char msgtyp_l_[PADL_(long)]; long msgtyp; char msgtyp_r_[PADR_(long)];
188         char msgflg_l_[PADL_(int)]; int msgflg; char msgflg_r_[PADR_(int)];
189 };
190 struct freebsd32_clock_gettime_args {
191         char clock_id_l_[PADL_(clockid_t)]; clockid_t clock_id; char clock_id_r_[PADR_(clockid_t)];
192         char tp_l_[PADL_(struct timespec32 *)]; struct timespec32 * tp; char tp_r_[PADR_(struct timespec32 *)];
193 };
194 struct freebsd32_clock_settime_args {
195         char clock_id_l_[PADL_(clockid_t)]; clockid_t clock_id; char clock_id_r_[PADR_(clockid_t)];
196         char tp_l_[PADL_(const struct timespec32 *)]; const struct timespec32 * tp; char tp_r_[PADR_(const struct timespec32 *)];
197 };
198 struct freebsd32_clock_getres_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_nanosleep_args {
203         char rqtp_l_[PADL_(const struct timespec32 *)]; const struct timespec32 * rqtp; char rqtp_r_[PADR_(const struct timespec32 *)];
204         char rmtp_l_[PADL_(struct timespec32 *)]; struct timespec32 * rmtp; char rmtp_r_[PADR_(struct timespec32 *)];
205 };
206 struct freebsd32_aio_read_args {
207         char aiocbp_l_[PADL_(struct aiocb32 *)]; struct aiocb32 * aiocbp; char aiocbp_r_[PADR_(struct aiocb32 *)];
208 };
209 struct freebsd32_aio_write_args {
210         char aiocbp_l_[PADL_(struct aiocb32 *)]; struct aiocb32 * aiocbp; char aiocbp_r_[PADR_(struct aiocb32 *)];
211 };
212 struct freebsd32_lio_listio_args {
213         char mode_l_[PADL_(int)]; int mode; char mode_r_[PADR_(int)];
214         char acb_list_l_[PADL_(struct aiocb32 *const *)]; struct aiocb32 *const * acb_list; char acb_list_r_[PADR_(struct aiocb32 *const *)];
215         char nent_l_[PADL_(int)]; int nent; char nent_r_[PADR_(int)];
216         char sig_l_[PADL_(struct sigevent *)]; struct sigevent * sig; char sig_r_[PADR_(struct sigevent *)];
217 };
218 struct freebsd32_lutimes_args {
219         char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
220         char tptr_l_[PADL_(struct timeval32 *)]; struct timeval32 * tptr; char tptr_r_[PADR_(struct timeval32 *)];
221 };
222 struct freebsd32_preadv_args {
223         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
224         char iovp_l_[PADL_(struct iovec32 *)]; struct iovec32 * iovp; char iovp_r_[PADR_(struct iovec32 *)];
225         char iovcnt_l_[PADL_(u_int)]; u_int iovcnt; char iovcnt_r_[PADR_(u_int)];
226         char offset_l_[PADL_(off_t)]; off_t offset; char offset_r_[PADR_(off_t)];
227 };
228 struct freebsd32_pwritev_args {
229         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
230         char iovp_l_[PADL_(struct iovec32 *)]; struct iovec32 * iovp; char iovp_r_[PADR_(struct iovec32 *)];
231         char iovcnt_l_[PADL_(u_int)]; u_int iovcnt; char iovcnt_r_[PADR_(u_int)];
232         char offset_l_[PADL_(off_t)]; off_t offset; char offset_r_[PADR_(off_t)];
233 };
234 struct freebsd32_modstat_args {
235         char modid_l_[PADL_(int)]; int modid; char modid_r_[PADR_(int)];
236         char stat_l_[PADL_(struct module_stat32 *)]; struct module_stat32 * stat; char stat_r_[PADR_(struct module_stat32 *)];
237 };
238 struct freebsd32_aio_return_args {
239         char aiocbp_l_[PADL_(struct aiocb32 *)]; struct aiocb32 * aiocbp; char aiocbp_r_[PADR_(struct aiocb32 *)];
240 };
241 struct freebsd32_aio_suspend_args {
242         char aiocbp_l_[PADL_(struct aiocb32 *const *)]; struct aiocb32 *const * aiocbp; char aiocbp_r_[PADR_(struct aiocb32 *const *)];
243         char nent_l_[PADL_(int)]; int nent; char nent_r_[PADR_(int)];
244         char timeout_l_[PADL_(const struct timespec32 *)]; const struct timespec32 * timeout; char timeout_r_[PADR_(const struct timespec32 *)];
245 };
246 struct freebsd32_aio_cancel_args {
247         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
248         char aiocbp_l_[PADL_(struct aiocb32 *)]; struct aiocb32 * aiocbp; char aiocbp_r_[PADR_(struct aiocb32 *)];
249 };
250 struct freebsd32_aio_error_args {
251         char aiocbp_l_[PADL_(struct aiocb32 *)]; struct aiocb32 * aiocbp; char aiocbp_r_[PADR_(struct aiocb32 *)];
252 };
253 struct freebsd32_oaio_read_args {
254         char aiocbp_l_[PADL_(struct oaiocb32 *)]; struct oaiocb32 * aiocbp; char aiocbp_r_[PADR_(struct oaiocb32 *)];
255 };
256 struct freebsd32_oaio_write_args {
257         char aiocbp_l_[PADL_(struct oaiocb32 *)]; struct oaiocb32 * aiocbp; char aiocbp_r_[PADR_(struct oaiocb32 *)];
258 };
259 struct freebsd32_olio_listio_args {
260         char mode_l_[PADL_(int)]; int mode; char mode_r_[PADR_(int)];
261         char acb_list_l_[PADL_(struct oaiocb32 *const *)]; struct oaiocb32 *const * acb_list; char acb_list_r_[PADR_(struct oaiocb32 *const *)];
262         char nent_l_[PADL_(int)]; int nent; char nent_r_[PADR_(int)];
263         char sig_l_[PADL_(struct osigevent32 *)]; struct osigevent32 * sig; char sig_r_[PADR_(struct osigevent32 *)];
264 };
265 struct freebsd32_jail_args {
266         char jail_l_[PADL_(struct jail32 *)]; struct jail32 * jail; char jail_r_[PADR_(struct jail32 *)];
267 };
268 struct freebsd32_sigtimedwait_args {
269         char set_l_[PADL_(const sigset_t *)]; const sigset_t * set; char set_r_[PADR_(const sigset_t *)];
270         char info_l_[PADL_(siginfo_t *)]; siginfo_t * info; char info_r_[PADR_(siginfo_t *)];
271         char timeout_l_[PADL_(const struct timespec *)]; const struct timespec * timeout; char timeout_r_[PADR_(const struct timespec *)];
272 };
273 struct freebsd32_sigwaitinfo_args {
274         char set_l_[PADL_(const sigset_t *)]; const sigset_t * set; char set_r_[PADR_(const sigset_t *)];
275         char info_l_[PADL_(siginfo_t *)]; siginfo_t * info; char info_r_[PADR_(siginfo_t *)];
276 };
277 struct freebsd32_aio_waitcomplete_args {
278         char aiocbp_l_[PADL_(struct aiocb32 **)]; struct aiocb32 ** aiocbp; char aiocbp_r_[PADR_(struct aiocb32 **)];
279         char timeout_l_[PADL_(struct timespec32 *)]; struct timespec32 * timeout; char timeout_r_[PADR_(struct timespec32 *)];
280 };
281 struct freebsd32_kevent_args {
282         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
283         char changelist_l_[PADL_(const struct kevent32 *)]; const struct kevent32 * changelist; char changelist_r_[PADR_(const struct kevent32 *)];
284         char nchanges_l_[PADL_(int)]; int nchanges; char nchanges_r_[PADR_(int)];
285         char eventlist_l_[PADL_(struct kevent32 *)]; struct kevent32 * eventlist; char eventlist_r_[PADR_(struct kevent32 *)];
286         char nevents_l_[PADL_(int)]; int nevents; char nevents_r_[PADR_(int)];
287         char timeout_l_[PADL_(const struct timespec32 *)]; const struct timespec32 * timeout; char timeout_r_[PADR_(const struct timespec32 *)];
288 };
289 struct freebsd32_nmount_args {
290         char iovp_l_[PADL_(struct iovec32 *)]; struct iovec32 * iovp; char iovp_r_[PADR_(struct iovec32 *)];
291         char iovcnt_l_[PADL_(unsigned int)]; unsigned int iovcnt; char iovcnt_r_[PADR_(unsigned int)];
292         char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
293 };
294 struct freebsd32_sendfile_args {
295         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
296         char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)];
297         char offsetlo_l_[PADL_(u_int32_t)]; u_int32_t offsetlo; char offsetlo_r_[PADR_(u_int32_t)];
298         char offsethi_l_[PADL_(u_int32_t)]; u_int32_t offsethi; char offsethi_r_[PADR_(u_int32_t)];
299         char nbytes_l_[PADL_(size_t)]; size_t nbytes; char nbytes_r_[PADR_(size_t)];
300         char hdtr_l_[PADL_(struct sf_hdtr32 *)]; struct sf_hdtr32 * hdtr; char hdtr_r_[PADR_(struct sf_hdtr32 *)];
301         char sbytes_l_[PADL_(off_t *)]; off_t * sbytes; char sbytes_r_[PADR_(off_t *)];
302         char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
303 };
304 struct freebsd32_sigaction_args {
305         char sig_l_[PADL_(int)]; int sig; char sig_r_[PADR_(int)];
306         char act_l_[PADL_(struct sigaction32 *)]; struct sigaction32 * act; char act_r_[PADR_(struct sigaction32 *)];
307         char oact_l_[PADL_(struct sigaction32 *)]; struct sigaction32 * oact; char oact_r_[PADR_(struct sigaction32 *)];
308 };
309 struct freebsd32_sigreturn_args {
310         char sigcntxp_l_[PADL_(const struct freebsd32_ucontext *)]; const struct freebsd32_ucontext * sigcntxp; char sigcntxp_r_[PADR_(const struct freebsd32_ucontext *)];
311 };
312 struct freebsd32_getcontext_args {
313         char ucp_l_[PADL_(struct freebsd32_ucontext *)]; struct freebsd32_ucontext * ucp; char ucp_r_[PADR_(struct freebsd32_ucontext *)];
314 };
315 struct freebsd32_setcontext_args {
316         char ucp_l_[PADL_(const struct freebsd32_ucontext *)]; const struct freebsd32_ucontext * ucp; char ucp_r_[PADR_(const struct freebsd32_ucontext *)];
317 };
318 struct freebsd32_swapcontext_args {
319         char oucp_l_[PADL_(struct freebsd32_ucontext *)]; struct freebsd32_ucontext * oucp; char oucp_r_[PADR_(struct freebsd32_ucontext *)];
320         char ucp_l_[PADL_(const struct freebsd32_ucontext *)]; const struct freebsd32_ucontext * ucp; char ucp_r_[PADR_(const struct freebsd32_ucontext *)];
321 };
322 struct freebsd32_umtx_lock_args {
323         char umtx_l_[PADL_(struct umtx *)]; struct umtx * umtx; char umtx_r_[PADR_(struct umtx *)];
324 };
325 struct freebsd32_umtx_unlock_args {
326         char umtx_l_[PADL_(struct umtx *)]; struct umtx * umtx; char umtx_r_[PADR_(struct umtx *)];
327 };
328 struct freebsd32_thr_suspend_args {
329         char timeout_l_[PADL_(const struct timespec32 *)]; const struct timespec32 * timeout; char timeout_r_[PADR_(const struct timespec32 *)];
330 };
331 struct freebsd32_umtx_op_args {
332         char obj_l_[PADL_(void *)]; void * obj; char obj_r_[PADR_(void *)];
333         char op_l_[PADL_(int)]; int op; char op_r_[PADR_(int)];
334         char val_l_[PADL_(u_long)]; u_long val; char val_r_[PADR_(u_long)];
335         char uaddr_l_[PADL_(void *)]; void * uaddr; char uaddr_r_[PADR_(void *)];
336         char uaddr2_l_[PADL_(void *)]; void * uaddr2; char uaddr2_r_[PADR_(void *)];
337 };
338 struct freebsd32_thr_new_args {
339         char param_l_[PADL_(struct thr_param32 *)]; struct thr_param32 * param; char param_r_[PADR_(struct thr_param32 *)];
340         char param_size_l_[PADL_(int)]; int param_size; char param_size_r_[PADR_(int)];
341 };
342 struct freebsd32_aio_fsync_args {
343         char op_l_[PADL_(int)]; int op; char op_r_[PADR_(int)];
344         char aiocbp_l_[PADL_(struct aiocb32 *)]; struct aiocb32 * aiocbp; char aiocbp_r_[PADR_(struct aiocb32 *)];
345 };
346 struct freebsd32_pread_args {
347         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
348         char buf_l_[PADL_(void *)]; void * buf; char buf_r_[PADR_(void *)];
349         char nbyte_l_[PADL_(size_t)]; size_t nbyte; char nbyte_r_[PADR_(size_t)];
350         char offsetlo_l_[PADL_(u_int32_t)]; u_int32_t offsetlo; char offsetlo_r_[PADR_(u_int32_t)];
351         char offsethi_l_[PADL_(u_int32_t)]; u_int32_t offsethi; char offsethi_r_[PADR_(u_int32_t)];
352 };
353 struct freebsd32_pwrite_args {
354         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
355         char buf_l_[PADL_(const void *)]; const void * buf; char buf_r_[PADR_(const void *)];
356         char nbyte_l_[PADL_(size_t)]; size_t nbyte; char nbyte_r_[PADR_(size_t)];
357         char offsetlo_l_[PADL_(u_int32_t)]; u_int32_t offsetlo; char offsetlo_r_[PADR_(u_int32_t)];
358         char offsethi_l_[PADL_(u_int32_t)]; u_int32_t offsethi; char offsethi_r_[PADR_(u_int32_t)];
359 };
360 struct freebsd32_mmap_args {
361         char addr_l_[PADL_(caddr_t)]; caddr_t addr; char addr_r_[PADR_(caddr_t)];
362         char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)];
363         char prot_l_[PADL_(int)]; int prot; char prot_r_[PADR_(int)];
364         char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
365         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
366         char poslo_l_[PADL_(u_int32_t)]; u_int32_t poslo; char poslo_r_[PADR_(u_int32_t)];
367         char poshi_l_[PADL_(u_int32_t)]; u_int32_t poshi; char poshi_r_[PADR_(u_int32_t)];
368 };
369 struct freebsd32_lseek_args {
370         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
371         char offsetlo_l_[PADL_(u_int32_t)]; u_int32_t offsetlo; char offsetlo_r_[PADR_(u_int32_t)];
372         char offsethi_l_[PADL_(u_int32_t)]; u_int32_t offsethi; char offsethi_r_[PADR_(u_int32_t)];
373         char whence_l_[PADL_(int)]; int whence; char whence_r_[PADR_(int)];
374 };
375 struct freebsd32_truncate_args {
376         char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
377         char lengthlo_l_[PADL_(u_int32_t)]; u_int32_t lengthlo; char lengthlo_r_[PADR_(u_int32_t)];
378         char lengthhi_l_[PADL_(u_int32_t)]; u_int32_t lengthhi; char lengthhi_r_[PADR_(u_int32_t)];
379 };
380 struct freebsd32_ftruncate_args {
381         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
382         char lengthlo_l_[PADL_(u_int32_t)]; u_int32_t lengthlo; char lengthlo_r_[PADR_(u_int32_t)];
383         char lengthhi_l_[PADL_(u_int32_t)]; u_int32_t lengthhi; char lengthhi_r_[PADR_(u_int32_t)];
384 };
385 struct freebsd32_cpuset_setid_args {
386         char which_l_[PADL_(cpuwhich_t)]; cpuwhich_t which; char which_r_[PADR_(cpuwhich_t)];
387         char idlo_l_[PADL_(uint32_t)]; uint32_t idlo; char idlo_r_[PADR_(uint32_t)];
388         char idhi_l_[PADL_(uint32_t)]; uint32_t idhi; char idhi_r_[PADR_(uint32_t)];
389         char setid_l_[PADL_(cpusetid_t)]; cpusetid_t setid; char setid_r_[PADR_(cpusetid_t)];
390 };
391 struct freebsd32_cpuset_getid_args {
392         char level_l_[PADL_(cpulevel_t)]; cpulevel_t level; char level_r_[PADR_(cpulevel_t)];
393         char which_l_[PADL_(cpuwhich_t)]; cpuwhich_t which; char which_r_[PADR_(cpuwhich_t)];
394         char idlo_l_[PADL_(uint32_t)]; uint32_t idlo; char idlo_r_[PADR_(uint32_t)];
395         char idhi_l_[PADL_(uint32_t)]; uint32_t idhi; char idhi_r_[PADR_(uint32_t)];
396         char setid_l_[PADL_(cpusetid_t *)]; cpusetid_t * setid; char setid_r_[PADR_(cpusetid_t *)];
397 };
398 struct freebsd32_cpuset_getaffinity_args {
399         char level_l_[PADL_(cpulevel_t)]; cpulevel_t level; char level_r_[PADR_(cpulevel_t)];
400         char which_l_[PADL_(cpuwhich_t)]; cpuwhich_t which; char which_r_[PADR_(cpuwhich_t)];
401         char idlo_l_[PADL_(uint32_t)]; uint32_t idlo; char idlo_r_[PADR_(uint32_t)];
402         char idhi_l_[PADL_(uint32_t)]; uint32_t idhi; char idhi_r_[PADR_(uint32_t)];
403         char cpusetsize_l_[PADL_(size_t)]; size_t cpusetsize; char cpusetsize_r_[PADR_(size_t)];
404         char mask_l_[PADL_(cpuset_t *)]; cpuset_t * mask; char mask_r_[PADR_(cpuset_t *)];
405 };
406 struct freebsd32_cpuset_setaffinity_args {
407         char level_l_[PADL_(cpulevel_t)]; cpulevel_t level; char level_r_[PADR_(cpulevel_t)];
408         char which_l_[PADL_(cpuwhich_t)]; cpuwhich_t which; char which_r_[PADR_(cpuwhich_t)];
409         char idlo_l_[PADL_(uint32_t)]; uint32_t idlo; char idlo_r_[PADR_(uint32_t)];
410         char idhi_l_[PADL_(uint32_t)]; uint32_t idhi; char idhi_r_[PADR_(uint32_t)];
411         char cpusetsize_l_[PADL_(size_t)]; size_t cpusetsize; char cpusetsize_r_[PADR_(size_t)];
412         char mask_l_[PADL_(const cpuset_t *)]; const cpuset_t * mask; char mask_r_[PADR_(const cpuset_t *)];
413 };
414 struct freebsd32_fexecve_args {
415         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
416         char argv_l_[PADL_(u_int32_t *)]; u_int32_t * argv; char argv_r_[PADR_(u_int32_t *)];
417         char envv_l_[PADL_(u_int32_t *)]; u_int32_t * envv; char envv_r_[PADR_(u_int32_t *)];
418 };
419 struct freebsd32_fstatat_args {
420         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
421         char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
422         char buf_l_[PADL_(struct stat *)]; struct stat * buf; char buf_r_[PADR_(struct stat *)];
423         char flag_l_[PADL_(int)]; int flag; char flag_r_[PADR_(int)];
424 };
425 struct freebsd32_futimesat_args {
426         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
427         char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
428         char times_l_[PADL_(struct timeval *)]; struct timeval * times; char times_r_[PADR_(struct timeval *)];
429 };
430 struct freebsd32_jail_get_args {
431         char iovp_l_[PADL_(struct iovec32 *)]; struct iovec32 * iovp; char iovp_r_[PADR_(struct iovec32 *)];
432         char iovcnt_l_[PADL_(unsigned int)]; unsigned int iovcnt; char iovcnt_r_[PADR_(unsigned int)];
433         char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
434 };
435 struct freebsd32_jail_set_args {
436         char iovp_l_[PADL_(struct iovec32 *)]; struct iovec32 * iovp; char iovp_r_[PADR_(struct iovec32 *)];
437         char iovcnt_l_[PADL_(unsigned int)]; unsigned int iovcnt; char iovcnt_r_[PADR_(unsigned int)];
438         char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
439 };
440 struct freebsd32_semctl_args {
441         char semid_l_[PADL_(int)]; int semid; char semid_r_[PADR_(int)];
442         char semnum_l_[PADL_(int)]; int semnum; char semnum_r_[PADR_(int)];
443         char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)];
444         char arg_l_[PADL_(union semun32 *)]; union semun32 * arg; char arg_r_[PADR_(union semun32 *)];
445 };
446 struct freebsd32_msgctl_args {
447         char msqid_l_[PADL_(int)]; int msqid; char msqid_r_[PADR_(int)];
448         char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)];
449         char buf_l_[PADL_(struct msqid_ds32 *)]; struct msqid_ds32 * buf; char buf_r_[PADR_(struct msqid_ds32 *)];
450 };
451 struct freebsd32_shmctl_args {
452         char shmid_l_[PADL_(int)]; int shmid; char shmid_r_[PADR_(int)];
453         char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)];
454         char buf_l_[PADL_(struct shmid_ds32 *)]; struct shmid_ds32 * buf; char buf_r_[PADR_(struct shmid_ds32 *)];
455 };
456 int     freebsd32_wait4(struct thread *, struct freebsd32_wait4_args *);
457 int     freebsd32_recvmsg(struct thread *, struct freebsd32_recvmsg_args *);
458 int     freebsd32_sendmsg(struct thread *, struct freebsd32_sendmsg_args *);
459 int     freebsd32_recvfrom(struct thread *, struct freebsd32_recvfrom_args *);
460 int     freebsd32_sigaltstack(struct thread *, struct freebsd32_sigaltstack_args *);
461 int     freebsd32_ioctl(struct thread *, struct freebsd32_ioctl_args *);
462 int     freebsd32_execve(struct thread *, struct freebsd32_execve_args *);
463 int     freebsd32_setitimer(struct thread *, struct freebsd32_setitimer_args *);
464 int     freebsd32_getitimer(struct thread *, struct freebsd32_getitimer_args *);
465 int     freebsd32_select(struct thread *, struct freebsd32_select_args *);
466 int     freebsd32_gettimeofday(struct thread *, struct freebsd32_gettimeofday_args *);
467 int     freebsd32_getrusage(struct thread *, struct freebsd32_getrusage_args *);
468 int     freebsd32_readv(struct thread *, struct freebsd32_readv_args *);
469 int     freebsd32_writev(struct thread *, struct freebsd32_writev_args *);
470 int     freebsd32_settimeofday(struct thread *, struct freebsd32_settimeofday_args *);
471 int     freebsd32_utimes(struct thread *, struct freebsd32_utimes_args *);
472 int     freebsd32_adjtime(struct thread *, struct freebsd32_adjtime_args *);
473 int     freebsd32_sysarch(struct thread *, struct freebsd32_sysarch_args *);
474 int     freebsd32_semsys(struct thread *, struct freebsd32_semsys_args *);
475 int     freebsd32_msgsys(struct thread *, struct freebsd32_msgsys_args *);
476 int     freebsd32_shmsys(struct thread *, struct freebsd32_shmsys_args *);
477 int     freebsd32_stat(struct thread *, struct freebsd32_stat_args *);
478 int     freebsd32_fstat(struct thread *, struct freebsd32_fstat_args *);
479 int     freebsd32_lstat(struct thread *, struct freebsd32_lstat_args *);
480 int     freebsd32_getdirentries(struct thread *, struct freebsd32_getdirentries_args *);
481 int     freebsd32_sysctl(struct thread *, struct freebsd32_sysctl_args *);
482 int     freebsd32_futimes(struct thread *, struct freebsd32_futimes_args *);
483 int     freebsd32_msgsnd(struct thread *, struct freebsd32_msgsnd_args *);
484 int     freebsd32_msgrcv(struct thread *, struct freebsd32_msgrcv_args *);
485 int     freebsd32_clock_gettime(struct thread *, struct freebsd32_clock_gettime_args *);
486 int     freebsd32_clock_settime(struct thread *, struct freebsd32_clock_settime_args *);
487 int     freebsd32_clock_getres(struct thread *, struct freebsd32_clock_getres_args *);
488 int     freebsd32_nanosleep(struct thread *, struct freebsd32_nanosleep_args *);
489 int     freebsd32_aio_read(struct thread *, struct freebsd32_aio_read_args *);
490 int     freebsd32_aio_write(struct thread *, struct freebsd32_aio_write_args *);
491 int     freebsd32_lio_listio(struct thread *, struct freebsd32_lio_listio_args *);
492 int     freebsd32_lutimes(struct thread *, struct freebsd32_lutimes_args *);
493 int     freebsd32_preadv(struct thread *, struct freebsd32_preadv_args *);
494 int     freebsd32_pwritev(struct thread *, struct freebsd32_pwritev_args *);
495 int     freebsd32_modstat(struct thread *, struct freebsd32_modstat_args *);
496 int     freebsd32_aio_return(struct thread *, struct freebsd32_aio_return_args *);
497 int     freebsd32_aio_suspend(struct thread *, struct freebsd32_aio_suspend_args *);
498 int     freebsd32_aio_cancel(struct thread *, struct freebsd32_aio_cancel_args *);
499 int     freebsd32_aio_error(struct thread *, struct freebsd32_aio_error_args *);
500 int     freebsd32_oaio_read(struct thread *, struct freebsd32_oaio_read_args *);
501 int     freebsd32_oaio_write(struct thread *, struct freebsd32_oaio_write_args *);
502 int     freebsd32_olio_listio(struct thread *, struct freebsd32_olio_listio_args *);
503 int     freebsd32_jail(struct thread *, struct freebsd32_jail_args *);
504 int     freebsd32_sigtimedwait(struct thread *, struct freebsd32_sigtimedwait_args *);
505 int     freebsd32_sigwaitinfo(struct thread *, struct freebsd32_sigwaitinfo_args *);
506 int     freebsd32_aio_waitcomplete(struct thread *, struct freebsd32_aio_waitcomplete_args *);
507 int     freebsd32_kevent(struct thread *, struct freebsd32_kevent_args *);
508 int     freebsd32_nmount(struct thread *, struct freebsd32_nmount_args *);
509 int     freebsd32_sendfile(struct thread *, struct freebsd32_sendfile_args *);
510 int     freebsd32_sigaction(struct thread *, struct freebsd32_sigaction_args *);
511 int     freebsd32_sigreturn(struct thread *, struct freebsd32_sigreturn_args *);
512 int     freebsd32_getcontext(struct thread *, struct freebsd32_getcontext_args *);
513 int     freebsd32_setcontext(struct thread *, struct freebsd32_setcontext_args *);
514 int     freebsd32_swapcontext(struct thread *, struct freebsd32_swapcontext_args *);
515 int     freebsd32_umtx_lock(struct thread *, struct freebsd32_umtx_lock_args *);
516 int     freebsd32_umtx_unlock(struct thread *, struct freebsd32_umtx_unlock_args *);
517 int     freebsd32_thr_suspend(struct thread *, struct freebsd32_thr_suspend_args *);
518 int     freebsd32_umtx_op(struct thread *, struct freebsd32_umtx_op_args *);
519 int     freebsd32_thr_new(struct thread *, struct freebsd32_thr_new_args *);
520 int     freebsd32_aio_fsync(struct thread *, struct freebsd32_aio_fsync_args *);
521 int     freebsd32_pread(struct thread *, struct freebsd32_pread_args *);
522 int     freebsd32_pwrite(struct thread *, struct freebsd32_pwrite_args *);
523 int     freebsd32_mmap(struct thread *, struct freebsd32_mmap_args *);
524 int     freebsd32_lseek(struct thread *, struct freebsd32_lseek_args *);
525 int     freebsd32_truncate(struct thread *, struct freebsd32_truncate_args *);
526 int     freebsd32_ftruncate(struct thread *, struct freebsd32_ftruncate_args *);
527 int     freebsd32_cpuset_setid(struct thread *, struct freebsd32_cpuset_setid_args *);
528 int     freebsd32_cpuset_getid(struct thread *, struct freebsd32_cpuset_getid_args *);
529 int     freebsd32_cpuset_getaffinity(struct thread *, struct freebsd32_cpuset_getaffinity_args *);
530 int     freebsd32_cpuset_setaffinity(struct thread *, struct freebsd32_cpuset_setaffinity_args *);
531 int     freebsd32_fexecve(struct thread *, struct freebsd32_fexecve_args *);
532 int     freebsd32_fstatat(struct thread *, struct freebsd32_fstatat_args *);
533 int     freebsd32_futimesat(struct thread *, struct freebsd32_futimesat_args *);
534 int     freebsd32_jail_get(struct thread *, struct freebsd32_jail_get_args *);
535 int     freebsd32_jail_set(struct thread *, struct freebsd32_jail_set_args *);
536 int     freebsd32_semctl(struct thread *, struct freebsd32_semctl_args *);
537 int     freebsd32_msgctl(struct thread *, struct freebsd32_msgctl_args *);
538 int     freebsd32_shmctl(struct thread *, struct freebsd32_shmctl_args *);
539
540 #ifdef COMPAT_43
541
542 struct ofreebsd32_sigaction_args {
543         char signum_l_[PADL_(int)]; int signum; char signum_r_[PADR_(int)];
544         char nsa_l_[PADL_(struct osigaction32 *)]; struct osigaction32 * nsa; char nsa_r_[PADR_(struct osigaction32 *)];
545         char osa_l_[PADL_(struct osigaction32 *)]; struct osigaction32 * osa; char osa_r_[PADR_(struct osigaction32 *)];
546 };
547 struct ofreebsd32_sigprocmask_args {
548         char how_l_[PADL_(int)]; int how; char how_r_[PADR_(int)];
549         char mask_l_[PADL_(osigset_t)]; osigset_t mask; char mask_r_[PADR_(osigset_t)];
550 };
551 struct ofreebsd32_sigvec_args {
552         char signum_l_[PADL_(int)]; int signum; char signum_r_[PADR_(int)];
553         char nsv_l_[PADL_(struct sigvec32 *)]; struct sigvec32 * nsv; char nsv_r_[PADR_(struct sigvec32 *)];
554         char osv_l_[PADL_(struct sigvec32 *)]; struct sigvec32 * osv; char osv_r_[PADR_(struct sigvec32 *)];
555 };
556 struct ofreebsd32_sigblock_args {
557         char mask_l_[PADL_(int)]; int mask; char mask_r_[PADR_(int)];
558 };
559 struct ofreebsd32_sigsetmask_args {
560         char mask_l_[PADL_(int)]; int mask; char mask_r_[PADR_(int)];
561 };
562 struct ofreebsd32_sigsuspend_args {
563         char mask_l_[PADL_(int)]; int mask; char mask_r_[PADR_(int)];
564 };
565 struct ofreebsd32_sigstack_args {
566         char nss_l_[PADL_(struct sigstack32 *)]; struct sigstack32 * nss; char nss_r_[PADR_(struct sigstack32 *)];
567         char oss_l_[PADL_(struct sigstack32 *)]; struct sigstack32 * oss; char oss_r_[PADR_(struct sigstack32 *)];
568 };
569 int     ofreebsd32_sigaction(struct thread *, struct ofreebsd32_sigaction_args *);
570 int     ofreebsd32_sigprocmask(struct thread *, struct ofreebsd32_sigprocmask_args *);
571 int     ofreebsd32_sigpending(struct thread *, struct ofreebsd32_sigpending_args *);
572 int     ofreebsd32_sigvec(struct thread *, struct ofreebsd32_sigvec_args *);
573 int     ofreebsd32_sigblock(struct thread *, struct ofreebsd32_sigblock_args *);
574 int     ofreebsd32_sigsetmask(struct thread *, struct ofreebsd32_sigsetmask_args *);
575 int     ofreebsd32_sigsuspend(struct thread *, struct ofreebsd32_sigsuspend_args *);
576 int     ofreebsd32_sigstack(struct thread *, struct ofreebsd32_sigstack_args *);
577
578 #endif /* COMPAT_43 */
579
580
581 #ifdef COMPAT_FREEBSD4
582
583 struct freebsd4_freebsd32_getfsstat_args {
584         char buf_l_[PADL_(struct statfs32 *)]; struct statfs32 * buf; char buf_r_[PADR_(struct statfs32 *)];
585         char bufsize_l_[PADL_(long)]; long bufsize; char bufsize_r_[PADR_(long)];
586         char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
587 };
588 struct freebsd4_freebsd32_statfs_args {
589         char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
590         char buf_l_[PADL_(struct statfs32 *)]; struct statfs32 * buf; char buf_r_[PADR_(struct statfs32 *)];
591 };
592 struct freebsd4_freebsd32_fstatfs_args {
593         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
594         char buf_l_[PADL_(struct statfs32 *)]; struct statfs32 * buf; char buf_r_[PADR_(struct statfs32 *)];
595 };
596 struct freebsd4_freebsd32_fhstatfs_args {
597         char u_fhp_l_[PADL_(const struct fhandle *)]; const struct fhandle * u_fhp; char u_fhp_r_[PADR_(const struct fhandle *)];
598         char buf_l_[PADL_(struct statfs32 *)]; struct statfs32 * buf; char buf_r_[PADR_(struct statfs32 *)];
599 };
600 struct freebsd4_freebsd32_sendfile_args {
601         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
602         char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)];
603         char offsetlo_l_[PADL_(u_int32_t)]; u_int32_t offsetlo; char offsetlo_r_[PADR_(u_int32_t)];
604         char offsethi_l_[PADL_(u_int32_t)]; u_int32_t offsethi; char offsethi_r_[PADR_(u_int32_t)];
605         char nbytes_l_[PADL_(size_t)]; size_t nbytes; char nbytes_r_[PADR_(size_t)];
606         char hdtr_l_[PADL_(struct sf_hdtr32 *)]; struct sf_hdtr32 * hdtr; char hdtr_r_[PADR_(struct sf_hdtr32 *)];
607         char sbytes_l_[PADL_(off_t *)]; off_t * sbytes; char sbytes_r_[PADR_(off_t *)];
608         char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
609 };
610 struct freebsd4_freebsd32_sigaction_args {
611         char sig_l_[PADL_(int)]; int sig; char sig_r_[PADR_(int)];
612         char act_l_[PADL_(struct sigaction32 *)]; struct sigaction32 * act; char act_r_[PADR_(struct sigaction32 *)];
613         char oact_l_[PADL_(struct sigaction32 *)]; struct sigaction32 * oact; char oact_r_[PADR_(struct sigaction32 *)];
614 };
615 struct freebsd4_freebsd32_sigreturn_args {
616         char sigcntxp_l_[PADL_(const struct freebsd4_freebsd32_ucontext *)]; const struct freebsd4_freebsd32_ucontext * sigcntxp; char sigcntxp_r_[PADR_(const struct freebsd4_freebsd32_ucontext *)];
617 };
618 int     freebsd4_freebsd32_getfsstat(struct thread *, struct freebsd4_freebsd32_getfsstat_args *);
619 int     freebsd4_freebsd32_statfs(struct thread *, struct freebsd4_freebsd32_statfs_args *);
620 int     freebsd4_freebsd32_fstatfs(struct thread *, struct freebsd4_freebsd32_fstatfs_args *);
621 int     freebsd4_freebsd32_fhstatfs(struct thread *, struct freebsd4_freebsd32_fhstatfs_args *);
622 int     freebsd4_freebsd32_sendfile(struct thread *, struct freebsd4_freebsd32_sendfile_args *);
623 int     freebsd4_freebsd32_sigaction(struct thread *, struct freebsd4_freebsd32_sigaction_args *);
624 int     freebsd4_freebsd32_sigreturn(struct thread *, struct freebsd4_freebsd32_sigreturn_args *);
625
626 #endif /* COMPAT_FREEBSD4 */
627
628
629 #ifdef COMPAT_FREEBSD6
630
631 struct freebsd6_freebsd32_pread_args {
632         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
633         char buf_l_[PADL_(void *)]; void * buf; char buf_r_[PADR_(void *)];
634         char nbyte_l_[PADL_(size_t)]; size_t nbyte; char nbyte_r_[PADR_(size_t)];
635         char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
636         char offsetlo_l_[PADL_(u_int32_t)]; u_int32_t offsetlo; char offsetlo_r_[PADR_(u_int32_t)];
637         char offsethi_l_[PADL_(u_int32_t)]; u_int32_t offsethi; char offsethi_r_[PADR_(u_int32_t)];
638 };
639 struct freebsd6_freebsd32_pwrite_args {
640         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
641         char buf_l_[PADL_(const void *)]; const void * buf; char buf_r_[PADR_(const void *)];
642         char nbyte_l_[PADL_(size_t)]; size_t nbyte; char nbyte_r_[PADR_(size_t)];
643         char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
644         char offsetlo_l_[PADL_(u_int32_t)]; u_int32_t offsetlo; char offsetlo_r_[PADR_(u_int32_t)];
645         char offsethi_l_[PADL_(u_int32_t)]; u_int32_t offsethi; char offsethi_r_[PADR_(u_int32_t)];
646 };
647 struct freebsd6_freebsd32_mmap_args {
648         char addr_l_[PADL_(caddr_t)]; caddr_t addr; char addr_r_[PADR_(caddr_t)];
649         char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)];
650         char prot_l_[PADL_(int)]; int prot; char prot_r_[PADR_(int)];
651         char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
652         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
653         char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
654         char poslo_l_[PADL_(u_int32_t)]; u_int32_t poslo; char poslo_r_[PADR_(u_int32_t)];
655         char poshi_l_[PADL_(u_int32_t)]; u_int32_t poshi; char poshi_r_[PADR_(u_int32_t)];
656 };
657 struct freebsd6_freebsd32_lseek_args {
658         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
659         char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
660         char offsetlo_l_[PADL_(u_int32_t)]; u_int32_t offsetlo; char offsetlo_r_[PADR_(u_int32_t)];
661         char offsethi_l_[PADL_(u_int32_t)]; u_int32_t offsethi; char offsethi_r_[PADR_(u_int32_t)];
662         char whence_l_[PADL_(int)]; int whence; char whence_r_[PADR_(int)];
663 };
664 struct freebsd6_freebsd32_truncate_args {
665         char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
666         char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
667         char lengthlo_l_[PADL_(u_int32_t)]; u_int32_t lengthlo; char lengthlo_r_[PADR_(u_int32_t)];
668         char lengthhi_l_[PADL_(u_int32_t)]; u_int32_t lengthhi; char lengthhi_r_[PADR_(u_int32_t)];
669 };
670 struct freebsd6_freebsd32_ftruncate_args {
671         char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
672         char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
673         char lengthlo_l_[PADL_(u_int32_t)]; u_int32_t lengthlo; char lengthlo_r_[PADR_(u_int32_t)];
674         char lengthhi_l_[PADL_(u_int32_t)]; u_int32_t lengthhi; char lengthhi_r_[PADR_(u_int32_t)];
675 };
676 int     freebsd6_freebsd32_pread(struct thread *, struct freebsd6_freebsd32_pread_args *);
677 int     freebsd6_freebsd32_pwrite(struct thread *, struct freebsd6_freebsd32_pwrite_args *);
678 int     freebsd6_freebsd32_mmap(struct thread *, struct freebsd6_freebsd32_mmap_args *);
679 int     freebsd6_freebsd32_lseek(struct thread *, struct freebsd6_freebsd32_lseek_args *);
680 int     freebsd6_freebsd32_truncate(struct thread *, struct freebsd6_freebsd32_truncate_args *);
681 int     freebsd6_freebsd32_ftruncate(struct thread *, struct freebsd6_freebsd32_ftruncate_args *);
682
683 #endif /* COMPAT_FREEBSD6 */
684
685
686 #ifdef COMPAT_FREEBSD7
687
688 struct freebsd7_freebsd32_semctl_args {
689         char semid_l_[PADL_(int)]; int semid; char semid_r_[PADR_(int)];
690         char semnum_l_[PADL_(int)]; int semnum; char semnum_r_[PADR_(int)];
691         char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)];
692         char arg_l_[PADL_(union semun32 *)]; union semun32 * arg; char arg_r_[PADR_(union semun32 *)];
693 };
694 struct freebsd7_freebsd32_msgctl_args {
695         char msqid_l_[PADL_(int)]; int msqid; char msqid_r_[PADR_(int)];
696         char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)];
697         char buf_l_[PADL_(struct msqid_ds32_old *)]; struct msqid_ds32_old * buf; char buf_r_[PADR_(struct msqid_ds32_old *)];
698 };
699 struct freebsd7_freebsd32_shmctl_args {
700         char shmid_l_[PADL_(int)]; int shmid; char shmid_r_[PADR_(int)];
701         char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)];
702         char buf_l_[PADL_(struct shmid_ds32_old *)]; struct shmid_ds32_old * buf; char buf_r_[PADR_(struct shmid_ds32_old *)];
703 };
704 int     freebsd7_freebsd32_semctl(struct thread *, struct freebsd7_freebsd32_semctl_args *);
705 int     freebsd7_freebsd32_msgctl(struct thread *, struct freebsd7_freebsd32_msgctl_args *);
706 int     freebsd7_freebsd32_shmctl(struct thread *, struct freebsd7_freebsd32_shmctl_args *);
707
708 #endif /* COMPAT_FREEBSD7 */
709
710 #define FREEBSD32_SYS_AUE_freebsd32_wait4       AUE_WAIT4
711 #define FREEBSD32_SYS_AUE_freebsd4_freebsd32_getfsstat  AUE_GETFSSTAT
712 #define FREEBSD32_SYS_AUE_freebsd32_recvmsg     AUE_RECVMSG
713 #define FREEBSD32_SYS_AUE_freebsd32_sendmsg     AUE_SENDMSG
714 #define FREEBSD32_SYS_AUE_freebsd32_recvfrom    AUE_RECVFROM
715 #define FREEBSD32_SYS_AUE_ofreebsd32_sigaction  AUE_SIGACTION
716 #define FREEBSD32_SYS_AUE_ofreebsd32_sigprocmask        AUE_SIGPROCMASK
717 #define FREEBSD32_SYS_AUE_ofreebsd32_sigpending AUE_SIGPENDING
718 #define FREEBSD32_SYS_AUE_freebsd32_sigaltstack AUE_SIGALTSTACK
719 #define FREEBSD32_SYS_AUE_freebsd32_ioctl       AUE_NULL
720 #define FREEBSD32_SYS_AUE_freebsd32_execve      AUE_EXECVE
721 #define FREEBSD32_SYS_AUE_freebsd32_setitimer   AUE_SETITIMER
722 #define FREEBSD32_SYS_AUE_freebsd32_getitimer   AUE_GETITIMER
723 #define FREEBSD32_SYS_AUE_freebsd32_select      AUE_SELECT
724 #define FREEBSD32_SYS_AUE_ofreebsd32_sigvec     AUE_O_SIGVEC
725 #define FREEBSD32_SYS_AUE_ofreebsd32_sigblock   AUE_O_SIGBLOCK
726 #define FREEBSD32_SYS_AUE_ofreebsd32_sigsetmask AUE_O_SIGSETMASK
727 #define FREEBSD32_SYS_AUE_ofreebsd32_sigsuspend AUE_SIGSUSPEND
728 #define FREEBSD32_SYS_AUE_ofreebsd32_sigstack   AUE_O_SIGSTACK
729 #define FREEBSD32_SYS_AUE_freebsd32_gettimeofday        AUE_GETTIMEOFDAY
730 #define FREEBSD32_SYS_AUE_freebsd32_getrusage   AUE_GETRUSAGE
731 #define FREEBSD32_SYS_AUE_freebsd32_readv       AUE_READV
732 #define FREEBSD32_SYS_AUE_freebsd32_writev      AUE_WRITEV
733 #define FREEBSD32_SYS_AUE_freebsd32_settimeofday        AUE_SETTIMEOFDAY
734 #define FREEBSD32_SYS_AUE_freebsd32_utimes      AUE_UTIMES
735 #define FREEBSD32_SYS_AUE_freebsd32_adjtime     AUE_ADJTIME
736 #define FREEBSD32_SYS_AUE_freebsd4_freebsd32_statfs     AUE_STATFS
737 #define FREEBSD32_SYS_AUE_freebsd4_freebsd32_fstatfs    AUE_FSTATFS
738 #define FREEBSD32_SYS_AUE_freebsd32_sysarch     AUE_SYSARCH
739 #define FREEBSD32_SYS_AUE_freebsd32_semsys      AUE_SEMSYS
740 #define FREEBSD32_SYS_AUE_freebsd32_msgsys      AUE_MSGSYS
741 #define FREEBSD32_SYS_AUE_freebsd32_shmsys      AUE_SHMSYS
742 #define FREEBSD32_SYS_AUE_freebsd6_freebsd32_pread      AUE_PREAD
743 #define FREEBSD32_SYS_AUE_freebsd6_freebsd32_pwrite     AUE_PWRITE
744 #define FREEBSD32_SYS_AUE_freebsd32_stat        AUE_STAT
745 #define FREEBSD32_SYS_AUE_freebsd32_fstat       AUE_FSTAT
746 #define FREEBSD32_SYS_AUE_freebsd32_lstat       AUE_LSTAT
747 #define FREEBSD32_SYS_AUE_freebsd32_getdirentries       AUE_GETDIRENTRIES
748 #define FREEBSD32_SYS_AUE_freebsd6_freebsd32_mmap       AUE_MMAP
749 #define FREEBSD32_SYS_AUE_freebsd6_freebsd32_lseek      AUE_LSEEK
750 #define FREEBSD32_SYS_AUE_freebsd6_freebsd32_truncate   AUE_TRUNCATE
751 #define FREEBSD32_SYS_AUE_freebsd6_freebsd32_ftruncate  AUE_FTRUNCATE
752 #define FREEBSD32_SYS_AUE_freebsd32_sysctl      AUE_SYSCTL
753 #define FREEBSD32_SYS_AUE_freebsd32_futimes     AUE_FUTIMES
754 #define FREEBSD32_SYS_AUE_freebsd7_freebsd32_semctl     AUE_SEMCTL
755 #define FREEBSD32_SYS_AUE_freebsd7_freebsd32_msgctl     AUE_MSGCTL
756 #define FREEBSD32_SYS_AUE_freebsd32_msgsnd      AUE_MSGSND
757 #define FREEBSD32_SYS_AUE_freebsd32_msgrcv      AUE_MSGRCV
758 #define FREEBSD32_SYS_AUE_freebsd7_freebsd32_shmctl     AUE_SHMCTL
759 #define FREEBSD32_SYS_AUE_freebsd32_clock_gettime       AUE_NULL
760 #define FREEBSD32_SYS_AUE_freebsd32_clock_settime       AUE_CLOCK_SETTIME
761 #define FREEBSD32_SYS_AUE_freebsd32_clock_getres        AUE_NULL
762 #define FREEBSD32_SYS_AUE_freebsd32_nanosleep   AUE_NULL
763 #define FREEBSD32_SYS_AUE_freebsd32_aio_read    AUE_NULL
764 #define FREEBSD32_SYS_AUE_freebsd32_aio_write   AUE_NULL
765 #define FREEBSD32_SYS_AUE_freebsd32_lio_listio  AUE_NULL
766 #define FREEBSD32_SYS_AUE_freebsd32_lutimes     AUE_LUTIMES
767 #define FREEBSD32_SYS_AUE_freebsd32_preadv      AUE_PREADV
768 #define FREEBSD32_SYS_AUE_freebsd32_pwritev     AUE_PWRITEV
769 #define FREEBSD32_SYS_AUE_freebsd4_freebsd32_fhstatfs   AUE_FHSTATFS
770 #define FREEBSD32_SYS_AUE_freebsd32_modstat     AUE_NULL
771 #define FREEBSD32_SYS_AUE_freebsd32_aio_return  AUE_NULL
772 #define FREEBSD32_SYS_AUE_freebsd32_aio_suspend AUE_NULL
773 #define FREEBSD32_SYS_AUE_freebsd32_aio_cancel  AUE_NULL
774 #define FREEBSD32_SYS_AUE_freebsd32_aio_error   AUE_NULL
775 #define FREEBSD32_SYS_AUE_freebsd32_oaio_read   AUE_NULL
776 #define FREEBSD32_SYS_AUE_freebsd32_oaio_write  AUE_NULL
777 #define FREEBSD32_SYS_AUE_freebsd32_olio_listio AUE_NULL
778 #define FREEBSD32_SYS_AUE_freebsd4_freebsd32_sendfile   AUE_SENDFILE
779 #define FREEBSD32_SYS_AUE_freebsd32_jail        AUE_JAIL
780 #define FREEBSD32_SYS_AUE_freebsd4_freebsd32_sigaction  AUE_SIGACTION
781 #define FREEBSD32_SYS_AUE_freebsd4_freebsd32_sigreturn  AUE_SIGRETURN
782 #define FREEBSD32_SYS_AUE_freebsd32_sigtimedwait        AUE_SIGWAIT
783 #define FREEBSD32_SYS_AUE_freebsd32_sigwaitinfo AUE_NULL
784 #define FREEBSD32_SYS_AUE_freebsd32_aio_waitcomplete    AUE_NULL
785 #define FREEBSD32_SYS_AUE_freebsd32_kevent      AUE_NULL
786 #define FREEBSD32_SYS_AUE_freebsd32_nmount      AUE_NMOUNT
787 #define FREEBSD32_SYS_AUE_freebsd32_sendfile    AUE_SENDFILE
788 #define FREEBSD32_SYS_AUE_freebsd32_sigaction   AUE_SIGACTION
789 #define FREEBSD32_SYS_AUE_freebsd32_sigreturn   AUE_SIGRETURN
790 #define FREEBSD32_SYS_AUE_freebsd32_getcontext  AUE_NULL
791 #define FREEBSD32_SYS_AUE_freebsd32_setcontext  AUE_NULL
792 #define FREEBSD32_SYS_AUE_freebsd32_swapcontext AUE_NULL
793 #define FREEBSD32_SYS_AUE_freebsd32_umtx_lock   AUE_NULL
794 #define FREEBSD32_SYS_AUE_freebsd32_umtx_unlock AUE_NULL
795 #define FREEBSD32_SYS_AUE_freebsd32_thr_suspend AUE_NULL
796 #define FREEBSD32_SYS_AUE_freebsd32_umtx_op     AUE_NULL
797 #define FREEBSD32_SYS_AUE_freebsd32_thr_new     AUE_NULL
798 #define FREEBSD32_SYS_AUE_freebsd32_aio_fsync   AUE_NULL
799 #define FREEBSD32_SYS_AUE_freebsd32_pread       AUE_PREAD
800 #define FREEBSD32_SYS_AUE_freebsd32_pwrite      AUE_PWRITE
801 #define FREEBSD32_SYS_AUE_freebsd32_mmap        AUE_MMAP
802 #define FREEBSD32_SYS_AUE_freebsd32_lseek       AUE_LSEEK
803 #define FREEBSD32_SYS_AUE_freebsd32_truncate    AUE_TRUNCATE
804 #define FREEBSD32_SYS_AUE_freebsd32_ftruncate   AUE_FTRUNCATE
805 #define FREEBSD32_SYS_AUE_freebsd32_cpuset_setid        AUE_NULL
806 #define FREEBSD32_SYS_AUE_freebsd32_cpuset_getid        AUE_NULL
807 #define FREEBSD32_SYS_AUE_freebsd32_cpuset_getaffinity  AUE_NULL
808 #define FREEBSD32_SYS_AUE_freebsd32_cpuset_setaffinity  AUE_NULL
809 #define FREEBSD32_SYS_AUE_freebsd32_fexecve     AUE_FEXECVE
810 #define FREEBSD32_SYS_AUE_freebsd32_fstatat     AUE_FSTATAT
811 #define FREEBSD32_SYS_AUE_freebsd32_futimesat   AUE_FUTIMESAT
812 #define FREEBSD32_SYS_AUE_freebsd32_jail_get    AUE_NULL
813 #define FREEBSD32_SYS_AUE_freebsd32_jail_set    AUE_NULL
814 #define FREEBSD32_SYS_AUE_freebsd32_semctl      AUE_SEMCTL
815 #define FREEBSD32_SYS_AUE_freebsd32_msgctl      AUE_MSGCTL
816 #define FREEBSD32_SYS_AUE_freebsd32_shmctl      AUE_SHMCTL
817
818 #undef PAD_
819 #undef PADL_
820 #undef PADR_
821
822 #endif /* !_FREEBSD32_SYSPROTO_H_ */