rump_syscalls.c revision 1.18 1 /* $NetBSD: rump_syscalls.c,v 1.18 2008/10/15 13:02:01 pooka Exp $ */
2
3 /*
4 * System call marshalling for rump.
5 *
6 * DO NOT EDIT-- this file is automatically generated.
7 * created from NetBSD: syscalls.master,v 1.210 2008/10/15 13:01:15 pooka Exp
8 */
9
10 #include <sys/cdefs.h>
11 __KERNEL_RCSID(0, "$NetBSD: rump_syscalls.c,v 1.18 2008/10/15 13:02:01 pooka Exp $");
12
13 #include <sys/types.h>
14 #include <sys/param.h>
15 #include <sys/proc.h>
16 #include <sys/syscallargs.h>
17 #include "rump_syscalls.h"
18 #include "rump_private.h"
19
20 #if BYTE_ORDER == BIG_ENDIAN
21 #define SPARG(p,k) ((p)->k.be.datum)
22 #else /* LITTLE_ENDIAN, I hope dearly */
23 #define SPARG(p,k) ((p)->k.le.datum)
24 #endif
25
26 int rump_enosys(void);
27 int
28 rump_enosys()
29 {
30
31 return ENOSYS;
32 }
33
34 ssize_t
35 rump_sys_read(int fd, void * buf, size_t nbyte, int *error)
36 {
37 register_t retval = 0;
38 struct sys_read_args arg;
39
40 SPARG(&arg, fd) = fd;
41 SPARG(&arg, buf) = buf;
42 SPARG(&arg, nbyte) = nbyte;
43
44 *error = sys_read(curlwp, &arg, &retval);
45 if (*error)
46 retval = -1;
47 return retval;
48 }
49 __weak_alias(sys_read,rump_enosys);
50
51 ssize_t
52 rump_sys_write(int fd, const void * buf, size_t nbyte, int *error)
53 {
54 register_t retval = 0;
55 struct sys_write_args arg;
56
57 SPARG(&arg, fd) = fd;
58 SPARG(&arg, buf) = buf;
59 SPARG(&arg, nbyte) = nbyte;
60
61 *error = sys_write(curlwp, &arg, &retval);
62 if (*error)
63 retval = -1;
64 return retval;
65 }
66 __weak_alias(sys_write,rump_enosys);
67
68 int
69 rump_sys_open(const char * path, int flags, mode_t mode, int *error)
70 {
71 register_t retval = 0;
72 struct sys_open_args arg;
73
74 SPARG(&arg, path) = path;
75 SPARG(&arg, flags) = flags;
76 SPARG(&arg, mode) = mode;
77
78 *error = sys_open(curlwp, &arg, &retval);
79 if (*error)
80 retval = -1;
81 return retval;
82 }
83 __weak_alias(sys_open,rump_enosys);
84
85 int
86 rump_sys_close(int fd, int *error)
87 {
88 register_t retval = 0;
89 struct sys_close_args arg;
90
91 SPARG(&arg, fd) = fd;
92
93 *error = sys_close(curlwp, &arg, &retval);
94 if (*error)
95 retval = -1;
96 return retval;
97 }
98 __weak_alias(sys_close,rump_enosys);
99
100 int
101 rump_sys_link(const char * path, const char * link, int *error)
102 {
103 register_t retval = 0;
104 struct sys_link_args arg;
105
106 SPARG(&arg, path) = path;
107 SPARG(&arg, link) = link;
108
109 *error = sys_link(curlwp, &arg, &retval);
110 if (*error)
111 retval = -1;
112 return retval;
113 }
114 __weak_alias(sys_link,rump_enosys);
115
116 int
117 rump_sys_unlink(const char * path, int *error)
118 {
119 register_t retval = 0;
120 struct sys_unlink_args arg;
121
122 SPARG(&arg, path) = path;
123
124 *error = sys_unlink(curlwp, &arg, &retval);
125 if (*error)
126 retval = -1;
127 return retval;
128 }
129 __weak_alias(sys_unlink,rump_enosys);
130
131 int
132 rump_sys_chdir(const char * path, int *error)
133 {
134 register_t retval = 0;
135 struct sys_chdir_args arg;
136
137 SPARG(&arg, path) = path;
138
139 *error = sys_chdir(curlwp, &arg, &retval);
140 if (*error)
141 retval = -1;
142 return retval;
143 }
144 __weak_alias(sys_chdir,rump_enosys);
145
146 int
147 rump_sys_fchdir(int fd, int *error)
148 {
149 register_t retval = 0;
150 struct sys_fchdir_args arg;
151
152 SPARG(&arg, fd) = fd;
153
154 *error = sys_fchdir(curlwp, &arg, &retval);
155 if (*error)
156 retval = -1;
157 return retval;
158 }
159 __weak_alias(sys_fchdir,rump_enosys);
160
161 int
162 rump_sys_mknod(const char * path, mode_t mode, dev_t dev, int *error)
163 {
164 register_t retval = 0;
165 struct sys_mknod_args arg;
166
167 SPARG(&arg, path) = path;
168 SPARG(&arg, mode) = mode;
169 SPARG(&arg, dev) = dev;
170
171 *error = sys_mknod(curlwp, &arg, &retval);
172 if (*error)
173 retval = -1;
174 return retval;
175 }
176 __weak_alias(sys_mknod,rump_enosys);
177
178 int
179 rump_sys_chmod(const char * path, mode_t mode, int *error)
180 {
181 register_t retval = 0;
182 struct sys_chmod_args arg;
183
184 SPARG(&arg, path) = path;
185 SPARG(&arg, mode) = mode;
186
187 *error = sys_chmod(curlwp, &arg, &retval);
188 if (*error)
189 retval = -1;
190 return retval;
191 }
192 __weak_alias(sys_chmod,rump_enosys);
193
194 int
195 rump_sys_chown(const char * path, uid_t uid, gid_t gid, int *error)
196 {
197 register_t retval = 0;
198 struct sys_chown_args arg;
199
200 SPARG(&arg, path) = path;
201 SPARG(&arg, uid) = uid;
202 SPARG(&arg, gid) = gid;
203
204 *error = sys_chown(curlwp, &arg, &retval);
205 if (*error)
206 retval = -1;
207 return retval;
208 }
209 __weak_alias(sys_chown,rump_enosys);
210
211 int
212 rump_sys_unmount(const char * path, int flags, int *error)
213 {
214 register_t retval = 0;
215 struct sys_unmount_args arg;
216
217 SPARG(&arg, path) = path;
218 SPARG(&arg, flags) = flags;
219
220 *error = sys_unmount(curlwp, &arg, &retval);
221 if (*error)
222 retval = -1;
223 return retval;
224 }
225 __weak_alias(sys_unmount,rump_enosys);
226
227 int
228 rump_sys_chflags(const char * path, u_long flags, int *error)
229 {
230 register_t retval = 0;
231 struct sys_chflags_args arg;
232
233 SPARG(&arg, path) = path;
234 SPARG(&arg, flags) = flags;
235
236 *error = sys_chflags(curlwp, &arg, &retval);
237 if (*error)
238 retval = -1;
239 return retval;
240 }
241 __weak_alias(sys_chflags,rump_enosys);
242
243 void
244 rump_sys_sync(int *error)
245 {
246 register_t retval = 0;
247
248 *error = sys_sync(curlwp, NULL, &retval);
249 if (*error)
250 retval = -1;
251 }
252 __weak_alias(sys_sync,rump_enosys);
253
254 int
255 rump_sys_symlink(const char * path, const char * link, int *error)
256 {
257 register_t retval = 0;
258 struct sys_symlink_args arg;
259
260 SPARG(&arg, path) = path;
261 SPARG(&arg, link) = link;
262
263 *error = sys_symlink(curlwp, &arg, &retval);
264 if (*error)
265 retval = -1;
266 return retval;
267 }
268 __weak_alias(sys_symlink,rump_enosys);
269
270 ssize_t
271 rump_sys_readlink(const char * path, char * buf, size_t count, int *error)
272 {
273 register_t retval = 0;
274 struct sys_readlink_args arg;
275
276 SPARG(&arg, path) = path;
277 SPARG(&arg, buf) = buf;
278 SPARG(&arg, count) = count;
279
280 *error = sys_readlink(curlwp, &arg, &retval);
281 if (*error)
282 retval = -1;
283 return retval;
284 }
285 __weak_alias(sys_readlink,rump_enosys);
286
287 int
288 rump_sys_fsync(int fd, int *error)
289 {
290 register_t retval = 0;
291 struct sys_fsync_args arg;
292
293 SPARG(&arg, fd) = fd;
294
295 *error = sys_fsync(curlwp, &arg, &retval);
296 if (*error)
297 retval = -1;
298 return retval;
299 }
300 __weak_alias(sys_fsync,rump_enosys);
301
302 int
303 rump_sys_connect(int s, const struct sockaddr * name, unsigned int namelen, int *error)
304 {
305 register_t retval = 0;
306 struct sys_connect_args arg;
307
308 SPARG(&arg, s) = s;
309 SPARG(&arg, name) = name;
310 SPARG(&arg, namelen) = namelen;
311
312 *error = sys_connect(curlwp, &arg, &retval);
313 if (*error)
314 retval = -1;
315 return retval;
316 }
317 __weak_alias(sys_connect,rump_enosys);
318
319 int
320 rump_sys_setsockopt(int s, int level, int name, const void * val, unsigned int valsize, int *error)
321 {
322 register_t retval = 0;
323 struct sys_setsockopt_args arg;
324
325 SPARG(&arg, s) = s;
326 SPARG(&arg, level) = level;
327 SPARG(&arg, name) = name;
328 SPARG(&arg, val) = val;
329 SPARG(&arg, valsize) = valsize;
330
331 *error = sys_setsockopt(curlwp, &arg, &retval);
332 if (*error)
333 retval = -1;
334 return retval;
335 }
336 __weak_alias(sys_setsockopt,rump_enosys);
337
338 int
339 rump_sys_getsockopt(int s, int level, int name, void * val, unsigned int * avalsize, int *error)
340 {
341 register_t retval = 0;
342 struct sys_getsockopt_args arg;
343
344 SPARG(&arg, s) = s;
345 SPARG(&arg, level) = level;
346 SPARG(&arg, name) = name;
347 SPARG(&arg, val) = val;
348 SPARG(&arg, avalsize) = avalsize;
349
350 *error = sys_getsockopt(curlwp, &arg, &retval);
351 if (*error)
352 retval = -1;
353 return retval;
354 }
355 __weak_alias(sys_getsockopt,rump_enosys);
356
357 int
358 rump_sys_rename(const char * from, const char * to, int *error)
359 {
360 register_t retval = 0;
361 struct sys_rename_args arg;
362
363 SPARG(&arg, from) = from;
364 SPARG(&arg, to) = to;
365
366 *error = sys_rename(curlwp, &arg, &retval);
367 if (*error)
368 retval = -1;
369 return retval;
370 }
371 __weak_alias(sys_rename,rump_enosys);
372
373 int
374 rump_sys_mkfifo(const char * path, mode_t mode, int *error)
375 {
376 register_t retval = 0;
377 struct sys_mkfifo_args arg;
378
379 SPARG(&arg, path) = path;
380 SPARG(&arg, mode) = mode;
381
382 *error = sys_mkfifo(curlwp, &arg, &retval);
383 if (*error)
384 retval = -1;
385 return retval;
386 }
387 __weak_alias(sys_mkfifo,rump_enosys);
388
389 int
390 rump_sys_mkdir(const char * path, mode_t mode, int *error)
391 {
392 register_t retval = 0;
393 struct sys_mkdir_args arg;
394
395 SPARG(&arg, path) = path;
396 SPARG(&arg, mode) = mode;
397
398 *error = sys_mkdir(curlwp, &arg, &retval);
399 if (*error)
400 retval = -1;
401 return retval;
402 }
403 __weak_alias(sys_mkdir,rump_enosys);
404
405 int
406 rump_sys_rmdir(const char * path, int *error)
407 {
408 register_t retval = 0;
409 struct sys_rmdir_args arg;
410
411 SPARG(&arg, path) = path;
412
413 *error = sys_rmdir(curlwp, &arg, &retval);
414 if (*error)
415 retval = -1;
416 return retval;
417 }
418 __weak_alias(sys_rmdir,rump_enosys);
419
420 int
421 rump_sys_utimes(const char * path, const struct timeval * tptr, int *error)
422 {
423 register_t retval = 0;
424 struct sys_utimes_args arg;
425
426 SPARG(&arg, path) = path;
427 SPARG(&arg, tptr) = tptr;
428
429 *error = sys_utimes(curlwp, &arg, &retval);
430 if (*error)
431 retval = -1;
432 return retval;
433 }
434 __weak_alias(sys_utimes,rump_enosys);
435
436 ssize_t
437 rump_sys_pread(int fd, void * buf, size_t nbyte, int pad, off_t offset, int *error)
438 {
439 register_t retval = 0;
440 struct sys_pread_args arg;
441
442 SPARG(&arg, fd) = fd;
443 SPARG(&arg, buf) = buf;
444 SPARG(&arg, nbyte) = nbyte;
445 SPARG(&arg, pad) = pad;
446 SPARG(&arg, offset) = offset;
447
448 *error = sys_pread(curlwp, &arg, &retval);
449 if (*error)
450 retval = -1;
451 return retval;
452 }
453 __weak_alias(sys_pread,rump_enosys);
454
455 ssize_t
456 rump_sys_pwrite(int fd, const void * buf, size_t nbyte, int pad, off_t offset, int *error)
457 {
458 register_t retval = 0;
459 struct sys_pwrite_args arg;
460
461 SPARG(&arg, fd) = fd;
462 SPARG(&arg, buf) = buf;
463 SPARG(&arg, nbyte) = nbyte;
464 SPARG(&arg, pad) = pad;
465 SPARG(&arg, offset) = offset;
466
467 *error = sys_pwrite(curlwp, &arg, &retval);
468 if (*error)
469 retval = -1;
470 return retval;
471 }
472 __weak_alias(sys_pwrite,rump_enosys);
473
474 int
475 rump_sys_truncate(const char * path, int pad, off_t length, int *error)
476 {
477 register_t retval = 0;
478 struct sys_truncate_args arg;
479
480 SPARG(&arg, path) = path;
481 SPARG(&arg, pad) = pad;
482 SPARG(&arg, length) = length;
483
484 *error = sys_truncate(curlwp, &arg, &retval);
485 if (*error)
486 retval = -1;
487 return retval;
488 }
489 __weak_alias(sys_truncate,rump_enosys);
490
491 int
492 rump_sys___sysctl(const int * name, u_int namelen, void * old, size_t * oldlenp, const void * new, size_t newlen, int *error)
493 {
494 register_t retval = 0;
495 struct sys___sysctl_args arg;
496
497 SPARG(&arg, name) = name;
498 SPARG(&arg, namelen) = namelen;
499 SPARG(&arg, old) = old;
500 SPARG(&arg, oldlenp) = oldlenp;
501 SPARG(&arg, new) = new;
502 SPARG(&arg, newlen) = newlen;
503
504 *error = sys___sysctl(curlwp, &arg, &retval);
505 if (*error)
506 retval = -1;
507 return retval;
508 }
509 __weak_alias(sys___sysctl,rump_enosys);
510
511 int
512 rump_sys_lchmod(const char * path, mode_t mode, int *error)
513 {
514 register_t retval = 0;
515 struct sys_lchmod_args arg;
516
517 SPARG(&arg, path) = path;
518 SPARG(&arg, mode) = mode;
519
520 *error = sys_lchmod(curlwp, &arg, &retval);
521 if (*error)
522 retval = -1;
523 return retval;
524 }
525 __weak_alias(sys_lchmod,rump_enosys);
526
527 int
528 rump_sys_lchown(const char * path, uid_t uid, gid_t gid, int *error)
529 {
530 register_t retval = 0;
531 struct sys_lchown_args arg;
532
533 SPARG(&arg, path) = path;
534 SPARG(&arg, uid) = uid;
535 SPARG(&arg, gid) = gid;
536
537 *error = sys_lchown(curlwp, &arg, &retval);
538 if (*error)
539 retval = -1;
540 return retval;
541 }
542 __weak_alias(sys_lchown,rump_enosys);
543
544 int
545 rump_sys_lutimes(const char * path, const struct timeval * tptr, int *error)
546 {
547 register_t retval = 0;
548 struct sys_lutimes_args arg;
549
550 SPARG(&arg, path) = path;
551 SPARG(&arg, tptr) = tptr;
552
553 *error = sys_lutimes(curlwp, &arg, &retval);
554 if (*error)
555 retval = -1;
556 return retval;
557 }
558 __weak_alias(sys_lutimes,rump_enosys);
559
560 int
561 rump_sys_lchflags(const char * path, u_long flags, int *error)
562 {
563 register_t retval = 0;
564 struct sys_lchflags_args arg;
565
566 SPARG(&arg, path) = path;
567 SPARG(&arg, flags) = flags;
568
569 *error = sys_lchflags(curlwp, &arg, &retval);
570 if (*error)
571 retval = -1;
572 return retval;
573 }
574 __weak_alias(sys_lchflags,rump_enosys);
575
576 int
577 rump_sys___stat30(const char * path, struct stat * ub, int *error)
578 {
579 register_t retval = 0;
580 struct sys___stat30_args arg;
581
582 SPARG(&arg, path) = path;
583 SPARG(&arg, ub) = ub;
584
585 *error = sys___stat30(curlwp, &arg, &retval);
586 if (*error)
587 retval = -1;
588 return retval;
589 }
590 __weak_alias(sys___stat30,rump_enosys);
591
592 int
593 rump_sys___lstat30(const char * path, struct stat * ub, int *error)
594 {
595 register_t retval = 0;
596 struct sys___lstat30_args arg;
597
598 SPARG(&arg, path) = path;
599 SPARG(&arg, ub) = ub;
600
601 *error = sys___lstat30(curlwp, &arg, &retval);
602 if (*error)
603 retval = -1;
604 return retval;
605 }
606 __weak_alias(sys___lstat30,rump_enosys);
607
608 int
609 rump_sys___socket30(int domain, int type, int protocol, int *error)
610 {
611 register_t retval = 0;
612 struct sys___socket30_args arg;
613
614 SPARG(&arg, domain) = domain;
615 SPARG(&arg, type) = type;
616 SPARG(&arg, protocol) = protocol;
617
618 *error = sys___socket30(curlwp, &arg, &retval);
619 if (*error)
620 retval = -1;
621 return retval;
622 }
623 __weak_alias(sys___socket30,rump_enosys);
624