xref: /freebsd/sys/compat/freebsd32/freebsd32_proto.h (revision 486abf939cbd10ea6153c2d12f06b3b3431aeeda)
1 /*
2  * System call prototypes.
3  *
4  * DO NOT EDIT-- this file is automatically generated.
5  * $FreeBSD$
6  * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.90 2007/07/04 23:02:40 peter Exp
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/_semaphore.h>
15 #include <sys/ucontext.h>
16 
17 #include <bsm/audit_kevents.h>
18 
19 struct proc;
20 
21 struct thread;
22 
23 #define	PAD_(t)	(sizeof(register_t) <= sizeof(t) ? \
24 		0 : sizeof(register_t) - sizeof(t))
25 
26 #if BYTE_ORDER == LITTLE_ENDIAN
27 #define	PADL_(t)	0
28 #define	PADR_(t)	PAD_(t)
29 #else
30 #define	PADL_(t)	PAD_(t)
31 #define	PADR_(t)	0
32 #endif
33 
34 struct freebsd32_wait4_args {
35 	char pid_l_[PADL_(int)]; int pid; char pid_r_[PADR_(int)];
36 	char status_l_[PADL_(int *)]; int * status; char status_r_[PADR_(int *)];
37 	char options_l_[PADL_(int)]; int options; char options_r_[PADR_(int)];
38 	char rusage_l_[PADL_(struct rusage32 *)]; struct rusage32 * rusage; char rusage_r_[PADR_(struct rusage32 *)];
39 };
40 struct freebsd32_recvmsg_args {
41 	char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)];
42 	char msg_l_[PADL_(struct msghdr32 *)]; struct msghdr32 * msg; char msg_r_[PADR_(struct msghdr32 *)];
43 	char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
44 };
45 struct freebsd32_sendmsg_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_recvfrom_args {
51 	char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)];
52 	char buf_l_[PADL_(u_int32_t)]; u_int32_t buf; char buf_r_[PADR_(u_int32_t)];
53 	char len_l_[PADL_(u_int32_t)]; u_int32_t len; char len_r_[PADR_(u_int32_t)];
54 	char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
55 	char from_l_[PADL_(u_int32_t)]; u_int32_t from; char from_r_[PADR_(u_int32_t)];
56 	char fromlenaddr_l_[PADL_(u_int32_t)]; u_int32_t fromlenaddr; char fromlenaddr_r_[PADR_(u_int32_t)];
57 };
58 struct ofreebsd32_sigpending_args {
59 	register_t dummy;
60 };
61 struct freebsd32_sigaltstack_args {
62 	char ss_l_[PADL_(struct sigaltstack32 *)]; struct sigaltstack32 * ss; char ss_r_[PADR_(struct sigaltstack32 *)];
63 	char oss_l_[PADL_(struct sigaltstack32 *)]; struct sigaltstack32 * oss; char oss_r_[PADR_(struct sigaltstack32 *)];
64 };
65 struct freebsd32_execve_args {
66 	char fname_l_[PADL_(char *)]; char * fname; char fname_r_[PADR_(char *)];
67 	char argv_l_[PADL_(u_int32_t *)]; u_int32_t * argv; char argv_r_[PADR_(u_int32_t *)];
68 	char envv_l_[PADL_(u_int32_t *)]; u_int32_t * envv; char envv_r_[PADR_(u_int32_t *)];
69 };
70 struct freebsd32_setitimer_args {
71 	char which_l_[PADL_(u_int)]; u_int which; char which_r_[PADR_(u_int)];
72 	char itv_l_[PADL_(struct itimerval32 *)]; struct itimerval32 * itv; char itv_r_[PADR_(struct itimerval32 *)];
73 	char oitv_l_[PADL_(struct itimerval32 *)]; struct itimerval32 * oitv; char oitv_r_[PADR_(struct itimerval32 *)];
74 };
75 struct freebsd32_getitimer_args {
76 	char which_l_[PADL_(u_int)]; u_int which; char which_r_[PADR_(u_int)];
77 	char itv_l_[PADL_(struct itimerval32 *)]; struct itimerval32 * itv; char itv_r_[PADR_(struct itimerval32 *)];
78 };
79 struct freebsd32_select_args {
80 	char nd_l_[PADL_(int)]; int nd; char nd_r_[PADR_(int)];
81 	char in_l_[PADL_(fd_set *)]; fd_set * in; char in_r_[PADR_(fd_set *)];
82 	char ou_l_[PADL_(fd_set *)]; fd_set * ou; char ou_r_[PADR_(fd_set *)];
83 	char ex_l_[PADL_(fd_set *)]; fd_set * ex; char ex_r_[PADR_(fd_set *)];
84 	char tv_l_[PADL_(struct timeval32 *)]; struct timeval32 * tv; char tv_r_[PADR_(struct timeval32 *)];
85 };
86 struct freebsd32_gettimeofday_args {
87 	char tp_l_[PADL_(struct timeval32 *)]; struct timeval32 * tp; char tp_r_[PADR_(struct timeval32 *)];
88 	char tzp_l_[PADL_(struct timezone *)]; struct timezone * tzp; char tzp_r_[PADR_(struct timezone *)];
89 };
90 struct freebsd32_getrusage_args {
91 	char who_l_[PADL_(int)]; int who; char who_r_[PADR_(int)];
92 	char rusage_l_[PADL_(struct rusage32 *)]; struct rusage32 * rusage; char rusage_r_[PADR_(struct rusage32 *)];
93 };
94 struct freebsd32_readv_args {
95 	char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
96 	char iovp_l_[PADL_(struct iovec32 *)]; struct iovec32 * iovp; char iovp_r_[PADR_(struct iovec32 *)];
97 	char iovcnt_l_[PADL_(u_int)]; u_int iovcnt; char iovcnt_r_[PADR_(u_int)];
98 };
99 struct freebsd32_writev_args {
100 	char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
101 	char iovp_l_[PADL_(struct iovec32 *)]; struct iovec32 * iovp; char iovp_r_[PADR_(struct iovec32 *)];
102 	char iovcnt_l_[PADL_(u_int)]; u_int iovcnt; char iovcnt_r_[PADR_(u_int)];
103 };
104 struct freebsd32_settimeofday_args {
105 	char tv_l_[PADL_(struct timeval32 *)]; struct timeval32 * tv; char tv_r_[PADR_(struct timeval32 *)];
106 	char tzp_l_[PADL_(struct timezone *)]; struct timezone * tzp; char tzp_r_[PADR_(struct timezone *)];
107 };
108 struct freebsd32_utimes_args {
109 	char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
110 	char tptr_l_[PADL_(struct timeval32 *)]; struct timeval32 * tptr; char tptr_r_[PADR_(struct timeval32 *)];
111 };
112 struct freebsd32_adjtime_args {
113 	char delta_l_[PADL_(struct timeval32 *)]; struct timeval32 * delta; char delta_r_[PADR_(struct timeval32 *)];
114 	char olddelta_l_[PADL_(struct timeval32 *)]; struct timeval32 * olddelta; char olddelta_r_[PADR_(struct timeval32 *)];
115 };
116 struct freebsd32_semsys_args {
117 	char which_l_[PADL_(int)]; int which; char which_r_[PADR_(int)];
118 	char a2_l_[PADL_(int)]; int a2; char a2_r_[PADR_(int)];
119 	char a3_l_[PADL_(int)]; int a3; char a3_r_[PADR_(int)];
120 	char a4_l_[PADL_(int)]; int a4; char a4_r_[PADR_(int)];
121 	char a5_l_[PADL_(int)]; int a5; char a5_r_[PADR_(int)];
122 };
123 struct freebsd32_msgsys_args {
124 	char which_l_[PADL_(int)]; int which; char which_r_[PADR_(int)];
125 	char a2_l_[PADL_(int)]; int a2; char a2_r_[PADR_(int)];
126 	char a3_l_[PADL_(int)]; int a3; char a3_r_[PADR_(int)];
127 	char a4_l_[PADL_(int)]; int a4; char a4_r_[PADR_(int)];
128 	char a5_l_[PADL_(int)]; int a5; char a5_r_[PADR_(int)];
129 	char a6_l_[PADL_(int)]; int a6; char a6_r_[PADR_(int)];
130 };
131 struct freebsd32_shmsys_args {
132 	char which_l_[PADL_(uint32_t)]; uint32_t which; char which_r_[PADR_(uint32_t)];
133 	char a2_l_[PADL_(uint32_t)]; uint32_t a2; char a2_r_[PADR_(uint32_t)];
134 	char a3_l_[PADL_(uint32_t)]; uint32_t a3; char a3_r_[PADR_(uint32_t)];
135 	char a4_l_[PADL_(uint32_t)]; uint32_t a4; char a4_r_[PADR_(uint32_t)];
136 };
137 struct freebsd32_stat_args {
138 	char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
139 	char ub_l_[PADL_(struct stat32 *)]; struct stat32 * ub; char ub_r_[PADR_(struct stat32 *)];
140 };
141 struct freebsd32_fstat_args {
142 	char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
143 	char ub_l_[PADL_(struct stat32 *)]; struct stat32 * ub; char ub_r_[PADR_(struct stat32 *)];
144 };
145 struct freebsd32_lstat_args {
146 	char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
147 	char ub_l_[PADL_(struct stat32 *)]; struct stat32 * ub; char ub_r_[PADR_(struct stat32 *)];
148 };
149 struct freebsd32_sysctl_args {
150 	char name_l_[PADL_(int *)]; int * name; char name_r_[PADR_(int *)];
151 	char namelen_l_[PADL_(u_int)]; u_int namelen; char namelen_r_[PADR_(u_int)];
152 	char old_l_[PADL_(void *)]; void * old; char old_r_[PADR_(void *)];
153 	char oldlenp_l_[PADL_(u_int32_t *)]; u_int32_t * oldlenp; char oldlenp_r_[PADR_(u_int32_t *)];
154 	char new_l_[PADL_(void *)]; void * new; char new_r_[PADR_(void *)];
155 	char newlen_l_[PADL_(u_int32_t)]; u_int32_t newlen; char newlen_r_[PADR_(u_int32_t)];
156 };
157 struct freebsd32_futimes_args {
158 	char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
159 	char tptr_l_[PADL_(struct timeval32 *)]; struct timeval32 * tptr; char tptr_r_[PADR_(struct timeval32 *)];
160 };
161 struct freebsd32_msgsnd_args {
162 	char msqid_l_[PADL_(int)]; int msqid; char msqid_r_[PADR_(int)];
163 	char msgp_l_[PADL_(void *)]; void * msgp; char msgp_r_[PADR_(void *)];
164 	char msgsz_l_[PADL_(size_t)]; size_t msgsz; char msgsz_r_[PADR_(size_t)];
165 	char msgflg_l_[PADL_(int)]; int msgflg; char msgflg_r_[PADR_(int)];
166 };
167 struct freebsd32_msgrcv_args {
168 	char msqid_l_[PADL_(int)]; int msqid; char msqid_r_[PADR_(int)];
169 	char msgp_l_[PADL_(void *)]; void * msgp; char msgp_r_[PADR_(void *)];
170 	char msgsz_l_[PADL_(size_t)]; size_t msgsz; char msgsz_r_[PADR_(size_t)];
171 	char msgtyp_l_[PADL_(long)]; long msgtyp; char msgtyp_r_[PADR_(long)];
172 	char msgflg_l_[PADL_(int)]; int msgflg; char msgflg_r_[PADR_(int)];
173 };
174 struct freebsd32_shmctl_args {
175 	char shmid_l_[PADL_(int)]; int shmid; char shmid_r_[PADR_(int)];
176 	char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)];
177 	char buf_l_[PADL_(struct shmid_ds *)]; struct shmid_ds * buf; char buf_r_[PADR_(struct shmid_ds *)];
178 };
179 struct freebsd32_clock_gettime_args {
180 	char clock_id_l_[PADL_(clockid_t)]; clockid_t clock_id; char clock_id_r_[PADR_(clockid_t)];
181 	char tp_l_[PADL_(struct timespec32 *)]; struct timespec32 * tp; char tp_r_[PADR_(struct timespec32 *)];
182 };
183 struct freebsd32_clock_settime_args {
184 	char clock_id_l_[PADL_(clockid_t)]; clockid_t clock_id; char clock_id_r_[PADR_(clockid_t)];
185 	char tp_l_[PADL_(const struct timespec32 *)]; const struct timespec32 * tp; char tp_r_[PADR_(const struct timespec32 *)];
186 };
187 struct freebsd32_clock_getres_args {
188 	char clock_id_l_[PADL_(clockid_t)]; clockid_t clock_id; char clock_id_r_[PADR_(clockid_t)];
189 	char tp_l_[PADL_(struct timespec32 *)]; struct timespec32 * tp; char tp_r_[PADR_(struct timespec32 *)];
190 };
191 struct freebsd32_nanosleep_args {
192 	char rqtp_l_[PADL_(const struct timespec32 *)]; const struct timespec32 * rqtp; char rqtp_r_[PADR_(const struct timespec32 *)];
193 	char rmtp_l_[PADL_(struct timespec32 *)]; struct timespec32 * rmtp; char rmtp_r_[PADR_(struct timespec32 *)];
194 };
195 struct freebsd32_lutimes_args {
196 	char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
197 	char tptr_l_[PADL_(struct timeval32 *)]; struct timeval32 * tptr; char tptr_r_[PADR_(struct timeval32 *)];
198 };
199 struct freebsd32_preadv_args {
200 	char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
201 	char iovp_l_[PADL_(struct iovec32 *)]; struct iovec32 * iovp; char iovp_r_[PADR_(struct iovec32 *)];
202 	char iovcnt_l_[PADL_(u_int)]; u_int iovcnt; char iovcnt_r_[PADR_(u_int)];
203 	char offset_l_[PADL_(off_t)]; off_t offset; char offset_r_[PADR_(off_t)];
204 };
205 struct freebsd32_pwritev_args {
206 	char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
207 	char iovp_l_[PADL_(struct iovec32 *)]; struct iovec32 * iovp; char iovp_r_[PADR_(struct iovec32 *)];
208 	char iovcnt_l_[PADL_(u_int)]; u_int iovcnt; char iovcnt_r_[PADR_(u_int)];
209 	char offset_l_[PADL_(off_t)]; off_t offset; char offset_r_[PADR_(off_t)];
210 };
211 struct freebsd32_modstat_args {
212 	char modid_l_[PADL_(int)]; int modid; char modid_r_[PADR_(int)];
213 	char stat_l_[PADL_(struct module_stat32 *)]; struct module_stat32 * stat; char stat_r_[PADR_(struct module_stat32 *)];
214 };
215 struct freebsd32_sigtimedwait_args {
216 	char set_l_[PADL_(const sigset_t *)]; const sigset_t * set; char set_r_[PADR_(const sigset_t *)];
217 	char info_l_[PADL_(siginfo_t *)]; siginfo_t * info; char info_r_[PADR_(siginfo_t *)];
218 	char timeout_l_[PADL_(const struct timespec *)]; const struct timespec * timeout; char timeout_r_[PADR_(const struct timespec *)];
219 };
220 struct freebsd32_sigwaitinfo_args {
221 	char set_l_[PADL_(const sigset_t *)]; const sigset_t * set; char set_r_[PADR_(const sigset_t *)];
222 	char info_l_[PADL_(siginfo_t *)]; siginfo_t * info; char info_r_[PADR_(siginfo_t *)];
223 };
224 struct freebsd32_kevent_args {
225 	char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
226 	char changelist_l_[PADL_(const struct kevent32 *)]; const struct kevent32 * changelist; char changelist_r_[PADR_(const struct kevent32 *)];
227 	char nchanges_l_[PADL_(int)]; int nchanges; char nchanges_r_[PADR_(int)];
228 	char eventlist_l_[PADL_(struct kevent32 *)]; struct kevent32 * eventlist; char eventlist_r_[PADR_(struct kevent32 *)];
229 	char nevents_l_[PADL_(int)]; int nevents; char nevents_r_[PADR_(int)];
230 	char timeout_l_[PADL_(const struct timespec32 *)]; const struct timespec32 * timeout; char timeout_r_[PADR_(const struct timespec32 *)];
231 };
232 struct freebsd32_sendfile_args {
233 	char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
234 	char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)];
235 	char offsetlo_l_[PADL_(u_int32_t)]; u_int32_t offsetlo; char offsetlo_r_[PADR_(u_int32_t)];
236 	char offsethi_l_[PADL_(u_int32_t)]; u_int32_t offsethi; char offsethi_r_[PADR_(u_int32_t)];
237 	char nbytes_l_[PADL_(size_t)]; size_t nbytes; char nbytes_r_[PADR_(size_t)];
238 	char hdtr_l_[PADL_(struct sf_hdtr32 *)]; struct sf_hdtr32 * hdtr; char hdtr_r_[PADR_(struct sf_hdtr32 *)];
239 	char sbytes_l_[PADL_(off_t *)]; off_t * sbytes; char sbytes_r_[PADR_(off_t *)];
240 	char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
241 };
242 struct freebsd32_sigaction_args {
243 	char sig_l_[PADL_(int)]; int sig; char sig_r_[PADR_(int)];
244 	char act_l_[PADL_(struct sigaction32 *)]; struct sigaction32 * act; char act_r_[PADR_(struct sigaction32 *)];
245 	char oact_l_[PADL_(struct sigaction32 *)]; struct sigaction32 * oact; char oact_r_[PADR_(struct sigaction32 *)];
246 };
247 struct freebsd32_sigreturn_args {
248 	char sigcntxp_l_[PADL_(const struct freebsd32_ucontext *)]; const struct freebsd32_ucontext * sigcntxp; char sigcntxp_r_[PADR_(const struct freebsd32_ucontext *)];
249 };
250 struct freebsd32_getcontext_args {
251 	char ucp_l_[PADL_(struct freebsd32_ucontext *)]; struct freebsd32_ucontext * ucp; char ucp_r_[PADR_(struct freebsd32_ucontext *)];
252 };
253 struct freebsd32_setcontext_args {
254 	char ucp_l_[PADL_(const struct freebsd32_ucontext *)]; const struct freebsd32_ucontext * ucp; char ucp_r_[PADR_(const struct freebsd32_ucontext *)];
255 };
256 struct freebsd32_swapcontext_args {
257 	char oucp_l_[PADL_(struct freebsd32_ucontext *)]; struct freebsd32_ucontext * oucp; char oucp_r_[PADR_(struct freebsd32_ucontext *)];
258 	char ucp_l_[PADL_(const struct freebsd32_ucontext *)]; const struct freebsd32_ucontext * ucp; char ucp_r_[PADR_(const struct freebsd32_ucontext *)];
259 };
260 struct freebsd32_umtx_lock_args {
261 	char umtx_l_[PADL_(struct umtx *)]; struct umtx * umtx; char umtx_r_[PADR_(struct umtx *)];
262 };
263 struct freebsd32_umtx_unlock_args {
264 	char umtx_l_[PADL_(struct umtx *)]; struct umtx * umtx; char umtx_r_[PADR_(struct umtx *)];
265 };
266 struct freebsd32_thr_suspend_args {
267 	char timeout_l_[PADL_(const struct timespec32 *)]; const struct timespec32 * timeout; char timeout_r_[PADR_(const struct timespec32 *)];
268 };
269 struct freebsd32_umtx_op_args {
270 	char obj_l_[PADL_(void *)]; void * obj; char obj_r_[PADR_(void *)];
271 	char op_l_[PADL_(int)]; int op; char op_r_[PADR_(int)];
272 	char val_l_[PADL_(u_long)]; u_long val; char val_r_[PADR_(u_long)];
273 	char uaddr_l_[PADL_(void *)]; void * uaddr; char uaddr_r_[PADR_(void *)];
274 	char uaddr2_l_[PADL_(void *)]; void * uaddr2; char uaddr2_r_[PADR_(void *)];
275 };
276 struct freebsd32_thr_new_args {
277 	char param_l_[PADL_(struct thr_param32 *)]; struct thr_param32 * param; char param_r_[PADR_(struct thr_param32 *)];
278 	char param_size_l_[PADL_(int)]; int param_size; char param_size_r_[PADR_(int)];
279 };
280 struct freebsd32_pread_args {
281 	char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
282 	char buf_l_[PADL_(void *)]; void * buf; char buf_r_[PADR_(void *)];
283 	char nbyte_l_[PADL_(size_t)]; size_t nbyte; char nbyte_r_[PADR_(size_t)];
284 	char offsetlo_l_[PADL_(u_int32_t)]; u_int32_t offsetlo; char offsetlo_r_[PADR_(u_int32_t)];
285 	char offsethi_l_[PADL_(u_int32_t)]; u_int32_t offsethi; char offsethi_r_[PADR_(u_int32_t)];
286 };
287 struct freebsd32_pwrite_args {
288 	char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
289 	char buf_l_[PADL_(const void *)]; const void * buf; char buf_r_[PADR_(const void *)];
290 	char nbyte_l_[PADL_(size_t)]; size_t nbyte; char nbyte_r_[PADR_(size_t)];
291 	char offsetlo_l_[PADL_(u_int32_t)]; u_int32_t offsetlo; char offsetlo_r_[PADR_(u_int32_t)];
292 	char offsethi_l_[PADL_(u_int32_t)]; u_int32_t offsethi; char offsethi_r_[PADR_(u_int32_t)];
293 };
294 struct freebsd32_mmap_args {
295 	char addr_l_[PADL_(caddr_t)]; caddr_t addr; char addr_r_[PADR_(caddr_t)];
296 	char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)];
297 	char prot_l_[PADL_(int)]; int prot; char prot_r_[PADR_(int)];
298 	char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
299 	char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
300 	char poslo_l_[PADL_(u_int32_t)]; u_int32_t poslo; char poslo_r_[PADR_(u_int32_t)];
301 	char poshi_l_[PADL_(u_int32_t)]; u_int32_t poshi; char poshi_r_[PADR_(u_int32_t)];
302 };
303 struct freebsd32_lseek_args {
304 	char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
305 	char offsetlo_l_[PADL_(u_int32_t)]; u_int32_t offsetlo; char offsetlo_r_[PADR_(u_int32_t)];
306 	char offsethi_l_[PADL_(u_int32_t)]; u_int32_t offsethi; char offsethi_r_[PADR_(u_int32_t)];
307 	char whence_l_[PADL_(int)]; int whence; char whence_r_[PADR_(int)];
308 };
309 struct freebsd32_truncate_args {
310 	char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
311 	char lengthlo_l_[PADL_(u_int32_t)]; u_int32_t lengthlo; char lengthlo_r_[PADR_(u_int32_t)];
312 	char lengthhi_l_[PADL_(u_int32_t)]; u_int32_t lengthhi; char lengthhi_r_[PADR_(u_int32_t)];
313 };
314 struct freebsd32_ftruncate_args {
315 	char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
316 	char lengthlo_l_[PADL_(u_int32_t)]; u_int32_t lengthlo; char lengthlo_r_[PADR_(u_int32_t)];
317 	char lengthhi_l_[PADL_(u_int32_t)]; u_int32_t lengthhi; char lengthhi_r_[PADR_(u_int32_t)];
318 };
319 int	freebsd32_wait4(struct thread *, struct freebsd32_wait4_args *);
320 int	freebsd32_recvmsg(struct thread *, struct freebsd32_recvmsg_args *);
321 int	freebsd32_sendmsg(struct thread *, struct freebsd32_sendmsg_args *);
322 int	freebsd32_recvfrom(struct thread *, struct freebsd32_recvfrom_args *);
323 int	freebsd32_sigaltstack(struct thread *, struct freebsd32_sigaltstack_args *);
324 int	freebsd32_execve(struct thread *, struct freebsd32_execve_args *);
325 int	freebsd32_setitimer(struct thread *, struct freebsd32_setitimer_args *);
326 int	freebsd32_getitimer(struct thread *, struct freebsd32_getitimer_args *);
327 int	freebsd32_select(struct thread *, struct freebsd32_select_args *);
328 int	freebsd32_gettimeofday(struct thread *, struct freebsd32_gettimeofday_args *);
329 int	freebsd32_getrusage(struct thread *, struct freebsd32_getrusage_args *);
330 int	freebsd32_readv(struct thread *, struct freebsd32_readv_args *);
331 int	freebsd32_writev(struct thread *, struct freebsd32_writev_args *);
332 int	freebsd32_settimeofday(struct thread *, struct freebsd32_settimeofday_args *);
333 int	freebsd32_utimes(struct thread *, struct freebsd32_utimes_args *);
334 int	freebsd32_adjtime(struct thread *, struct freebsd32_adjtime_args *);
335 int	freebsd32_semsys(struct thread *, struct freebsd32_semsys_args *);
336 int	freebsd32_msgsys(struct thread *, struct freebsd32_msgsys_args *);
337 int	freebsd32_shmsys(struct thread *, struct freebsd32_shmsys_args *);
338 int	freebsd32_stat(struct thread *, struct freebsd32_stat_args *);
339 int	freebsd32_fstat(struct thread *, struct freebsd32_fstat_args *);
340 int	freebsd32_lstat(struct thread *, struct freebsd32_lstat_args *);
341 int	freebsd32_sysctl(struct thread *, struct freebsd32_sysctl_args *);
342 int	freebsd32_futimes(struct thread *, struct freebsd32_futimes_args *);
343 int	freebsd32_msgsnd(struct thread *, struct freebsd32_msgsnd_args *);
344 int	freebsd32_msgrcv(struct thread *, struct freebsd32_msgrcv_args *);
345 int	freebsd32_shmctl(struct thread *, struct freebsd32_shmctl_args *);
346 int	freebsd32_clock_gettime(struct thread *, struct freebsd32_clock_gettime_args *);
347 int	freebsd32_clock_settime(struct thread *, struct freebsd32_clock_settime_args *);
348 int	freebsd32_clock_getres(struct thread *, struct freebsd32_clock_getres_args *);
349 int	freebsd32_nanosleep(struct thread *, struct freebsd32_nanosleep_args *);
350 int	freebsd32_lutimes(struct thread *, struct freebsd32_lutimes_args *);
351 int	freebsd32_preadv(struct thread *, struct freebsd32_preadv_args *);
352 int	freebsd32_pwritev(struct thread *, struct freebsd32_pwritev_args *);
353 int	freebsd32_modstat(struct thread *, struct freebsd32_modstat_args *);
354 int	freebsd32_sigtimedwait(struct thread *, struct freebsd32_sigtimedwait_args *);
355 int	freebsd32_sigwaitinfo(struct thread *, struct freebsd32_sigwaitinfo_args *);
356 int	freebsd32_kevent(struct thread *, struct freebsd32_kevent_args *);
357 int	freebsd32_sendfile(struct thread *, struct freebsd32_sendfile_args *);
358 int	freebsd32_sigaction(struct thread *, struct freebsd32_sigaction_args *);
359 int	freebsd32_sigreturn(struct thread *, struct freebsd32_sigreturn_args *);
360 int	freebsd32_getcontext(struct thread *, struct freebsd32_getcontext_args *);
361 int	freebsd32_setcontext(struct thread *, struct freebsd32_setcontext_args *);
362 int	freebsd32_swapcontext(struct thread *, struct freebsd32_swapcontext_args *);
363 int	freebsd32_umtx_lock(struct thread *, struct freebsd32_umtx_lock_args *);
364 int	freebsd32_umtx_unlock(struct thread *, struct freebsd32_umtx_unlock_args *);
365 int	freebsd32_thr_suspend(struct thread *, struct freebsd32_thr_suspend_args *);
366 int	freebsd32_umtx_op(struct thread *, struct freebsd32_umtx_op_args *);
367 int	freebsd32_thr_new(struct thread *, struct freebsd32_thr_new_args *);
368 int	freebsd32_pread(struct thread *, struct freebsd32_pread_args *);
369 int	freebsd32_pwrite(struct thread *, struct freebsd32_pwrite_args *);
370 int	freebsd32_mmap(struct thread *, struct freebsd32_mmap_args *);
371 int	freebsd32_lseek(struct thread *, struct freebsd32_lseek_args *);
372 int	freebsd32_truncate(struct thread *, struct freebsd32_truncate_args *);
373 int	freebsd32_ftruncate(struct thread *, struct freebsd32_ftruncate_args *);
374 
375 #ifdef COMPAT_43
376 
377 struct ofreebsd32_sigaction_args {
378 	char signum_l_[PADL_(int)]; int signum; char signum_r_[PADR_(int)];
379 	char nsa_l_[PADL_(struct osigaction32 *)]; struct osigaction32 * nsa; char nsa_r_[PADR_(struct osigaction32 *)];
380 	char osa_l_[PADL_(struct osigaction32 *)]; struct osigaction32 * osa; char osa_r_[PADR_(struct osigaction32 *)];
381 };
382 struct ofreebsd32_sigprocmask_args {
383 	char how_l_[PADL_(int)]; int how; char how_r_[PADR_(int)];
384 	char mask_l_[PADL_(osigset_t)]; osigset_t mask; char mask_r_[PADR_(osigset_t)];
385 };
386 struct ofreebsd32_sigvec_args {
387 	char signum_l_[PADL_(int)]; int signum; char signum_r_[PADR_(int)];
388 	char nsv_l_[PADL_(struct sigvec32 *)]; struct sigvec32 * nsv; char nsv_r_[PADR_(struct sigvec32 *)];
389 	char osv_l_[PADL_(struct sigvec32 *)]; struct sigvec32 * osv; char osv_r_[PADR_(struct sigvec32 *)];
390 };
391 struct ofreebsd32_sigblock_args {
392 	char mask_l_[PADL_(int)]; int mask; char mask_r_[PADR_(int)];
393 };
394 struct ofreebsd32_sigsetmask_args {
395 	char mask_l_[PADL_(int)]; int mask; char mask_r_[PADR_(int)];
396 };
397 struct ofreebsd32_sigsuspend_args {
398 	char mask_l_[PADL_(int)]; int mask; char mask_r_[PADR_(int)];
399 };
400 struct ofreebsd32_sigstack_args {
401 	char nss_l_[PADL_(struct sigstack32 *)]; struct sigstack32 * nss; char nss_r_[PADR_(struct sigstack32 *)];
402 	char oss_l_[PADL_(struct sigstack32 *)]; struct sigstack32 * oss; char oss_r_[PADR_(struct sigstack32 *)];
403 };
404 int	ofreebsd32_sigaction(struct thread *, struct ofreebsd32_sigaction_args *);
405 int	ofreebsd32_sigprocmask(struct thread *, struct ofreebsd32_sigprocmask_args *);
406 int	ofreebsd32_sigpending(struct thread *, struct ofreebsd32_sigpending_args *);
407 int	ofreebsd32_sigvec(struct thread *, struct ofreebsd32_sigvec_args *);
408 int	ofreebsd32_sigblock(struct thread *, struct ofreebsd32_sigblock_args *);
409 int	ofreebsd32_sigsetmask(struct thread *, struct ofreebsd32_sigsetmask_args *);
410 int	ofreebsd32_sigsuspend(struct thread *, struct ofreebsd32_sigsuspend_args *);
411 int	ofreebsd32_sigstack(struct thread *, struct ofreebsd32_sigstack_args *);
412 
413 #endif /* COMPAT_43 */
414 
415 
416 #ifdef COMPAT_FREEBSD4
417 
418 struct freebsd4_freebsd32_getfsstat_args {
419 	char buf_l_[PADL_(struct statfs32 *)]; struct statfs32 * buf; char buf_r_[PADR_(struct statfs32 *)];
420 	char bufsize_l_[PADL_(long)]; long bufsize; char bufsize_r_[PADR_(long)];
421 	char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
422 };
423 struct freebsd4_freebsd32_statfs_args {
424 	char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
425 	char buf_l_[PADL_(struct statfs32 *)]; struct statfs32 * buf; char buf_r_[PADR_(struct statfs32 *)];
426 };
427 struct freebsd4_freebsd32_fstatfs_args {
428 	char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
429 	char buf_l_[PADL_(struct statfs32 *)]; struct statfs32 * buf; char buf_r_[PADR_(struct statfs32 *)];
430 };
431 struct freebsd4_freebsd32_fhstatfs_args {
432 	char u_fhp_l_[PADL_(const struct fhandle *)]; const struct fhandle * u_fhp; char u_fhp_r_[PADR_(const struct fhandle *)];
433 	char buf_l_[PADL_(struct statfs32 *)]; struct statfs32 * buf; char buf_r_[PADR_(struct statfs32 *)];
434 };
435 struct freebsd4_freebsd32_sendfile_args {
436 	char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
437 	char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)];
438 	char offsetlo_l_[PADL_(u_int32_t)]; u_int32_t offsetlo; char offsetlo_r_[PADR_(u_int32_t)];
439 	char offsethi_l_[PADL_(u_int32_t)]; u_int32_t offsethi; char offsethi_r_[PADR_(u_int32_t)];
440 	char nbytes_l_[PADL_(size_t)]; size_t nbytes; char nbytes_r_[PADR_(size_t)];
441 	char hdtr_l_[PADL_(struct sf_hdtr32 *)]; struct sf_hdtr32 * hdtr; char hdtr_r_[PADR_(struct sf_hdtr32 *)];
442 	char sbytes_l_[PADL_(off_t *)]; off_t * sbytes; char sbytes_r_[PADR_(off_t *)];
443 	char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
444 };
445 struct freebsd4_freebsd32_sigaction_args {
446 	char sig_l_[PADL_(int)]; int sig; char sig_r_[PADR_(int)];
447 	char act_l_[PADL_(struct sigaction32 *)]; struct sigaction32 * act; char act_r_[PADR_(struct sigaction32 *)];
448 	char oact_l_[PADL_(struct sigaction32 *)]; struct sigaction32 * oact; char oact_r_[PADR_(struct sigaction32 *)];
449 };
450 struct freebsd4_freebsd32_sigreturn_args {
451 	char sigcntxp_l_[PADL_(const struct freebsd4_freebsd32_ucontext *)]; const struct freebsd4_freebsd32_ucontext * sigcntxp; char sigcntxp_r_[PADR_(const struct freebsd4_freebsd32_ucontext *)];
452 };
453 int	freebsd4_freebsd32_getfsstat(struct thread *, struct freebsd4_freebsd32_getfsstat_args *);
454 int	freebsd4_freebsd32_statfs(struct thread *, struct freebsd4_freebsd32_statfs_args *);
455 int	freebsd4_freebsd32_fstatfs(struct thread *, struct freebsd4_freebsd32_fstatfs_args *);
456 int	freebsd4_freebsd32_fhstatfs(struct thread *, struct freebsd4_freebsd32_fhstatfs_args *);
457 int	freebsd4_freebsd32_sendfile(struct thread *, struct freebsd4_freebsd32_sendfile_args *);
458 int	freebsd4_freebsd32_sigaction(struct thread *, struct freebsd4_freebsd32_sigaction_args *);
459 int	freebsd4_freebsd32_sigreturn(struct thread *, struct freebsd4_freebsd32_sigreturn_args *);
460 
461 #endif /* COMPAT_FREEBSD4 */
462 
463 
464 #ifdef COMPAT_FREEBSD6
465 
466 struct freebsd6_freebsd32_pread_args {
467 	char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
468 	char buf_l_[PADL_(void *)]; void * buf; char buf_r_[PADR_(void *)];
469 	char nbyte_l_[PADL_(size_t)]; size_t nbyte; char nbyte_r_[PADR_(size_t)];
470 	char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
471 	char offsetlo_l_[PADL_(u_int32_t)]; u_int32_t offsetlo; char offsetlo_r_[PADR_(u_int32_t)];
472 	char offsethi_l_[PADL_(u_int32_t)]; u_int32_t offsethi; char offsethi_r_[PADR_(u_int32_t)];
473 };
474 struct freebsd6_freebsd32_pwrite_args {
475 	char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
476 	char buf_l_[PADL_(const void *)]; const void * buf; char buf_r_[PADR_(const void *)];
477 	char nbyte_l_[PADL_(size_t)]; size_t nbyte; char nbyte_r_[PADR_(size_t)];
478 	char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
479 	char offsetlo_l_[PADL_(u_int32_t)]; u_int32_t offsetlo; char offsetlo_r_[PADR_(u_int32_t)];
480 	char offsethi_l_[PADL_(u_int32_t)]; u_int32_t offsethi; char offsethi_r_[PADR_(u_int32_t)];
481 };
482 struct freebsd6_freebsd32_mmap_args {
483 	char addr_l_[PADL_(caddr_t)]; caddr_t addr; char addr_r_[PADR_(caddr_t)];
484 	char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)];
485 	char prot_l_[PADL_(int)]; int prot; char prot_r_[PADR_(int)];
486 	char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
487 	char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
488 	char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
489 	char poslo_l_[PADL_(u_int32_t)]; u_int32_t poslo; char poslo_r_[PADR_(u_int32_t)];
490 	char poshi_l_[PADL_(u_int32_t)]; u_int32_t poshi; char poshi_r_[PADR_(u_int32_t)];
491 };
492 struct freebsd6_freebsd32_lseek_args {
493 	char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
494 	char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
495 	char offsetlo_l_[PADL_(u_int32_t)]; u_int32_t offsetlo; char offsetlo_r_[PADR_(u_int32_t)];
496 	char offsethi_l_[PADL_(u_int32_t)]; u_int32_t offsethi; char offsethi_r_[PADR_(u_int32_t)];
497 	char whence_l_[PADL_(int)]; int whence; char whence_r_[PADR_(int)];
498 };
499 struct freebsd6_freebsd32_truncate_args {
500 	char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
501 	char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
502 	char lengthlo_l_[PADL_(u_int32_t)]; u_int32_t lengthlo; char lengthlo_r_[PADR_(u_int32_t)];
503 	char lengthhi_l_[PADL_(u_int32_t)]; u_int32_t lengthhi; char lengthhi_r_[PADR_(u_int32_t)];
504 };
505 struct freebsd6_freebsd32_ftruncate_args {
506 	char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
507 	char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
508 	char lengthlo_l_[PADL_(u_int32_t)]; u_int32_t lengthlo; char lengthlo_r_[PADR_(u_int32_t)];
509 	char lengthhi_l_[PADL_(u_int32_t)]; u_int32_t lengthhi; char lengthhi_r_[PADR_(u_int32_t)];
510 };
511 int	freebsd6_freebsd32_pread(struct thread *, struct freebsd6_freebsd32_pread_args *);
512 int	freebsd6_freebsd32_pwrite(struct thread *, struct freebsd6_freebsd32_pwrite_args *);
513 int	freebsd6_freebsd32_mmap(struct thread *, struct freebsd6_freebsd32_mmap_args *);
514 int	freebsd6_freebsd32_lseek(struct thread *, struct freebsd6_freebsd32_lseek_args *);
515 int	freebsd6_freebsd32_truncate(struct thread *, struct freebsd6_freebsd32_truncate_args *);
516 int	freebsd6_freebsd32_ftruncate(struct thread *, struct freebsd6_freebsd32_ftruncate_args *);
517 
518 #endif /* COMPAT_FREEBSD6 */
519 
520 #define	FREEBSD32_SYS_AUE_freebsd32_wait4	AUE_WAIT4
521 #define	FREEBSD32_SYS_AUE_freebsd32_recvmsg	AUE_RECVMSG
522 #define	FREEBSD32_SYS_AUE_freebsd32_sendmsg	AUE_SENDMSG
523 #define	FREEBSD32_SYS_AUE_freebsd32_recvfrom	AUE_RECVFROM
524 #define	FREEBSD32_SYS_AUE_freebsd32_sigaltstack	AUE_SIGALTSTACK
525 #define	FREEBSD32_SYS_AUE_freebsd32_execve	AUE_EXECVE
526 #define	FREEBSD32_SYS_AUE_freebsd32_setitimer	AUE_SETITIMER
527 #define	FREEBSD32_SYS_AUE_freebsd32_getitimer	AUE_GETITIMER
528 #define	FREEBSD32_SYS_AUE_freebsd32_select	AUE_SELECT
529 #define	FREEBSD32_SYS_AUE_freebsd32_gettimeofday	AUE_GETTIMEOFDAY
530 #define	FREEBSD32_SYS_AUE_freebsd32_getrusage	AUE_GETRUSAGE
531 #define	FREEBSD32_SYS_AUE_freebsd32_readv	AUE_READV
532 #define	FREEBSD32_SYS_AUE_freebsd32_writev	AUE_WRITEV
533 #define	FREEBSD32_SYS_AUE_freebsd32_settimeofday	AUE_SETTIMEOFDAY
534 #define	FREEBSD32_SYS_AUE_freebsd32_utimes	AUE_UTIMES
535 #define	FREEBSD32_SYS_AUE_freebsd32_adjtime	AUE_ADJTIME
536 #define	FREEBSD32_SYS_AUE_freebsd32_semsys	AUE_SEMSYS
537 #define	FREEBSD32_SYS_AUE_freebsd32_msgsys	AUE_MSGSYS
538 #define	FREEBSD32_SYS_AUE_freebsd32_shmsys	AUE_SHMSYS
539 #define	FREEBSD32_SYS_AUE_freebsd32_stat	AUE_STAT
540 #define	FREEBSD32_SYS_AUE_freebsd32_fstat	AUE_FSTAT
541 #define	FREEBSD32_SYS_AUE_freebsd32_lstat	AUE_LSTAT
542 #define	FREEBSD32_SYS_AUE_freebsd32_sysctl	AUE_SYSCTL
543 #define	FREEBSD32_SYS_AUE_freebsd32_futimes	AUE_FUTIMES
544 #define	FREEBSD32_SYS_AUE_freebsd32_msgsnd	AUE_MSGSND
545 #define	FREEBSD32_SYS_AUE_freebsd32_msgrcv	AUE_MSGRCV
546 #define	FREEBSD32_SYS_AUE_freebsd32_shmctl	AUE_SHMCTL
547 #define	FREEBSD32_SYS_AUE_freebsd32_clock_gettime	AUE_NULL
548 #define	FREEBSD32_SYS_AUE_freebsd32_clock_settime	AUE_CLOCK_SETTIME
549 #define	FREEBSD32_SYS_AUE_freebsd32_clock_getres	AUE_NULL
550 #define	FREEBSD32_SYS_AUE_freebsd32_nanosleep	AUE_NULL
551 #define	FREEBSD32_SYS_AUE_freebsd32_lutimes	AUE_LUTIMES
552 #define	FREEBSD32_SYS_AUE_freebsd32_preadv	AUE_PREADV
553 #define	FREEBSD32_SYS_AUE_freebsd32_pwritev	AUE_PWRITEV
554 #define	FREEBSD32_SYS_AUE_freebsd32_modstat	AUE_NULL
555 #define	FREEBSD32_SYS_AUE_freebsd32_sigtimedwait	AUE_SIGWAIT
556 #define	FREEBSD32_SYS_AUE_freebsd32_sigwaitinfo	AUE_NULL
557 #define	FREEBSD32_SYS_AUE_freebsd32_kevent	AUE_NULL
558 #define	FREEBSD32_SYS_AUE_freebsd32_sendfile	AUE_SENDFILE
559 #define	FREEBSD32_SYS_AUE_freebsd32_sigaction	AUE_SIGACTION
560 #define	FREEBSD32_SYS_AUE_freebsd32_sigreturn	AUE_SIGRETURN
561 #define	FREEBSD32_SYS_AUE_freebsd32_getcontext	AUE_NULL
562 #define	FREEBSD32_SYS_AUE_freebsd32_setcontext	AUE_NULL
563 #define	FREEBSD32_SYS_AUE_freebsd32_swapcontext	AUE_NULL
564 #define	FREEBSD32_SYS_AUE_freebsd32_umtx_lock	AUE_NULL
565 #define	FREEBSD32_SYS_AUE_freebsd32_umtx_unlock	AUE_NULL
566 #define	FREEBSD32_SYS_AUE_freebsd32_thr_suspend	AUE_NULL
567 #define	FREEBSD32_SYS_AUE_freebsd32_umtx_op	AUE_NULL
568 #define	FREEBSD32_SYS_AUE_freebsd32_thr_new	AUE_NULL
569 #define	FREEBSD32_SYS_AUE_freebsd32_pread	AUE_PREAD
570 #define	FREEBSD32_SYS_AUE_freebsd32_pwrite	AUE_PWRITE
571 #define	FREEBSD32_SYS_AUE_freebsd32_mmap	AUE_MMAP
572 #define	FREEBSD32_SYS_AUE_freebsd32_lseek	AUE_LSEEK
573 #define	FREEBSD32_SYS_AUE_freebsd32_truncate	AUE_TRUNCATE
574 #define	FREEBSD32_SYS_AUE_freebsd32_ftruncate	AUE_FTRUNCATE
575 
576 #undef PAD_
577 #undef PADL_
578 #undef PADR_
579 
580 #endif /* !_FREEBSD32_SYSPROTO_H_ */
581