rump_syscalls.c revision 1.21 1 /* $NetBSD: rump_syscalls.c,v 1.21 2008/11/16 18:41:05 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.215 2008/11/14 23:33:45 ad Exp
8 */
9
10 #include <sys/cdefs.h>
11 __KERNEL_RCSID(0, "$NetBSD: rump_syscalls.c,v 1.21 2008/11/16 18:41:05 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/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_ioctl(int fd, u_long com, void * data, int *error)
256 {
257 register_t retval = 0;
258 struct sys_ioctl_args arg;
259
260 SPARG(&arg, fd) = fd;
261 SPARG(&arg, com) = com;
262 SPARG(&arg, data) = data;
263
264 *error = sys_ioctl(curlwp, &arg, &retval);
265 if (*error)
266 retval = -1;
267 return retval;
268 }
269 __weak_alias(sys_ioctl,rump_enosys);
270
271 int
272 rump_sys_symlink(const char * path, const char * link, int *error)
273 {
274 register_t retval = 0;
275 struct sys_symlink_args arg;
276
277 SPARG(&arg, path) = path;
278 SPARG(&arg, link) = link;
279
280 *error = sys_symlink(curlwp, &arg, &retval);
281 if (*error)
282 retval = -1;
283 return retval;
284 }
285 __weak_alias(sys_symlink,rump_enosys);
286
287 ssize_t
288 rump_sys_readlink(const char * path, char * buf, size_t count, int *error)
289 {
290 register_t retval = 0;
291 struct sys_readlink_args arg;
292
293 SPARG(&arg, path) = path;
294 SPARG(&arg, buf) = buf;
295 SPARG(&arg, count) = count;
296
297 *error = sys_readlink(curlwp, &arg, &retval);
298 if (*error)
299 retval = -1;
300 return retval;
301 }
302 __weak_alias(sys_readlink,rump_enosys);
303
304 int
305 rump_sys_fsync(int fd, int *error)
306 {
307 register_t retval = 0;
308 struct sys_fsync_args arg;
309
310 SPARG(&arg, fd) = fd;
311
312 *error = sys_fsync(curlwp, &arg, &retval);
313 if (*error)
314 retval = -1;
315 return retval;
316 }
317 __weak_alias(sys_fsync,rump_enosys);
318
319 int
320 rump_sys_connect(int s, const struct sockaddr * name, unsigned int namelen, int *error)
321 {
322 register_t retval = 0;
323 struct sys_connect_args arg;
324
325 SPARG(&arg, s) = s;
326 SPARG(&arg, name) = name;
327 SPARG(&arg, namelen) = namelen;
328
329 *error = sys_connect(curlwp, &arg, &retval);
330 if (*error)
331 retval = -1;
332 return retval;
333 }
334 __weak_alias(sys_connect,rump_enosys);
335
336 int
337 rump_sys_setsockopt(int s, int level, int name, const void * val, unsigned int valsize, int *error)
338 {
339 register_t retval = 0;
340 struct sys_setsockopt_args arg;
341
342 SPARG(&arg, s) = s;
343 SPARG(&arg, level) = level;
344 SPARG(&arg, name) = name;
345 SPARG(&arg, val) = val;
346 SPARG(&arg, valsize) = valsize;
347
348 *error = sys_setsockopt(curlwp, &arg, &retval);
349 if (*error)
350 retval = -1;
351 return retval;
352 }
353 __weak_alias(sys_setsockopt,rump_enosys);
354
355 int
356 rump_sys_getsockopt(int s, int level, int name, void * val, unsigned int * avalsize, int *error)
357 {
358 register_t retval = 0;
359 struct sys_getsockopt_args arg;
360
361 SPARG(&arg, s) = s;
362 SPARG(&arg, level) = level;
363 SPARG(&arg, name) = name;
364 SPARG(&arg, val) = val;
365 SPARG(&arg, avalsize) = avalsize;
366
367 *error = sys_getsockopt(curlwp, &arg, &retval);
368 if (*error)
369 retval = -1;
370 return retval;
371 }
372 __weak_alias(sys_getsockopt,rump_enosys);
373
374 int
375 rump_sys_rename(const char * from, const char * to, int *error)
376 {
377 register_t retval = 0;
378 struct sys_rename_args arg;
379
380 SPARG(&arg, from) = from;
381 SPARG(&arg, to) = to;
382
383 *error = sys_rename(curlwp, &arg, &retval);
384 if (*error)
385 retval = -1;
386 return retval;
387 }
388 __weak_alias(sys_rename,rump_enosys);
389
390 int
391 rump_sys_mkfifo(const char * path, mode_t mode, int *error)
392 {
393 register_t retval = 0;
394 struct sys_mkfifo_args arg;
395
396 SPARG(&arg, path) = path;
397 SPARG(&arg, mode) = mode;
398
399 *error = sys_mkfifo(curlwp, &arg, &retval);
400 if (*error)
401 retval = -1;
402 return retval;
403 }
404 __weak_alias(sys_mkfifo,rump_enosys);
405
406 int
407 rump_sys_mkdir(const char * path, mode_t mode, int *error)
408 {
409 register_t retval = 0;
410 struct sys_mkdir_args arg;
411
412 SPARG(&arg, path) = path;
413 SPARG(&arg, mode) = mode;
414
415 *error = sys_mkdir(curlwp, &arg, &retval);
416 if (*error)
417 retval = -1;
418 return retval;
419 }
420 __weak_alias(sys_mkdir,rump_enosys);
421
422 int
423 rump_sys_rmdir(const char * path, int *error)
424 {
425 register_t retval = 0;
426 struct sys_rmdir_args arg;
427
428 SPARG(&arg, path) = path;
429
430 *error = sys_rmdir(curlwp, &arg, &retval);
431 if (*error)
432 retval = -1;
433 return retval;
434 }
435 __weak_alias(sys_rmdir,rump_enosys);
436
437 int
438 rump_sys_utimes(const char * path, const struct timeval * tptr, int *error)
439 {
440 register_t retval = 0;
441 struct sys_utimes_args arg;
442
443 SPARG(&arg, path) = path;
444 SPARG(&arg, tptr) = tptr;
445
446 *error = sys_utimes(curlwp, &arg, &retval);
447 if (*error)
448 retval = -1;
449 return retval;
450 }
451 __weak_alias(sys_utimes,rump_enosys);
452
453 ssize_t
454 rump_sys_pread(int fd, void * buf, size_t nbyte, int pad, off_t offset, int *error)
455 {
456 register_t retval = 0;
457 struct sys_pread_args arg;
458
459 SPARG(&arg, fd) = fd;
460 SPARG(&arg, buf) = buf;
461 SPARG(&arg, nbyte) = nbyte;
462 SPARG(&arg, pad) = pad;
463 SPARG(&arg, offset) = offset;
464
465 *error = sys_pread(curlwp, &arg, &retval);
466 if (*error)
467 retval = -1;
468 return retval;
469 }
470 __weak_alias(sys_pread,rump_enosys);
471
472 ssize_t
473 rump_sys_pwrite(int fd, const void * buf, size_t nbyte, int pad, off_t offset, int *error)
474 {
475 register_t retval = 0;
476 struct sys_pwrite_args arg;
477
478 SPARG(&arg, fd) = fd;
479 SPARG(&arg, buf) = buf;
480 SPARG(&arg, nbyte) = nbyte;
481 SPARG(&arg, pad) = pad;
482 SPARG(&arg, offset) = offset;
483
484 *error = sys_pwrite(curlwp, &arg, &retval);
485 if (*error)
486 retval = -1;
487 return retval;
488 }
489 __weak_alias(sys_pwrite,rump_enosys);
490
491 int
492 rump_sys_truncate(const char * path, int pad, off_t length, int *error)
493 {
494 register_t retval = 0;
495 struct sys_truncate_args arg;
496
497 SPARG(&arg, path) = path;
498 SPARG(&arg, pad) = pad;
499 SPARG(&arg, length) = length;
500
501 *error = sys_truncate(curlwp, &arg, &retval);
502 if (*error)
503 retval = -1;
504 return retval;
505 }
506 __weak_alias(sys_truncate,rump_enosys);
507
508 int
509 rump_sys___sysctl(const int * name, u_int namelen, void * old, size_t * oldlenp, const void * new, size_t newlen, int *error)
510 {
511 register_t retval = 0;
512 struct sys___sysctl_args arg;
513
514 SPARG(&arg, name) = name;
515 SPARG(&arg, namelen) = namelen;
516 SPARG(&arg, old) = old;
517 SPARG(&arg, oldlenp) = oldlenp;
518 SPARG(&arg, new) = new;
519 SPARG(&arg, newlen) = newlen;
520
521 *error = sys___sysctl(curlwp, &arg, &retval);
522 if (*error)
523 retval = -1;
524 return retval;
525 }
526 __weak_alias(sys___sysctl,rump_enosys);
527
528 int
529 rump_sys_lchmod(const char * path, mode_t mode, int *error)
530 {
531 register_t retval = 0;
532 struct sys_lchmod_args arg;
533
534 SPARG(&arg, path) = path;
535 SPARG(&arg, mode) = mode;
536
537 *error = sys_lchmod(curlwp, &arg, &retval);
538 if (*error)
539 retval = -1;
540 return retval;
541 }
542 __weak_alias(sys_lchmod,rump_enosys);
543
544 int
545 rump_sys_lchown(const char * path, uid_t uid, gid_t gid, int *error)
546 {
547 register_t retval = 0;
548 struct sys_lchown_args arg;
549
550 SPARG(&arg, path) = path;
551 SPARG(&arg, uid) = uid;
552 SPARG(&arg, gid) = gid;
553
554 *error = sys_lchown(curlwp, &arg, &retval);
555 if (*error)
556 retval = -1;
557 return retval;
558 }
559 __weak_alias(sys_lchown,rump_enosys);
560
561 int
562 rump_sys_lutimes(const char * path, const struct timeval * tptr, int *error)
563 {
564 register_t retval = 0;
565 struct sys_lutimes_args arg;
566
567 SPARG(&arg, path) = path;
568 SPARG(&arg, tptr) = tptr;
569
570 *error = sys_lutimes(curlwp, &arg, &retval);
571 if (*error)
572 retval = -1;
573 return retval;
574 }
575 __weak_alias(sys_lutimes,rump_enosys);
576
577 int
578 rump_sys_lchflags(const char * path, u_long flags, int *error)
579 {
580 register_t retval = 0;
581 struct sys_lchflags_args arg;
582
583 SPARG(&arg, path) = path;
584 SPARG(&arg, flags) = flags;
585
586 *error = sys_lchflags(curlwp, &arg, &retval);
587 if (*error)
588 retval = -1;
589 return retval;
590 }
591 __weak_alias(sys_lchflags,rump_enosys);
592
593 int
594 rump_sys___stat30(const char * path, struct stat * ub, int *error)
595 {
596 register_t retval = 0;
597 struct sys___stat30_args arg;
598
599 SPARG(&arg, path) = path;
600 SPARG(&arg, ub) = ub;
601
602 *error = sys___stat30(curlwp, &arg, &retval);
603 if (*error)
604 retval = -1;
605 return retval;
606 }
607 __weak_alias(sys___stat30,rump_enosys);
608
609 int
610 rump_sys___lstat30(const char * path, struct stat * ub, int *error)
611 {
612 register_t retval = 0;
613 struct sys___lstat30_args arg;
614
615 SPARG(&arg, path) = path;
616 SPARG(&arg, ub) = ub;
617
618 *error = sys___lstat30(curlwp, &arg, &retval);
619 if (*error)
620 retval = -1;
621 return retval;
622 }
623 __weak_alias(sys___lstat30,rump_enosys);
624
625 int
626 rump_sys___socket30(int domain, int type, int protocol, int *error)
627 {
628 register_t retval = 0;
629 struct sys___socket30_args arg;
630
631 SPARG(&arg, domain) = domain;
632 SPARG(&arg, type) = type;
633 SPARG(&arg, protocol) = protocol;
634
635 *error = sys___socket30(curlwp, &arg, &retval);
636 if (*error)
637 retval = -1;
638 return retval;
639 }
640 __weak_alias(sys___socket30,rump_enosys);
641