1 /*
2  * System call prototypes.
3  *
4  * DO NOT EDIT-- this file is automatically generated.
5  * $FreeBSD: stable/9/sys/i386/ibcs2/ibcs2_xenix.h 225618 2011-09-16 14:04:14Z kmacy $
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 
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 xenix_rdchk_args {
36 	char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
37 };
38 struct 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 };
42 struct xenix_ftime_args {
43 	char tp_l_[PADL_(struct timeb *)]; struct timeb * tp; char tp_r_[PADR_(struct timeb *)];
44 };
45 struct xenix_nap_args {
46 	char millisec_l_[PADL_(int)]; int millisec; char millisec_r_[PADR_(int)];
47 };
48 struct xenix_scoinfo_args {
49 	register_t dummy;
50 };
51 struct 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 };
55 struct 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 };
60 struct 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 };
65 struct ibcs2_sigpending_args {
66 	char mask_l_[PADL_(ibcs2_sigset_t *)]; ibcs2_sigset_t * mask; char mask_r_[PADR_(ibcs2_sigset_t *)];
67 };
68 struct ibcs2_sigsuspend_args {
69 	char mask_l_[PADL_(ibcs2_sigset_t *)]; ibcs2_sigset_t * mask; char mask_r_[PADR_(ibcs2_sigset_t *)];
70 };
71 struct 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 };
75 struct 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 };
79 struct ibcs2_sysconf_args {
80 	char name_l_[PADL_(int)]; int name; char name_r_[PADR_(int)];
81 };
82 struct 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 };
86 struct 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 };
90 struct 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 };
94 struct xenix_utsname_args {
95 	char addr_l_[PADL_(long)]; long addr; char addr_r_[PADR_(long)];
96 };
97 int	xenix_rdchk(struct thread *, struct xenix_rdchk_args *);
98 int	xenix_chsize(struct thread *, struct xenix_chsize_args *);
99 int	xenix_ftime(struct thread *, struct xenix_ftime_args *);
100 int	xenix_nap(struct thread *, struct xenix_nap_args *);
101 int	xenix_scoinfo(struct thread *, struct xenix_scoinfo_args *);
102 int	xenix_eaccess(struct thread *, struct xenix_eaccess_args *);
103 int	ibcs2_sigaction(struct thread *, struct ibcs2_sigaction_args *);
104 int	ibcs2_sigprocmask(struct thread *, struct ibcs2_sigprocmask_args *);
105 int	ibcs2_sigpending(struct thread *, struct ibcs2_sigpending_args *);
106 int	ibcs2_sigsuspend(struct thread *, struct ibcs2_sigsuspend_args *);
107 int	ibcs2_getgroups(struct thread *, struct ibcs2_getgroups_args *);
108 int	ibcs2_setgroups(struct thread *, struct ibcs2_setgroups_args *);
109 int	ibcs2_sysconf(struct thread *, struct ibcs2_sysconf_args *);
110 int	ibcs2_pathconf(struct thread *, struct ibcs2_pathconf_args *);
111 int	ibcs2_fpathconf(struct thread *, struct ibcs2_fpathconf_args *);
112 int	ibcs2_rename(struct thread *, struct ibcs2_rename_args *);
113 int	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