xref: /plan9-contrib/sys/src/ape/lib/ap/plan9/acidlib (revision 219b2ee8daee37f4aad58d63f21287faa8e4ffdc)
1*219b2ee8SDavid du Colombiersizeof_1_ = 8;
2*219b2ee8SDavid du Colombieraggr _1_
3*219b2ee8SDavid du Colombier{
4*219b2ee8SDavid du Colombier	'D' 0 quot;
5*219b2ee8SDavid du Colombier	'D' 4 rem;
6*219b2ee8SDavid du Colombier};
7*219b2ee8SDavid du Colombier
8*219b2ee8SDavid du Colombierdefn
9*219b2ee8SDavid du Colombier_1_(addr) {
10*219b2ee8SDavid du Colombier	complex _1_ addr;
11*219b2ee8SDavid du Colombier	print("	quot	", addr.quot, "\n");
12*219b2ee8SDavid du Colombier	print("	rem	", addr.rem, "\n");
13*219b2ee8SDavid du Colombier};
14*219b2ee8SDavid du Colombier
15*219b2ee8SDavid du Colombiersizeof_2_ = 8;
16*219b2ee8SDavid du Colombieraggr _2_
17*219b2ee8SDavid du Colombier{
18*219b2ee8SDavid du Colombier	'D' 0 quot;
19*219b2ee8SDavid du Colombier	'D' 4 rem;
20*219b2ee8SDavid du Colombier};
21*219b2ee8SDavid du Colombier
22*219b2ee8SDavid du Colombierdefn
23*219b2ee8SDavid du Colombier_2_(addr) {
24*219b2ee8SDavid du Colombier	complex _2_ addr;
25*219b2ee8SDavid du Colombier	print("	quot	", addr.quot, "\n");
26*219b2ee8SDavid du Colombier	print("	rem	", addr.rem, "\n");
27*219b2ee8SDavid du Colombier};
28*219b2ee8SDavid du Colombier
29*219b2ee8SDavid du Colombiersizeofsigaction = 12;
30*219b2ee8SDavid du Colombieraggr sigaction
31*219b2ee8SDavid du Colombier{
32*219b2ee8SDavid du Colombier	'X' 0 sa_handler;
33*219b2ee8SDavid du Colombier	'D' 4 sa_mask;
34*219b2ee8SDavid du Colombier	'D' 8 sa_flags;
35*219b2ee8SDavid du Colombier};
36*219b2ee8SDavid du Colombier
37*219b2ee8SDavid du Colombierdefn
38*219b2ee8SDavid du Colombiersigaction(addr) {
39*219b2ee8SDavid du Colombier	complex sigaction addr;
40*219b2ee8SDavid du Colombier	print("	sa_handler	", addr.sa_handler\X, "\n");
41*219b2ee8SDavid du Colombier	print("	sa_mask	", addr.sa_mask, "\n");
42*219b2ee8SDavid du Colombier	print("	sa_flags	", addr.sa_flags, "\n");
43*219b2ee8SDavid du Colombier};
44*219b2ee8SDavid du Colombier
45*219b2ee8SDavid du Colombiersizeof_3_ = 32;
46*219b2ee8SDavid du Colombieraggr _3_
47*219b2ee8SDavid du Colombier{
48*219b2ee8SDavid du Colombier	'D' 0 fd;
49*219b2ee8SDavid du Colombier	'C' 4 flags;
50*219b2ee8SDavid du Colombier	'C' 5 state;
51*219b2ee8SDavid du Colombier	'X' 8 buf;
52*219b2ee8SDavid du Colombier	'X' 12 rp;
53*219b2ee8SDavid du Colombier	'X' 16 wp;
54*219b2ee8SDavid du Colombier	'X' 20 lp;
55*219b2ee8SDavid du Colombier	'U' 24 bufl;
56*219b2ee8SDavid du Colombier	'a' 28 unbuf;
57*219b2ee8SDavid du Colombier};
58*219b2ee8SDavid du Colombier
59*219b2ee8SDavid du Colombierdefn
60*219b2ee8SDavid du Colombier_3_(addr) {
61*219b2ee8SDavid du Colombier	complex _3_ addr;
62*219b2ee8SDavid du Colombier	print("	fd	", addr.fd, "\n");
63*219b2ee8SDavid du Colombier	print("	flags	", addr.flags, "\n");
64*219b2ee8SDavid du Colombier	print("	state	", addr.state, "\n");
65*219b2ee8SDavid du Colombier	print("	buf	", addr.buf\X, "\n");
66*219b2ee8SDavid du Colombier	print("	rp	", addr.rp\X, "\n");
67*219b2ee8SDavid du Colombier	print("	wp	", addr.wp\X, "\n");
68*219b2ee8SDavid du Colombier	print("	lp	", addr.lp\X, "\n");
69*219b2ee8SDavid du Colombier	print("	bufl	", addr.bufl, "\n");
70*219b2ee8SDavid du Colombier	print("	unbuf	", addr.unbuf, "\n");
71*219b2ee8SDavid du Colombier};
72*219b2ee8SDavid du Colombier
73*219b2ee8SDavid du Colombiersizeof_4_ = 4;
74*219b2ee8SDavid du Colombieraggr _4_
75*219b2ee8SDavid du Colombier{
76*219b2ee8SDavid du Colombier	'D' 0 val;
77*219b2ee8SDavid du Colombier};
78*219b2ee8SDavid du Colombier
79*219b2ee8SDavid du Colombierdefn
80*219b2ee8SDavid du Colombier_4_(addr) {
81*219b2ee8SDavid du Colombier	complex _4_ addr;
82*219b2ee8SDavid du Colombier	print("	val	", addr.val, "\n");
83*219b2ee8SDavid du Colombier};
84*219b2ee8SDavid du Colombier
85*219b2ee8SDavid du Colombiersizeoftimeval = 8;
86*219b2ee8SDavid du Colombieraggr timeval
87*219b2ee8SDavid du Colombier{
88*219b2ee8SDavid du Colombier	'D' 0 tv_sec;
89*219b2ee8SDavid du Colombier	'D' 4 tv_usec;
90*219b2ee8SDavid du Colombier};
91*219b2ee8SDavid du Colombier
92*219b2ee8SDavid du Colombierdefn
93*219b2ee8SDavid du Colombiertimeval(addr) {
94*219b2ee8SDavid du Colombier	complex timeval addr;
95*219b2ee8SDavid du Colombier	print("	tv_sec	", addr.tv_sec, "\n");
96*219b2ee8SDavid du Colombier	print("	tv_usec	", addr.tv_usec, "\n");
97*219b2ee8SDavid du Colombier};
98*219b2ee8SDavid du Colombier
99*219b2ee8SDavid du Colombiersizeoftimezone = 8;
100*219b2ee8SDavid du Colombieraggr timezone
101*219b2ee8SDavid du Colombier{
102*219b2ee8SDavid du Colombier	'D' 0 tz_minuteswest;
103*219b2ee8SDavid du Colombier	'D' 4 tz_dsttime;
104*219b2ee8SDavid du Colombier};
105*219b2ee8SDavid du Colombier
106*219b2ee8SDavid du Colombierdefn
107*219b2ee8SDavid du Colombiertimezone(addr) {
108*219b2ee8SDavid du Colombier	complex timezone addr;
109*219b2ee8SDavid du Colombier	print("	tz_minuteswest	", addr.tz_minuteswest, "\n");
110*219b2ee8SDavid du Colombier	print("	tz_dsttime	", addr.tz_dsttime, "\n");
111*219b2ee8SDavid du Colombier};
112*219b2ee8SDavid du Colombier
113*219b2ee8SDavid du Colombiersizeoffd_set = 12;
114*219b2ee8SDavid du Colombieraggr fd_set
115*219b2ee8SDavid du Colombier{
116*219b2ee8SDavid du Colombier	'a' 0 fds_bits;
117*219b2ee8SDavid du Colombier};
118*219b2ee8SDavid du Colombier
119*219b2ee8SDavid du Colombierdefn
120*219b2ee8SDavid du Colombierfd_set(addr) {
121*219b2ee8SDavid du Colombier	complex fd_set addr;
122*219b2ee8SDavid du Colombier	mem(addr, "3X");
123*219b2ee8SDavid du Colombier};
124*219b2ee8SDavid du Colombier
125*219b2ee8SDavid du Colombiersizeofstat = 28;
126*219b2ee8SDavid du Colombieraggr stat
127*219b2ee8SDavid du Colombier{
128*219b2ee8SDavid du Colombier	'u' 0 st_dev;
129*219b2ee8SDavid du Colombier	'u' 2 st_ino;
130*219b2ee8SDavid du Colombier	'u' 4 st_mode;
131*219b2ee8SDavid du Colombier	'd' 6 st_nlink;
132*219b2ee8SDavid du Colombier	'd' 8 st_uid;
133*219b2ee8SDavid du Colombier	'd' 10 st_gid;
134*219b2ee8SDavid du Colombier	'D' 12 st_size;
135*219b2ee8SDavid du Colombier	'D' 16 st_atime;
136*219b2ee8SDavid du Colombier	'D' 20 st_mtime;
137*219b2ee8SDavid du Colombier	'D' 24 st_ctime;
138*219b2ee8SDavid du Colombier};
139*219b2ee8SDavid du Colombier
140*219b2ee8SDavid du Colombierdefn
141*219b2ee8SDavid du Colombierstat(addr) {
142*219b2ee8SDavid du Colombier	complex stat addr;
143*219b2ee8SDavid du Colombier	print("	st_dev	", addr.st_dev, "\n");
144*219b2ee8SDavid du Colombier	print("	st_ino	", addr.st_ino, "\n");
145*219b2ee8SDavid du Colombier	print("	st_mode	", addr.st_mode, "\n");
146*219b2ee8SDavid du Colombier	print("	st_nlink	", addr.st_nlink, "\n");
147*219b2ee8SDavid du Colombier	print("	st_uid	", addr.st_uid, "\n");
148*219b2ee8SDavid du Colombier	print("	st_gid	", addr.st_gid, "\n");
149*219b2ee8SDavid du Colombier	print("	st_size	", addr.st_size, "\n");
150*219b2ee8SDavid du Colombier	print("	st_atime	", addr.st_atime, "\n");
151*219b2ee8SDavid du Colombier	print("	st_mtime	", addr.st_mtime, "\n");
152*219b2ee8SDavid du Colombier	print("	st_ctime	", addr.st_ctime, "\n");
153*219b2ee8SDavid du Colombier};
154*219b2ee8SDavid du Colombier
155*219b2ee8SDavid du Colombiersizeofflock = 16;
156*219b2ee8SDavid du Colombieraggr flock
157*219b2ee8SDavid du Colombier{
158*219b2ee8SDavid du Colombier	'd' 0 l_type;
159*219b2ee8SDavid du Colombier	'd' 2 l_whence;
160*219b2ee8SDavid du Colombier	'D' 4 l_start;
161*219b2ee8SDavid du Colombier	'D' 8 l_len;
162*219b2ee8SDavid du Colombier	'D' 12 l_pid;
163*219b2ee8SDavid du Colombier};
164*219b2ee8SDavid du Colombier
165*219b2ee8SDavid du Colombierdefn
166*219b2ee8SDavid du Colombierflock(addr) {
167*219b2ee8SDavid du Colombier	complex flock addr;
168*219b2ee8SDavid du Colombier	print("	l_type	", addr.l_type, "\n");
169*219b2ee8SDavid du Colombier	print("	l_whence	", addr.l_whence, "\n");
170*219b2ee8SDavid du Colombier	print("	l_start	", addr.l_start, "\n");
171*219b2ee8SDavid du Colombier	print("	l_len	", addr.l_len, "\n");
172*219b2ee8SDavid du Colombier	print("	l_pid	", addr.l_pid, "\n");
173*219b2ee8SDavid du Colombier};
174*219b2ee8SDavid du Colombier
175*219b2ee8SDavid du Colombiersizeofdirent = 28;
176*219b2ee8SDavid du Colombieraggr dirent
177*219b2ee8SDavid du Colombier{
178*219b2ee8SDavid du Colombier	'a' 0 d_name;
179*219b2ee8SDavid du Colombier};
180*219b2ee8SDavid du Colombier
181*219b2ee8SDavid du Colombierdefn
182*219b2ee8SDavid du Colombierdirent(addr) {
183*219b2ee8SDavid du Colombier	complex dirent addr;
184*219b2ee8SDavid du Colombier	print("	d_name	", addr.d_name, "\n");
185*219b2ee8SDavid du Colombier};
186*219b2ee8SDavid du Colombier
187*219b2ee8SDavid du Colombiersizeof_dirdesc = 16;
188*219b2ee8SDavid du Colombieraggr _dirdesc
189*219b2ee8SDavid du Colombier{
190*219b2ee8SDavid du Colombier	'D' 0 dd_fd;
191*219b2ee8SDavid du Colombier	'D' 4 dd_loc;
192*219b2ee8SDavid du Colombier	'D' 8 dd_size;
193*219b2ee8SDavid du Colombier	'X' 12 dd_buf;
194*219b2ee8SDavid du Colombier};
195*219b2ee8SDavid du Colombier
196*219b2ee8SDavid du Colombierdefn
197*219b2ee8SDavid du Colombier_dirdesc(addr) {
198*219b2ee8SDavid du Colombier	complex _dirdesc addr;
199*219b2ee8SDavid du Colombier	print("	dd_fd	", addr.dd_fd, "\n");
200*219b2ee8SDavid du Colombier	print("	dd_loc	", addr.dd_loc, "\n");
201*219b2ee8SDavid du Colombier	print("	dd_size	", addr.dd_size, "\n");
202*219b2ee8SDavid du Colombier	print("	dd_buf	", addr.dd_buf\X, "\n");
203*219b2ee8SDavid du Colombier};
204*219b2ee8SDavid du Colombier
205*219b2ee8SDavid du Colombiersizeoftermios = 28;
206*219b2ee8SDavid du Colombieraggr termios
207*219b2ee8SDavid du Colombier{
208*219b2ee8SDavid du Colombier	'U' 0 c_iflag;
209*219b2ee8SDavid du Colombier	'U' 4 c_oflag;
210*219b2ee8SDavid du Colombier	'U' 8 c_cflag;
211*219b2ee8SDavid du Colombier	'U' 12 c_lflag;
212*219b2ee8SDavid du Colombier	'a' 16 c_cc;
213*219b2ee8SDavid du Colombier};
214*219b2ee8SDavid du Colombier
215*219b2ee8SDavid du Colombierdefn
216*219b2ee8SDavid du Colombiertermios(addr) {
217*219b2ee8SDavid du Colombier	complex termios addr;
218*219b2ee8SDavid du Colombier	print("	c_iflag	", addr.c_iflag, "\n");
219*219b2ee8SDavid du Colombier	print("	c_oflag	", addr.c_oflag, "\n");
220*219b2ee8SDavid du Colombier	print("	c_cflag	", addr.c_cflag, "\n");
221*219b2ee8SDavid du Colombier	print("	c_lflag	", addr.c_lflag, "\n");
222*219b2ee8SDavid du Colombier	print("	c_cc	", addr.c_cc, "\n");
223*219b2ee8SDavid du Colombier};
224*219b2ee8SDavid du Colombier
225*219b2ee8SDavid du Colombiersizeofutsname = 20;
226*219b2ee8SDavid du Colombieraggr utsname
227*219b2ee8SDavid du Colombier{
228*219b2ee8SDavid du Colombier	'X' 0 sysname;
229*219b2ee8SDavid du Colombier	'X' 4 nodename;
230*219b2ee8SDavid du Colombier	'X' 8 release;
231*219b2ee8SDavid du Colombier	'X' 12 version;
232*219b2ee8SDavid du Colombier	'X' 16 machine;
233*219b2ee8SDavid du Colombier};
234*219b2ee8SDavid du Colombier
235*219b2ee8SDavid du Colombierdefn
236*219b2ee8SDavid du Colombierutsname(addr) {
237*219b2ee8SDavid du Colombier	complex utsname addr;
238*219b2ee8SDavid du Colombier	print("	sysname	", addr.sysname\X, "\n");
239*219b2ee8SDavid du Colombier	print("	nodename	", addr.nodename\X, "\n");
240*219b2ee8SDavid du Colombier	print("	release	", addr.release\X, "\n");
241*219b2ee8SDavid du Colombier	print("	version	", addr.version\X, "\n");
242*219b2ee8SDavid du Colombier	print("	machine	", addr.machine\X, "\n");
243*219b2ee8SDavid du Colombier};
244*219b2ee8SDavid du Colombier
245*219b2ee8SDavid du ColombiersizeofMuxbuf = 16400;
246*219b2ee8SDavid du Colombieraggr Muxbuf
247*219b2ee8SDavid du Colombier{
248*219b2ee8SDavid du Colombier	'D' 0 n;
249*219b2ee8SDavid du Colombier	'X' 4 putnext;
250*219b2ee8SDavid du Colombier	'X' 8 getnext;
251*219b2ee8SDavid du Colombier	'b' 12 fd;
252*219b2ee8SDavid du Colombier	'b' 13 eof;
253*219b2ee8SDavid du Colombier	'b' 14 roomwait;
254*219b2ee8SDavid du Colombier	'b' 15 datawait;
255*219b2ee8SDavid du Colombier	'a' 16 data;
256*219b2ee8SDavid du Colombier};
257*219b2ee8SDavid du Colombier
258*219b2ee8SDavid du Colombierdefn
259*219b2ee8SDavid du ColombierMuxbuf(addr) {
260*219b2ee8SDavid du Colombier	complex Muxbuf addr;
261*219b2ee8SDavid du Colombier	print("	n	", addr.n, "\n");
262*219b2ee8SDavid du Colombier	print("	putnext	", addr.putnext\X, "\n");
263*219b2ee8SDavid du Colombier	print("	getnext	", addr.getnext\X, "\n");
264*219b2ee8SDavid du Colombier	print("	fd	", addr.fd, "\n");
265*219b2ee8SDavid du Colombier	print("	eof	", addr.eof, "\n");
266*219b2ee8SDavid du Colombier	print("	roomwait	", addr.roomwait, "\n");
267*219b2ee8SDavid du Colombier	print("	datawait	", addr.datawait, "\n");
268*219b2ee8SDavid du Colombier	print("	data	", addr.data, "\n");
269*219b2ee8SDavid du Colombier};
270*219b2ee8SDavid du Colombier
271*219b2ee8SDavid du ColombiersizeofFdinfo = 16;
272*219b2ee8SDavid du Colombieraggr Fdinfo
273*219b2ee8SDavid du Colombier{
274*219b2ee8SDavid du Colombier	'U' 0 flags;
275*219b2ee8SDavid du Colombier	'U' 4 oflags;
276*219b2ee8SDavid du Colombier	'X' 8 name;
277*219b2ee8SDavid du Colombier	'A' Muxbuf 12 buf;
278*219b2ee8SDavid du Colombier};
279*219b2ee8SDavid du Colombier
280*219b2ee8SDavid du Colombierdefn
281*219b2ee8SDavid du ColombierFdinfo(addr) {
282*219b2ee8SDavid du Colombier	complex Fdinfo addr;
283*219b2ee8SDavid du Colombier	print("	flags	", addr.flags, "\n");
284*219b2ee8SDavid du Colombier	print("	oflags	", addr.oflags, "\n");
285*219b2ee8SDavid du Colombier	print("	name	", addr.name\X, "\n");
286*219b2ee8SDavid du Colombier	print("	buf	", addr.buf\X, "\n");
287*219b2ee8SDavid du Colombier};
288*219b2ee8SDavid du Colombier
289*219b2ee8SDavid du ColombiersizeofWaitmsg = 112;
290*219b2ee8SDavid du Colombieraggr Waitmsg
291*219b2ee8SDavid du Colombier{
292*219b2ee8SDavid du Colombier	'a' 0 pid;
293*219b2ee8SDavid du Colombier	'a' 12 time;
294*219b2ee8SDavid du Colombier	'a' 48 msg;
295*219b2ee8SDavid du Colombier};
296*219b2ee8SDavid du Colombier
297*219b2ee8SDavid du Colombierdefn
298*219b2ee8SDavid du ColombierWaitmsg(addr) {
299*219b2ee8SDavid du Colombier	complex Waitmsg addr;
300*219b2ee8SDavid du Colombier	print("	pid	", addr.pid, "\n");
301*219b2ee8SDavid du Colombier	print("	time	", addr.time, "\n");
302*219b2ee8SDavid du Colombier	print("	msg	", addr.msg, "\n");
303*219b2ee8SDavid du Colombier};
304*219b2ee8SDavid du Colombier
305*219b2ee8SDavid du Colombiersizeof_5_ = 8;
306*219b2ee8SDavid du Colombieraggr _5_
307*219b2ee8SDavid du Colombier{
308*219b2ee8SDavid du Colombier	'D' 0 hlength;
309*219b2ee8SDavid du Colombier	'D' 4 length;
310*219b2ee8SDavid du Colombier};
311*219b2ee8SDavid du Colombier
312*219b2ee8SDavid du Colombierdefn
313*219b2ee8SDavid du Colombier_5_(addr) {
314*219b2ee8SDavid du Colombier	complex _5_ addr;
315*219b2ee8SDavid du Colombier	print("	hlength	", addr.hlength, "\n");
316*219b2ee8SDavid du Colombier	print("	length	", addr.length, "\n");
317*219b2ee8SDavid du Colombier};
318*219b2ee8SDavid du Colombier
319*219b2ee8SDavid du Colombiersizeof_6_ = 8;
320*219b2ee8SDavid du Colombieraggr _6_
321*219b2ee8SDavid du Colombier{
322*219b2ee8SDavid du Colombier	'a' 0 clength;
323*219b2ee8SDavid du Colombier	'D' 0 vlength;
324*219b2ee8SDavid du Colombier	{
325*219b2ee8SDavid du Colombier	'D' 0 hlength;
326*219b2ee8SDavid du Colombier	'D' 4 length;
327*219b2ee8SDavid du Colombier	};
328*219b2ee8SDavid du Colombier};
329*219b2ee8SDavid du Colombier
330*219b2ee8SDavid du Colombierdefn
331*219b2ee8SDavid du Colombier_6_(addr) {
332*219b2ee8SDavid du Colombier	complex _6_ addr;
333*219b2ee8SDavid du Colombier	print("	clength	", addr.clength, "\n");
334*219b2ee8SDavid du Colombier	print("	vlength	", addr.vlength, "\n");
335*219b2ee8SDavid du Colombier	print("_5_ {\n");
336*219b2ee8SDavid du Colombier		_5_(addr+0);
337*219b2ee8SDavid du Colombier	print("}\n");
338*219b2ee8SDavid du Colombier};
339*219b2ee8SDavid du Colombier
340*219b2ee8SDavid du ColombiersizeofQid = 8;
341*219b2ee8SDavid du Colombieraggr Qid
342*219b2ee8SDavid du Colombier{
343*219b2ee8SDavid du Colombier	'U' 0 path;
344*219b2ee8SDavid du Colombier	'U' 4 vers;
345*219b2ee8SDavid du Colombier};
346*219b2ee8SDavid du Colombier
347*219b2ee8SDavid du Colombierdefn
348*219b2ee8SDavid du ColombierQid(addr) {
349*219b2ee8SDavid du Colombier	complex Qid addr;
350*219b2ee8SDavid du Colombier	print("	path	", addr.path, "\n");
351*219b2ee8SDavid du Colombier	print("	vers	", addr.vers, "\n");
352*219b2ee8SDavid du Colombier};
353*219b2ee8SDavid du Colombier
354*219b2ee8SDavid du ColombiersizeofDir = 116;
355*219b2ee8SDavid du Colombieraggr Dir
356*219b2ee8SDavid du Colombier{
357*219b2ee8SDavid du Colombier	'a' 0 name;
358*219b2ee8SDavid du Colombier	'a' 28 uid;
359*219b2ee8SDavid du Colombier	'a' 56 gid;
360*219b2ee8SDavid du Colombier	Qid 84 qid;
361*219b2ee8SDavid du Colombier	'U' 92 mode;
362*219b2ee8SDavid du Colombier	'D' 96 atime;
363*219b2ee8SDavid du Colombier	'D' 100 mtime;
364*219b2ee8SDavid du Colombier	{
365*219b2ee8SDavid du Colombier	'a' 104 clength;
366*219b2ee8SDavid du Colombier	'D' 104 vlength;
367*219b2ee8SDavid du Colombier	{
368*219b2ee8SDavid du Colombier	'D' 104 hlength;
369*219b2ee8SDavid du Colombier	'D' 108 length;
370*219b2ee8SDavid du Colombier	};
371*219b2ee8SDavid du Colombier	};
372*219b2ee8SDavid du Colombier	'd' 112 type;
373*219b2ee8SDavid du Colombier	'd' 114 dev;
374*219b2ee8SDavid du Colombier};
375*219b2ee8SDavid du Colombier
376*219b2ee8SDavid du Colombierdefn
377*219b2ee8SDavid du ColombierDir(addr) {
378*219b2ee8SDavid du Colombier	complex Dir addr;
379*219b2ee8SDavid du Colombier	print("	name	", addr.name, "\n");
380*219b2ee8SDavid du Colombier	print("	uid	", addr.uid, "\n");
381*219b2ee8SDavid du Colombier	print("	gid	", addr.gid, "\n");
382*219b2ee8SDavid du Colombier	print("Qid qid {\n");
383*219b2ee8SDavid du Colombier	Qid(addr.qid);
384*219b2ee8SDavid du Colombier	print("}\n");
385*219b2ee8SDavid du Colombier	print("	mode	", addr.mode, "\n");
386*219b2ee8SDavid du Colombier	print("	atime	", addr.atime, "\n");
387*219b2ee8SDavid du Colombier	print("	mtime	", addr.mtime, "\n");
388*219b2ee8SDavid du Colombier	print("_6_ {\n");
389*219b2ee8SDavid du Colombier		_6_(addr+104);
390*219b2ee8SDavid du Colombier	print("}\n");
391*219b2ee8SDavid du Colombier	print("	type	", addr.type, "\n");
392*219b2ee8SDavid du Colombier	print("	dev	", addr.dev, "\n");
393*219b2ee8SDavid du Colombier};
394*219b2ee8SDavid du Colombier
395*219b2ee8SDavid du Colombiersizeof_7_ = 28;
396*219b2ee8SDavid du Colombieraggr _7_
397*219b2ee8SDavid du Colombier{
398*219b2ee8SDavid du Colombier	'u' 0 oldtag;
399*219b2ee8SDavid du Colombier	Qid 4 qid;
400*219b2ee8SDavid du Colombier	'a' 12 rauth;
401*219b2ee8SDavid du Colombier};
402*219b2ee8SDavid du Colombier
403*219b2ee8SDavid du Colombierdefn
404*219b2ee8SDavid du Colombier_7_(addr) {
405*219b2ee8SDavid du Colombier	complex _7_ addr;
406*219b2ee8SDavid du Colombier	print("	oldtag	", addr.oldtag, "\n");
407*219b2ee8SDavid du Colombier	print("Qid qid {\n");
408*219b2ee8SDavid du Colombier	Qid(addr.qid);
409*219b2ee8SDavid du Colombier	print("}\n");
410*219b2ee8SDavid du Colombier	print("	rauth	", addr.rauth, "\n");
411*219b2ee8SDavid du Colombier};
412*219b2ee8SDavid du Colombier
413*219b2ee8SDavid du Colombiersizeof_8_ = 144;
414*219b2ee8SDavid du Colombieraggr _8_
415*219b2ee8SDavid du Colombier{
416*219b2ee8SDavid du Colombier	'a' 0 uname;
417*219b2ee8SDavid du Colombier	'a' 28 aname;
418*219b2ee8SDavid du Colombier	'a' 56 ticket;
419*219b2ee8SDavid du Colombier	'a' 128 auth;
420*219b2ee8SDavid du Colombier};
421*219b2ee8SDavid du Colombier
422*219b2ee8SDavid du Colombierdefn
423*219b2ee8SDavid du Colombier_8_(addr) {
424*219b2ee8SDavid du Colombier	complex _8_ addr;
425*219b2ee8SDavid du Colombier	print("	uname	", addr.uname, "\n");
426*219b2ee8SDavid du Colombier	print("	aname	", addr.aname, "\n");
427*219b2ee8SDavid du Colombier	print("	ticket	", addr.ticket, "\n");
428*219b2ee8SDavid du Colombier	print("	auth	", addr.auth, "\n");
429*219b2ee8SDavid du Colombier};
430*219b2ee8SDavid du Colombier
431*219b2ee8SDavid du Colombiersizeof_9_ = 148;
432*219b2ee8SDavid du Colombieraggr _9_
433*219b2ee8SDavid du Colombier{
434*219b2ee8SDavid du Colombier	'a' 0 ename;
435*219b2ee8SDavid du Colombier	'a' 64 authid;
436*219b2ee8SDavid du Colombier	'a' 92 authdom;
437*219b2ee8SDavid du Colombier	'a' 140 chal;
438*219b2ee8SDavid du Colombier};
439*219b2ee8SDavid du Colombier
440*219b2ee8SDavid du Colombierdefn
441*219b2ee8SDavid du Colombier_9_(addr) {
442*219b2ee8SDavid du Colombier	complex _9_ addr;
443*219b2ee8SDavid du Colombier	print("	ename	", addr.ename, "\n");
444*219b2ee8SDavid du Colombier	print("	authid	", addr.authid, "\n");
445*219b2ee8SDavid du Colombier	print("	authdom	", addr.authdom, "\n");
446*219b2ee8SDavid du Colombier	print("	chal	", addr.chal, "\n");
447*219b2ee8SDavid du Colombier};
448*219b2ee8SDavid du Colombier
449*219b2ee8SDavid du Colombiersizeof_10_ = 36;
450*219b2ee8SDavid du Colombieraggr _10_
451*219b2ee8SDavid du Colombier{
452*219b2ee8SDavid du Colombier	'D' 0 perm;
453*219b2ee8SDavid du Colombier	'd' 4 newfid;
454*219b2ee8SDavid du Colombier	'a' 6 name;
455*219b2ee8SDavid du Colombier	'C' 34 mode;
456*219b2ee8SDavid du Colombier};
457*219b2ee8SDavid du Colombier
458*219b2ee8SDavid du Colombierdefn
459*219b2ee8SDavid du Colombier_10_(addr) {
460*219b2ee8SDavid du Colombier	complex _10_ addr;
461*219b2ee8SDavid du Colombier	print("	perm	", addr.perm, "\n");
462*219b2ee8SDavid du Colombier	print("	newfid	", addr.newfid, "\n");
463*219b2ee8SDavid du Colombier	print("	name	", addr.name, "\n");
464*219b2ee8SDavid du Colombier	print("	mode	", addr.mode, "\n");
465*219b2ee8SDavid du Colombier};
466*219b2ee8SDavid du Colombier
467*219b2ee8SDavid du Colombiersizeof_11_ = 12;
468*219b2ee8SDavid du Colombieraggr _11_
469*219b2ee8SDavid du Colombier{
470*219b2ee8SDavid du Colombier	'D' 0 offset;
471*219b2ee8SDavid du Colombier	'D' 4 count;
472*219b2ee8SDavid du Colombier	'X' 8 data;
473*219b2ee8SDavid du Colombier};
474*219b2ee8SDavid du Colombier
475*219b2ee8SDavid du Colombierdefn
476*219b2ee8SDavid du Colombier_11_(addr) {
477*219b2ee8SDavid du Colombier	complex _11_ addr;
478*219b2ee8SDavid du Colombier	print("	offset	", addr.offset, "\n");
479*219b2ee8SDavid du Colombier	print("	count	", addr.count, "\n");
480*219b2ee8SDavid du Colombier	print("	data	", addr.data\X, "\n");
481*219b2ee8SDavid du Colombier};
482*219b2ee8SDavid du Colombier
483*219b2ee8SDavid du Colombiersizeof_12_ = 116;
484*219b2ee8SDavid du Colombieraggr _12_
485*219b2ee8SDavid du Colombier{
486*219b2ee8SDavid du Colombier	'a' 0 stat;
487*219b2ee8SDavid du Colombier};
488*219b2ee8SDavid du Colombier
489*219b2ee8SDavid du Colombierdefn
490*219b2ee8SDavid du Colombier_12_(addr) {
491*219b2ee8SDavid du Colombier	complex _12_ addr;
492*219b2ee8SDavid du Colombier	print("	stat	", addr.stat, "\n");
493*219b2ee8SDavid du Colombier};
494*219b2ee8SDavid du Colombier
495*219b2ee8SDavid du Colombiersizeof_13_ = 148;
496*219b2ee8SDavid du Colombieraggr _13_
497*219b2ee8SDavid du Colombier{
498*219b2ee8SDavid du Colombier	{
499*219b2ee8SDavid du Colombier	'u' 0 oldtag;
500*219b2ee8SDavid du Colombier	Qid 4 qid;
501*219b2ee8SDavid du Colombier	'a' 12 rauth;
502*219b2ee8SDavid du Colombier	};
503*219b2ee8SDavid du Colombier	{
504*219b2ee8SDavid du Colombier	'a' 0 uname;
505*219b2ee8SDavid du Colombier	'a' 28 aname;
506*219b2ee8SDavid du Colombier	'a' 56 ticket;
507*219b2ee8SDavid du Colombier	'a' 128 auth;
508*219b2ee8SDavid du Colombier	};
509*219b2ee8SDavid du Colombier	{
510*219b2ee8SDavid du Colombier	'a' 0 ename;
511*219b2ee8SDavid du Colombier	'a' 64 authid;
512*219b2ee8SDavid du Colombier	'a' 92 authdom;
513*219b2ee8SDavid du Colombier	'a' 140 chal;
514*219b2ee8SDavid du Colombier	};
515*219b2ee8SDavid du Colombier	{
516*219b2ee8SDavid du Colombier	'D' 0 perm;
517*219b2ee8SDavid du Colombier	'd' 4 newfid;
518*219b2ee8SDavid du Colombier	'a' 6 name;
519*219b2ee8SDavid du Colombier	'C' 34 mode;
520*219b2ee8SDavid du Colombier	};
521*219b2ee8SDavid du Colombier	{
522*219b2ee8SDavid du Colombier	'D' 0 offset;
523*219b2ee8SDavid du Colombier	'D' 4 count;
524*219b2ee8SDavid du Colombier	'X' 8 data;
525*219b2ee8SDavid du Colombier	};
526*219b2ee8SDavid du Colombier	{
527*219b2ee8SDavid du Colombier	'a' 0 stat;
528*219b2ee8SDavid du Colombier	};
529*219b2ee8SDavid du Colombier};
530*219b2ee8SDavid du Colombier
531*219b2ee8SDavid du Colombierdefn
532*219b2ee8SDavid du Colombier_13_(addr) {
533*219b2ee8SDavid du Colombier	complex _13_ addr;
534*219b2ee8SDavid du Colombier	print("_7_ {\n");
535*219b2ee8SDavid du Colombier		_7_(addr+0);
536*219b2ee8SDavid du Colombier	print("}\n");
537*219b2ee8SDavid du Colombier	print("_8_ {\n");
538*219b2ee8SDavid du Colombier		_8_(addr+0);
539*219b2ee8SDavid du Colombier	print("}\n");
540*219b2ee8SDavid du Colombier	print("_9_ {\n");
541*219b2ee8SDavid du Colombier		_9_(addr+0);
542*219b2ee8SDavid du Colombier	print("}\n");
543*219b2ee8SDavid du Colombier	print("_10_ {\n");
544*219b2ee8SDavid du Colombier		_10_(addr+0);
545*219b2ee8SDavid du Colombier	print("}\n");
546*219b2ee8SDavid du Colombier	print("_11_ {\n");
547*219b2ee8SDavid du Colombier		_11_(addr+0);
548*219b2ee8SDavid du Colombier	print("}\n");
549*219b2ee8SDavid du Colombier	print("_12_ {\n");
550*219b2ee8SDavid du Colombier		_12_(addr+0);
551*219b2ee8SDavid du Colombier	print("}\n");
552*219b2ee8SDavid du Colombier};
553*219b2ee8SDavid du Colombier
554*219b2ee8SDavid du ColombiersizeofFcall = 156;
555*219b2ee8SDavid du Colombieraggr Fcall
556*219b2ee8SDavid du Colombier{
557*219b2ee8SDavid du Colombier	'C' 0 type;
558*219b2ee8SDavid du Colombier	'd' 2 fid;
559*219b2ee8SDavid du Colombier	'u' 4 tag;
560*219b2ee8SDavid du Colombier	{
561*219b2ee8SDavid du Colombier	{
562*219b2ee8SDavid du Colombier	'u' 8 oldtag;
563*219b2ee8SDavid du Colombier	Qid 12 qid;
564*219b2ee8SDavid du Colombier	'a' 20 rauth;
565*219b2ee8SDavid du Colombier	};
566*219b2ee8SDavid du Colombier	{
567*219b2ee8SDavid du Colombier	'a' 8 uname;
568*219b2ee8SDavid du Colombier	'a' 36 aname;
569*219b2ee8SDavid du Colombier	'a' 64 ticket;
570*219b2ee8SDavid du Colombier	'a' 136 auth;
571*219b2ee8SDavid du Colombier	};
572*219b2ee8SDavid du Colombier	{
573*219b2ee8SDavid du Colombier	'a' 8 ename;
574*219b2ee8SDavid du Colombier	'a' 72 authid;
575*219b2ee8SDavid du Colombier	'a' 100 authdom;
576*219b2ee8SDavid du Colombier	'a' 148 chal;
577*219b2ee8SDavid du Colombier	};
578*219b2ee8SDavid du Colombier	{
579*219b2ee8SDavid du Colombier	'D' 8 perm;
580*219b2ee8SDavid du Colombier	'd' 12 newfid;
581*219b2ee8SDavid du Colombier	'a' 14 name;
582*219b2ee8SDavid du Colombier	'C' 42 mode;
583*219b2ee8SDavid du Colombier	};
584*219b2ee8SDavid du Colombier	{
585*219b2ee8SDavid du Colombier	'D' 8 offset;
586*219b2ee8SDavid du Colombier	'D' 12 count;
587*219b2ee8SDavid du Colombier	'X' 16 data;
588*219b2ee8SDavid du Colombier	};
589*219b2ee8SDavid du Colombier	{
590*219b2ee8SDavid du Colombier	'a' 8 stat;
591*219b2ee8SDavid du Colombier	};
592*219b2ee8SDavid du Colombier	};
593*219b2ee8SDavid du Colombier};
594*219b2ee8SDavid du Colombier
595*219b2ee8SDavid du Colombierdefn
596*219b2ee8SDavid du ColombierFcall(addr) {
597*219b2ee8SDavid du Colombier	complex Fcall addr;
598*219b2ee8SDavid du Colombier	print("	type	", addr.type, "\n");
599*219b2ee8SDavid du Colombier	print("	fid	", addr.fid, "\n");
600*219b2ee8SDavid du Colombier	print("	tag	", addr.tag, "\n");
601*219b2ee8SDavid du Colombier	print("_13_ {\n");
602*219b2ee8SDavid du Colombier		_13_(addr+8);
603*219b2ee8SDavid du Colombier	print("}\n");
604*219b2ee8SDavid du Colombier};
605*219b2ee8SDavid du Colombier
606*219b2ee8SDavid du ColombiersizeofMuxbuf = 16400;
607*219b2ee8SDavid du Colombieraggr Muxbuf
608*219b2ee8SDavid du Colombier{
609*219b2ee8SDavid du Colombier	'D' 0 n;
610*219b2ee8SDavid du Colombier	'X' 4 putnext;
611*219b2ee8SDavid du Colombier	'X' 8 getnext;
612*219b2ee8SDavid du Colombier	'b' 12 fd;
613*219b2ee8SDavid du Colombier	'b' 13 eof;
614*219b2ee8SDavid du Colombier	'b' 14 roomwait;
615*219b2ee8SDavid du Colombier	'b' 15 datawait;
616*219b2ee8SDavid du Colombier	'a' 16 data;
617*219b2ee8SDavid du Colombier};
618*219b2ee8SDavid du Colombier
619*219b2ee8SDavid du Colombierdefn
620*219b2ee8SDavid du ColombierMuxbuf(addr) {
621*219b2ee8SDavid du Colombier	complex Muxbuf addr;
622*219b2ee8SDavid du Colombier	print("	n	", addr.n, "\n");
623*219b2ee8SDavid du Colombier	print("	putnext	", addr.putnext\X, "\n");
624*219b2ee8SDavid du Colombier	print("	getnext	", addr.getnext\X, "\n");
625*219b2ee8SDavid du Colombier	print("	fd	", addr.fd, "\n");
626*219b2ee8SDavid du Colombier	print("	eof	", addr.eof, "\n");
627*219b2ee8SDavid du Colombier	print("	roomwait	", addr.roomwait, "\n");
628*219b2ee8SDavid du Colombier	print("	datawait	", addr.datawait, "\n");
629*219b2ee8SDavid du Colombier	print("	data	", addr.data, "\n");
630*219b2ee8SDavid du Colombier};
631*219b2ee8SDavid du Colombier
632*219b2ee8SDavid du ColombiersizeofFdinfo = 16;
633*219b2ee8SDavid du Colombieraggr Fdinfo
634*219b2ee8SDavid du Colombier{
635*219b2ee8SDavid du Colombier	'U' 0 flags;
636*219b2ee8SDavid du Colombier	'U' 4 oflags;
637*219b2ee8SDavid du Colombier	'X' 8 name;
638*219b2ee8SDavid du Colombier	'A' Muxbuf 12 buf;
639*219b2ee8SDavid du Colombier};
640*219b2ee8SDavid du Colombier
641*219b2ee8SDavid du Colombierdefn
642*219b2ee8SDavid du ColombierFdinfo(addr) {
643*219b2ee8SDavid du Colombier	complex Fdinfo addr;
644*219b2ee8SDavid du Colombier	print("	flags	", addr.flags, "\n");
645*219b2ee8SDavid du Colombier	print("	oflags	", addr.oflags, "\n");
646*219b2ee8SDavid du Colombier	print("	name	", addr.name\X, "\n");
647*219b2ee8SDavid du Colombier	print("	buf	", addr.buf\X, "\n");
648*219b2ee8SDavid du Colombier};
649*219b2ee8SDavid du Colombier
650*219b2ee8SDavid du ColombiersizeofWaitmsg = 112;
651*219b2ee8SDavid du Colombieraggr Waitmsg
652*219b2ee8SDavid du Colombier{
653*219b2ee8SDavid du Colombier	'a' 0 pid;
654*219b2ee8SDavid du Colombier	'a' 12 time;
655*219b2ee8SDavid du Colombier	'a' 48 msg;
656*219b2ee8SDavid du Colombier};
657*219b2ee8SDavid du Colombier
658*219b2ee8SDavid du Colombierdefn
659*219b2ee8SDavid du ColombierWaitmsg(addr) {
660*219b2ee8SDavid du Colombier	complex Waitmsg addr;
661*219b2ee8SDavid du Colombier	print("	pid	", addr.pid, "\n");
662*219b2ee8SDavid du Colombier	print("	time	", addr.time, "\n");
663*219b2ee8SDavid du Colombier	print("	msg	", addr.msg, "\n");
664*219b2ee8SDavid du Colombier};
665*219b2ee8SDavid du Colombier
666*219b2ee8SDavid du ColombiersizeofMuxseg = 65640;
667*219b2ee8SDavid du Colombieraggr Muxseg
668*219b2ee8SDavid du Colombier{
669*219b2ee8SDavid du Colombier	_4_ 0 lock;
670*219b2ee8SDavid du Colombier	'D' 4 curfds;
671*219b2ee8SDavid du Colombier	'D' 8 selwait;
672*219b2ee8SDavid du Colombier	'D' 12 waittime;
673*219b2ee8SDavid du Colombier	fd_set 16 rwant;
674*219b2ee8SDavid du Colombier	fd_set 28 ewant;
675*219b2ee8SDavid du Colombier	'a' 40 bufs;
676*219b2ee8SDavid du Colombier};
677*219b2ee8SDavid du Colombier
678*219b2ee8SDavid du Colombierdefn
679*219b2ee8SDavid du ColombierMuxseg(addr) {
680*219b2ee8SDavid du Colombier	complex Muxseg addr;
681*219b2ee8SDavid du Colombier	print("_4_ lock {\n");
682*219b2ee8SDavid du Colombier	_4_(addr.lock);
683*219b2ee8SDavid du Colombier	print("}\n");
684*219b2ee8SDavid du Colombier	print("	curfds	", addr.curfds, "\n");
685*219b2ee8SDavid du Colombier	print("	selwait	", addr.selwait, "\n");
686*219b2ee8SDavid du Colombier	print("	waittime	", addr.waittime, "\n");
687*219b2ee8SDavid du Colombier	print("fd_set rwant {\n");
688*219b2ee8SDavid du Colombier	fd_set(addr.rwant);
689*219b2ee8SDavid du Colombier	print("}\n");
690*219b2ee8SDavid du Colombier	print("fd_set ewant {\n");
691*219b2ee8SDavid du Colombier	fd_set(addr.ewant);
692*219b2ee8SDavid du Colombier	print("}\n");
693*219b2ee8SDavid du Colombier	print("	bufs	", addr.bufs, "\n");
694*219b2ee8SDavid du Colombier};
695*219b2ee8SDavid du Colombier
696*219b2ee8SDavid du Colombiercomplex Muxseg mux;
697*219b2ee8SDavid du Colombiercomplex Fdinfo _startbuf:f;
698*219b2ee8SDavid du Colombiercomplex Muxbuf _startbuf:b;
699*219b2ee8SDavid du Colombiercomplex Muxbuf _copyproc:b;
700*219b2ee8SDavid du Colombiercomplex Muxbuf _readbuf:b;
701*219b2ee8SDavid du Colombiercomplex fd_set select:rfds;
702*219b2ee8SDavid du Colombiercomplex fd_set select:wfds;
703*219b2ee8SDavid du Colombiercomplex fd_set select:efds;
704*219b2ee8SDavid du Colombiercomplex timeval select:timeout;
705*219b2ee8SDavid du Colombiercomplex Fdinfo select:f;
706*219b2ee8SDavid du Colombiercomplex Muxbuf select:b;
707