1/*
2 * System call prototypes.
3 *
4 * DO NOT EDIT-- this file is automatically generated.
5 * $FreeBSD$
6 * created from FreeBSD: head/sys/i386/ibcs2/syscalls.xenix 160798 2006-07-28 19:05:28Z jhb
7 */
8
9#ifndef _IBCS2_XENIX_H_
10#define	_IBCS2_XENIX_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
20struct proc;
21
22struct 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
35struct xenix_rdchk_args {
36	char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
37};
38struct xenix_chsize_args {
39	char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
40	char size_l_[PADL_(long)]; long size; char size_r_[PADR_(long)];
41};
42struct xenix_ftime_args {
43	char tp_l_[PADL_(struct timeb *)]; struct timeb * tp; char tp_r_[PADR_(struct timeb *)];
44};
45struct xenix_nap_args {
46	char millisec_l_[PADL_(int)]; int millisec; char millisec_r_[PADR_(int)];
47};
48struct xenix_scoinfo_args {
49	register_t dummy;
50};
51struct xenix_eaccess_args {
52	char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
53	char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
54};
55struct ibcs2_sigaction_args {
56	char sig_l_[PADL_(int)]; int sig; char sig_r_[PADR_(int)];
57	char act_l_[PADL_(struct ibcs2_sigaction *)]; struct ibcs2_sigaction * act; char act_r_[PADR_(struct ibcs2_sigaction *)];
58	char oact_l_[PADL_(struct ibcs2_sigaction *)]; struct ibcs2_sigaction * oact; char oact_r_[PADR_(struct ibcs2_sigaction *)];
59};
60struct ibcs2_sigprocmask_args {
61	char how_l_[PADL_(int)]; int how; char how_r_[PADR_(int)];
62	char set_l_[PADL_(ibcs2_sigset_t *)]; ibcs2_sigset_t * set; char set_r_[PADR_(ibcs2_sigset_t *)];
63	char oset_l_[PADL_(ibcs2_sigset_t *)]; ibcs2_sigset_t * oset; char oset_r_[PADR_(ibcs2_sigset_t *)];
64};
65struct ibcs2_sigpending_args {
66	char mask_l_[PADL_(ibcs2_sigset_t *)]; ibcs2_sigset_t * mask; char mask_r_[PADR_(ibcs2_sigset_t *)];
67};
68struct ibcs2_sigsuspend_args {
69	char mask_l_[PADL_(ibcs2_sigset_t *)]; ibcs2_sigset_t * mask; char mask_r_[PADR_(ibcs2_sigset_t *)];
70};
71struct ibcs2_getgroups_args {
72	char gidsetsize_l_[PADL_(int)]; int gidsetsize; char gidsetsize_r_[PADR_(int)];
73	char gidset_l_[PADL_(ibcs2_gid_t *)]; ibcs2_gid_t * gidset; char gidset_r_[PADR_(ibcs2_gid_t *)];
74};
75struct ibcs2_setgroups_args {
76	char gidsetsize_l_[PADL_(int)]; int gidsetsize; char gidsetsize_r_[PADR_(int)];
77	char gidset_l_[PADL_(ibcs2_gid_t *)]; ibcs2_gid_t * gidset; char gidset_r_[PADR_(ibcs2_gid_t *)];
78};
79struct ibcs2_sysconf_args {
80	char name_l_[PADL_(int)]; int name; char name_r_[PADR_(int)];
81};
82struct ibcs2_pathconf_args {
83	char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
84	char name_l_[PADL_(int)]; int name; char name_r_[PADR_(int)];
85};
86struct ibcs2_fpathconf_args {
87	char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
88	char name_l_[PADL_(int)]; int name; char name_r_[PADR_(int)];
89};
90struct ibcs2_rename_args {
91	char from_l_[PADL_(char *)]; char * from; char from_r_[PADR_(char *)];
92	char to_l_[PADL_(char *)]; char * to; char to_r_[PADR_(char *)];
93};
94struct xenix_utsname_args {
95	char addr_l_[PADL_(long)]; long addr; char addr_r_[PADR_(long)];
96};
97int	xenix_rdchk(struct thread *, struct xenix_rdchk_args *);
98int	xenix_chsize(struct thread *, struct xenix_chsize_args *);
99int	xenix_ftime(struct thread *, struct xenix_ftime_args *);
100int	xenix_nap(struct thread *, struct xenix_nap_args *);
101int	xenix_scoinfo(struct thread *, struct xenix_scoinfo_args *);
102int	xenix_eaccess(struct thread *, struct xenix_eaccess_args *);
103int	ibcs2_sigaction(struct thread *, struct ibcs2_sigaction_args *);
104int	ibcs2_sigprocmask(struct thread *, struct ibcs2_sigprocmask_args *);
105int	ibcs2_sigpending(struct thread *, struct ibcs2_sigpending_args *);
106int	ibcs2_sigsuspend(struct thread *, struct ibcs2_sigsuspend_args *);
107int	ibcs2_getgroups(struct thread *, struct ibcs2_getgroups_args *);
108int	ibcs2_setgroups(struct thread *, struct ibcs2_setgroups_args *);
109int	ibcs2_sysconf(struct thread *, struct ibcs2_sysconf_args *);
110int	ibcs2_pathconf(struct thread *, struct ibcs2_pathconf_args *);
111int	ibcs2_fpathconf(struct thread *, struct ibcs2_fpathconf_args *);
112int	ibcs2_rename(struct thread *, struct ibcs2_rename_args *);
113int	xenix_utsname(struct thread *, struct xenix_utsname_args *);
114
115#ifdef COMPAT_43
116
117
118#endif /* COMPAT_43 */
119
120
121#ifdef COMPAT_FREEBSD4
122
123
124#endif /* COMPAT_FREEBSD4 */
125
126
127#ifdef COMPAT_FREEBSD6
128
129
130#endif /* COMPAT_FREEBSD6 */
131
132
133#ifdef COMPAT_FREEBSD7
134
135
136#endif /* COMPAT_FREEBSD7 */
137
138#define	IBCS2_XENIX_AUE_xenix_rdchk	AUE_NULL
139#define	IBCS2_XENIX_AUE_xenix_chsize	AUE_FTRUNCATE
140#define	IBCS2_XENIX_AUE_xenix_ftime	AUE_NULL
141#define	IBCS2_XENIX_AUE_xenix_nap	AUE_NULL
142#define	IBCS2_XENIX_AUE_xenix_scoinfo	AUE_NULL
143#define	IBCS2_XENIX_AUE_xenix_eaccess	AUE_EACCESS
144#define	IBCS2_XENIX_AUE_ibcs2_sigaction	AUE_NULL
145#define	IBCS2_XENIX_AUE_ibcs2_sigprocmask	AUE_NULL
146#define	IBCS2_XENIX_AUE_ibcs2_sigpending	AUE_NULL
147#define	IBCS2_XENIX_AUE_ibcs2_sigsuspend	AUE_NULL
148#define	IBCS2_XENIX_AUE_ibcs2_getgroups	AUE_GETGROUPS
149#define	IBCS2_XENIX_AUE_ibcs2_setgroups	AUE_SETGROUPS
150#define	IBCS2_XENIX_AUE_ibcs2_sysconf	AUE_NULL
151#define	IBCS2_XENIX_AUE_ibcs2_pathconf	AUE_PATHCONF
152#define	IBCS2_XENIX_AUE_ibcs2_fpathconf	AUE_FPATHCONF
153#define	IBCS2_XENIX_AUE_ibcs2_rename	AUE_RENAME
154#define	IBCS2_XENIX_AUE_xenix_utsname	AUE_NULL
155
156#undef PAD_
157#undef PADL_
158#undef PADR_
159
160#endif /* !_IBCS2_XENIX_H_ */
161