Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1)

Side by Side Diff: sysdeps/nacl/sysdep.h

Issue 7737022: Change make-syscalls.sh to make syscall interception possible. (Closed) Base URL: http://git.chromium.org/native_client/nacl-glibc.git@master
Patch Set: Created 9 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 #ifndef _NACL_SYSDEP_H 1 #ifndef _NACL_SYSDEP_H
2 #define _NACL_SYSDEP_H 1 2 #define _NACL_SYSDEP_H 1
3 3
4 #if !defined(__ASSEMBLER__) 4 #if !defined(__ASSEMBLER__)
5 #include <futex_emulation.h> 5 #include <futex_emulation.h>
6 #include <irt_syscalls.h> 6 #include <irt_syscalls.h>
7 #include <lowlevellock.h> 7 #include <lowlevellock.h>
8 8
9 /* Implementation of all syscalls for use in platform- and OS- independent code 9 /* Implementation of all syscalls for use in platform- and OS- independent code
10 as inline functions. Each function translates the syscall arguments into IRT 10 as inline functions. Each function translates the syscall arguments into IRT
11 arguments and allows to intercept each call in user code. 11 arguments and allows to intercept each call in user code.
12 TODO(khim): implement the interception logic. */ 12 TODO(khim): implement the interception logic. */
13 13
14 #define INTERNAL_SYSCALL(name, err, nr, args...) \ 14 # define INTERNAL_SYSCALL(name, err, nr, args...) \
15 INTERNAL_SYSCALL_ ## name ## _ ## nr (&err , ## args) 15 INTERNAL_SYSCALL_ ## name ## _ ## nr (&err , ## args)
16 16
17 #define INTERNAL_SYSCALL_NCS(name, err, nr, args...) \ 17 # define INTERNAL_SYSCALL_NCS(name, err, nr, args...) \
18 INTERNAL_SYSCALL_NCS_ ## nr (name, &err , ## args) 18 INTERNAL_SYSCALL_NCS_ ## nr (name, &err , ## args)
19 19
20 __extern_always_inline int 20 __extern_always_inline int
21 INTERNAL_SYSCALL_NCS_3 (int syscall_nr, int *err, int id1, int id2, int id3) 21 INTERNAL_SYSCALL_NCS_3 (int syscall_nr, int *err, int id1, int id2, int id3)
22 { 22 {
23 *err = (38 /* ENOSYS */); 23 *err = (38 /* ENOSYS */);
24 return 0; 24 return 0;
25 } 25 }
26 26
27 __extern_always_inline int 27 __extern_always_inline int
28 INTERNAL_SYSCALL_access_2 (int *err, const char *pathname, int mode) 28 INTERNAL_SYSCALL_access_2 (int *err, const char *pathname, int mode)
29 { 29 {
30 *err = (38 /* ENOSYS */); 30 *err = (38 /* ENOSYS */);
31 return 0; 31 return 0;
32 } 32 }
33 33
34 __extern_always_inline int 34 __extern_always_inline int
35 INTERNAL_SYSCALL_acct_1 (int *err, const char *filename)
36 {
37 *err = (38 /* ENOSYS */);
38 return 0;
39 }
40
41 __extern_always_inline int
42 INTERNAL_SYSCALL_adjtimex_1 (int *err, struct timex *buf)
43 {
44 *err = (38 /* ENOSYS */);
45 return 0;
46 }
47
48 __extern_always_inline int
49 INTERNAL_SYSCALL_arch_prctl_2 (int *err, int code,
50 union __attribute__ ((__transparent_union__))
51 {
52 long *parg;
53 long larg;
54 int iarg;
55 } addr)
56 {
57 *err = (38 /* ENOSYS */);
58 return 0;
59 }
60
61 __extern_always_inline int
62 INTERNAL_SYSCALL_bdflush_2 (int *err, int func,
63 union __attribute__ ((__transparent_union__))
64 {
65 long *parg;
66 long larg;
67 int iarg;
68 } data)
69 {
70 *err = (38 /* ENOSYS */);
71 return 0;
72 }
73
74 struct __user_cap_header_struct;
75 struct __user_cap_data_struct;
76 __extern_always_inline int
77 INTERNAL_SYSCALL_capget_2 (int *err, struct __user_cap_header_struct *hdrp,
78 struct __user_cap_data_struct *datap)
79 {
80 *err = (38 /* ENOSYS */);
81 return 0;
82 }
83
84 __extern_always_inline int
85 INTERNAL_SYSCALL_capset_2 (int *err, struct __user_cap_header_struct *hdrp,
86 const struct __user_cap_data_struct *datap)
87 {
88 *err = (38 /* ENOSYS */);
89 return 0;
90 }
91
92 __extern_always_inline int
93 INTERNAL_SYSCALL_chdir_1 (int *err, const char *path)
94 {
95 *err = (38 /* ENOSYS */);
96 return 0;
97 }
98
99 __extern_always_inline int
35 INTERNAL_SYSCALL_chmod_2 (int *err, const char *path, mode_t mode) 100 INTERNAL_SYSCALL_chmod_2 (int *err, const char *path, mode_t mode)
36 { 101 {
37 *err = (38 /* ENOSYS */); 102 *err = (38 /* ENOSYS */);
38 return 0; 103 return 0;
39 } 104 }
40 105
41 __extern_always_inline int 106 __extern_always_inline int
42 INTERNAL_SYSCALL_chown_3 (int *err, const char *path, 107 INTERNAL_SYSCALL_chown_3 (int *err, const char *path,
43 __kernel_uid_t owner, __kernel_gid_t group) 108 __kernel_uid_t owner, __kernel_gid_t group)
44 { 109 {
45 *err = (38 /* ENOSYS */); 110 *err = (38 /* ENOSYS */);
46 return 0; 111 return 0;
47 } 112 }
48 113
49 __extern_always_inline int 114 __extern_always_inline int
50 INTERNAL_SYSCALL_chown32_3 (int *err, const char *path, 115 INTERNAL_SYSCALL_chown32_3 (int *err, const char *path,
51 uid_t owner, gid_t group) 116 uid_t owner, gid_t group)
52 { 117 {
53 *err = (38 /* ENOSYS */); 118 *err = (38 /* ENOSYS */);
54 return 0; 119 return 0;
55 } 120 }
56 121
57 __extern_always_inline int 122 __extern_always_inline int
123 INTERNAL_SYSCALL_chroot_1 (int *err, const char *path)
124 {
125 *err = (38 /* ENOSYS */);
126 return 0;
127 }
128
129 __extern_always_inline int
58 INTERNAL_SYSCALL_clock_getres_2 (int *err, clockid_t clk_id, 130 INTERNAL_SYSCALL_clock_getres_2 (int *err, clockid_t clk_id,
59 struct timespec *res) 131 struct timespec *res)
60 { 132 {
61 *err = (38 /* ENOSYS */); 133 *err = (38 /* ENOSYS */);
62 return 0; 134 return 0;
63 } 135 }
64 136
65 __extern_always_inline int 137 __extern_always_inline int
66 INTERNAL_SYSCALL_clock_gettime_2 (int *err, clockid_t clk_id, 138 INTERNAL_SYSCALL_clock_gettime_2 (int *err, clockid_t clk_id,
67 struct timespec *tp) 139 struct timespec *tp)
(...skipping 12 matching lines...) Expand all
80 } 152 }
81 153
82 __extern_always_inline int 154 __extern_always_inline int
83 INTERNAL_SYSCALL_clock_settime_2 (int *err, clockid_t clk_id, 155 INTERNAL_SYSCALL_clock_settime_2 (int *err, clockid_t clk_id,
84 const struct timespec *tp) 156 const struct timespec *tp)
85 { 157 {
86 *err = (38 /* ENOSYS */); 158 *err = (38 /* ENOSYS */);
87 return 0; 159 return 0;
88 } 160 }
89 161
162 struct pthread;
163 __extern_always_inline pid_t
164 INTERNAL_SYSCALL_clone_7 (int *err, int (*fn)(void *), void *child_stack,
165 int flags, void *arg, pid_t *ptid,
166 struct pthread *tls, pid_t *ctid)
167 {
168 *err = (38 /* ENOSYS */);
169 return 0;
170 }
171
172 __extern_always_inline pid_t
173 INTERNAL_SYSCALL_clone_4(int *err, int (*fn)(void *), void *child_stack,
174 int flags, void *arg)
175 {
176 return INTERNAL_SYSCALL_clone_7 (err, fn, child_stack, flags, arg,
177 NULL, NULL, NULL);
178 }
179
90 __extern_always_inline int 180 __extern_always_inline int
91 INTERNAL_SYSCALL_close_1 (int *err, unsigned int fd) 181 INTERNAL_SYSCALL_close_1 (int *err, unsigned int fd)
92 { 182 {
93 *err = __nacl_irt_close(fd); 183 *err = __nacl_irt_close(fd);
94 return 0; 184 return 0;
95 } 185 }
96 186
187 __extern_always_inline __caddr_t
188 INTERNAL_SYSCALL_create_module_2 (int *err, const char *name, size_t size)
189 {
190 *err = (38 /* ENOSYS */);
191 return 0;
192 }
193
194 __extern_always_inline int
195 INTERNAL_SYSCALL_delete_module_4 (int *err, const char *name_user,
196 unsigned int flags,
197 const struct timespec *rqtp,
198 struct timespec *rmtp)
199 {
200 *err = (38 /* ENOSYS */);
201 return 0;
202 }
203
204 __extern_always_inline int
205 INTERNAL_SYSCALL_dup_1 (int *err, int oldfd)
206 {
207 int newfd;
208 *err = __nacl_irt_dup (oldfd, &newfd);
209 return newfd;
210 }
211
212 __extern_always_inline int
213 INTERNAL_SYSCALL_dup2_2 (int *err, int oldfd, int newfd)
214 {
215 *err = __nacl_irt_dup2 (oldfd, newfd);
216 return newfd;
217 }
218
219 __extern_always_inline int
220 INTERNAL_SYSCALL_epoll_create_1 (int *err, int flags)
221 {
222 *err = (38 /* ENOSYS */);
223 return 0;
224 }
225
226 __extern_always_inline int
227 INTERNAL_SYSCALL_epoll_ctl_4 (int *err, int epfd, int op, int fd,
228 struct epoll_event *event)
229 {
230 *err = (38 /* ENOSYS */);
231 return 0;
232 }
233
97 __extern_always_inline int 234 __extern_always_inline int
98 INTERNAL_SYSCALL_epoll_pwait_6 (int *err, int epfd, struct epoll_event *events, 235 INTERNAL_SYSCALL_epoll_pwait_6 (int *err, int epfd, struct epoll_event *events,
99 int maxevents, int timeout, 236 int maxevents, int timeout,
100 const sigset_t *sigmask, size_t sigsetsize) 237 const sigset_t *sigmask, size_t sigsetsize)
101 { 238 {
102 *err = (38 /* ENOSYS */); 239 *err = (38 /* ENOSYS */);
103 return 0; 240 return 0;
104 } 241 }
105 242
106 __extern_always_inline int 243 __extern_always_inline int
107 INTERNAL_SYSCALL_execve_3 (int *err, const char *filename, char *const argv[], 244 INTERNAL_SYSCALL_execve_3 (int *err, const char *filename, char *const argv[],
108 char *const envp[]) 245 char *const envp[])
109 { 246 {
110 *err = (38 /* ENOSYS */); 247 *err = (38 /* ENOSYS */);
111 return 0; 248 return 0;
112 } 249 }
113 250
114 __extern_always_inline int 251 __extern_always_inline int
252 INTERNAL_SYSCALL_epoll_wait_4 (int *err, int epfd, struct epoll_event *events,
253 int maxevents, int timeout)
254 {
255 *err = (38 /* ENOSYS */);
256 return 0;
257 }
258
259 __extern_always_inline int
115 INTERNAL_SYSCALL_eventfd2_2 (int *err, unsigned int initval, int flags) 260 INTERNAL_SYSCALL_eventfd2_2 (int *err, unsigned int initval, int flags)
116 { 261 {
117 *err = (38 /* ENOSYS */); 262 *err = (38 /* ENOSYS */);
118 return 0; 263 return 0;
119 } 264 }
120 265
121 __extern_always_inline int 266 __extern_always_inline int
122 INTERNAL_SYSCALL_eventfd_1 (int *err, unsigned int initval) 267 INTERNAL_SYSCALL_eventfd_1 (int *err, unsigned int initval)
123 { 268 {
124 return INTERNAL_SYSCALL_eventfd2_2(err, initval, 0); 269 return INTERNAL_SYSCALL_eventfd2_2 (err, initval, 0);
125 } 270 }
126 271
127 __extern_always_inline int 272 __extern_always_inline int
128 INTERNAL_SYSCALL_faccessat_3 (int *err, int dirfd, const char *pathname, 273 INTERNAL_SYSCALL_faccessat_3 (int *err, int dirfd, const char *pathname,
129 int mode) 274 int mode)
130 { 275 {
131 *err = (38 /* ENOSYS */); 276 *err = (38 /* ENOSYS */);
132 return 0; 277 return 0;
133 } 278 }
134 279
135 __extern_always_inline int 280 __extern_always_inline int
281 INTERNAL_SYSCALL_fchdir_1 (int *err, int fd)
282 {
283 *err = (38 /* ENOSYS */);
284 return 0;
285 }
286
287 __extern_always_inline int
136 INTERNAL_SYSCALL_fchmod_2 (int *err, int fd, mode_t mode) 288 INTERNAL_SYSCALL_fchmod_2 (int *err, int fd, mode_t mode)
137 { 289 {
138 *err = (38 /* ENOSYS */); 290 *err = (38 /* ENOSYS */);
139 return 0; 291 return 0;
140 } 292 }
141 293
142 __extern_always_inline int 294 __extern_always_inline int
143 INTERNAL_SYSCALL_fchmodat_3 (int *err, int dirfd, const char *pathname, 295 INTERNAL_SYSCALL_fchmodat_3 (int *err, int dirfd, const char *pathname,
144 mode_t mode) 296 mode_t mode)
145 { 297 {
(...skipping 29 matching lines...) Expand all
175 INTERNAL_SYSCALL_fcntl_3 (int *err, int fd, int cmd, void *arg) 327 INTERNAL_SYSCALL_fcntl_3 (int *err, int fd, int cmd, void *arg)
176 { 328 {
177 *err = (38 /* ENOSYS */); 329 *err = (38 /* ENOSYS */);
178 return 0; 330 return 0;
179 } 331 }
180 332
181 __extern_always_inline int 333 __extern_always_inline int
182 INTERNAL_SYSCALL_fcntl64_3 (int *err, int fd, int cmd, 334 INTERNAL_SYSCALL_fcntl64_3 (int *err, int fd, int cmd,
183 union __attribute__ ((__transparent_union__)) 335 union __attribute__ ((__transparent_union__))
184 { 336 {
185 unsigned long long ullarg;
186 long long llarg;
187 unsigned long ularg; 337 unsigned long ularg;
188 long larg; 338 long larg;
189 unsigned int uiarg; 339 unsigned int uiarg;
190 int iarg; 340 int iarg;
191 void *parg; 341 void *parg;
192 } arg) 342 } arg)
193 { 343 {
194 *err = (38 /* ENOSYS */); 344 *err = (38 /* ENOSYS */);
195 return 0; 345 return 0;
196 } 346 }
197 347
348 __extern_always_inline int
349 INTERNAL_SYSCALL_fdatasync_1 (int *err, int fd)
350 {
351 *err = (38 /* ENOSYS */);
352 return 0;
353 }
354
355 __extern_always_inline int
356 INTERNAL_SYSCALL_flock_2 (int *err, int fd, int operation)
357 {
358 *err = (38 /* ENOSYS */);
359 return 0;
360 }
361
362 __extern_always_inline int
363 INTERNAL_SYSCALL_fgetxattr_4 (int *err, int filedes, const char *name,
364 void *value, size_t size)
365 {
366 *err = (38 /* ENOSYS */);
367 return 0;
368 }
369
370 __extern_always_inline ssize_t
371 INTERNAL_SYSCALL_flistxattr_3 (int *err, int filedes, char *list, size_t size)
372 {
373 *err = (38 /* ENOSYS */);
374 return 0;
375 }
376
377 __extern_always_inline int
378 INTERNAL_SYSCALL_fremovexattr_2 (int *err, int filedes, const char *name)
379 {
380 *err = (38 /* ENOSYS */);
381 return 0;
382 }
383
384 __extern_always_inline int
385 INTERNAL_SYSCALL_fsetxattr_5 (int *err, int filedes, const char *name,
386 const void *value, size_t size, int flags)
387 {
388 *err = (38 /* ENOSYS */);
389 return 0;
390 }
391
392 __extern_always_inline int
393 INTERNAL_SYSCALL_fsync_1 (int *err, int fd)
394 {
395 *err = (38 /* ENOSYS */);
396 return 0;
397 }
398
198 __errordecl (__futex_emulation_unknown_operation, 399 __errordecl (__futex_emulation_unknown_operation,
199 "unknown futex operation or argument"); 400 "unknown futex operation or argument");
200 401
201 struct __attribute__ ((__packed__)) decoded_futex_operation 402 struct __attribute__ ((__packed__)) decoded_futex_operation
202 { 403 {
203 unsigned int operation :7; 404 unsigned int operation :7;
204 unsigned int private :1; 405 unsigned int private :1;
205 unsigned int realtime :1; 406 unsigned int realtime :1;
206 unsigned int padding :23; 407 unsigned int padding :23;
207 }; 408 };
(...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after
337 } 538 }
338 539
339 __extern_always_inline int 540 __extern_always_inline int
340 INTERNAL_SYSCALL_futimesat_3 (int *err, int dirfd, const char *pathname, 541 INTERNAL_SYSCALL_futimesat_3 (int *err, int dirfd, const char *pathname,
341 const struct timeval times[2]) 542 const struct timeval times[2])
342 { 543 {
343 *err = (38 /* ENOSYS */); 544 *err = (38 /* ENOSYS */);
344 return 0; 545 return 0;
345 } 546 }
346 547
548 struct kernel_sym;
549 __extern_always_inline ssize_t
550 INTERNAL_SYSCALL_get_kernel_syms_1 (int *err, struct kernel_sym *table)
551 {
552 *err = (38 /* ENOSYS */);
553 return 0;
554 }
555
347 __extern_always_inline int 556 __extern_always_inline int
348 INTERNAL_SYSCALL_getcpu_3 (int *err, unsigned *cpu, unsigned *node, 557 INTERNAL_SYSCALL_getcpu_3 (int *err, unsigned *cpu, unsigned *node,
349 struct getcpu_cache *tcache) 558 struct getcpu_cache *tcache)
350 { 559 {
351 *err = (38 /* ENOSYS */); 560 *err = (38 /* ENOSYS */);
352 return 0; 561 return 0;
353 } 562 }
354 563
355 /* NOTE! The user-level library version returns a character pointer. 564 /* NOTE! The user-level library version returns a character pointer.
356 565
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
413 } 622 }
414 623
415 __extern_always_inline int 624 __extern_always_inline int
416 INTERNAL_SYSCALL_getgroups32_2 (int *err, int size, gid_t *list) 625 INTERNAL_SYSCALL_getgroups32_2 (int *err, int size, gid_t *list)
417 { 626 {
418 *err = (38 /* ENOSYS */); 627 *err = (38 /* ENOSYS */);
419 return 0; 628 return 0;
420 } 629 }
421 630
422 __extern_always_inline int 631 __extern_always_inline int
632 INTERNAL_SYSCALL_getitimer_2 (int *err, int which, struct itimerval *curr_value)
633 {
634 *err = (38 /* ENOSYS */);
635 return 0;
636 }
637
638 __extern_always_inline int
423 INTERNAL_SYSCALL_getmsg_4 (int *err, int fildes, const struct strbuf *ctlptr, 639 INTERNAL_SYSCALL_getmsg_4 (int *err, int fildes, const struct strbuf *ctlptr,
424 const struct strbuf *dataptr, int *pflags) 640 const struct strbuf *dataptr, int *pflags)
425 { 641 {
426 *err = (38 /* ENOSYS */); 642 *err = (38 /* ENOSYS */);
427 return 0; 643 return 0;
428 } 644 }
429 645
646 __extern_always_inline pid_t
647 INTERNAL_SYSCALL_getpgid_1 (int *err, pid_t pid)
648 {
649 *err = (38 /* ENOSYS */);
650 return 0;
651 }
652
653 __extern_always_inline pid_t
654 INTERNAL_SYSCALL_getpgrp_0 (int *err)
655 {
656 *err = (38 /* ENOSYS */);
657 return 0;
658 }
659
660 __extern_always_inline pid_t
661 INTERNAL_SYSCALL_getpid_0 (int *err)
662 {
663 *err = (38 /* ENOSYS */);
664 return 0;
665 }
666
430 __extern_always_inline int 667 __extern_always_inline int
431 INTERNAL_SYSCALL_getpmsg_5 (int *err, int fildes, const struct strbuf *ctlptr, 668 INTERNAL_SYSCALL_getpmsg_5 (int *err, int fildes, const struct strbuf *ctlptr,
432 const struct strbuf *dataptr, int *pband, int *pflags ) 669 const struct strbuf *dataptr, int *pband, int *pflags )
433 { 670 {
434 *err = (38 /* ENOSYS */); 671 *err = (38 /* ENOSYS */);
435 return 0; 672 return 0;
436 } 673 }
437 674
675 __extern_always_inline pid_t
676 INTERNAL_SYSCALL_getppid_0 (int *err)
677 {
678 *err = (38 /* ENOSYS */);
679 return 0;
680 }
681
438 /* The return value of getpriority syscall is biased by this value 682 /* The return value of getpriority syscall is biased by this value
439 to avoid returning negative values. */ 683 to avoid returning negative values. */
440 __extern_always_inline int 684 __extern_always_inline int
441 INTERNAL_SYSCALL_getpriority_2 (int *err, int which, int who) 685 INTERNAL_SYSCALL_getpriority_2 (int *err, int which, int who)
442 { 686 {
443 *err = (38 /* ENOSYS */); 687 *err = (38 /* ENOSYS */);
444 return 0; 688 return 0;
445 } 689 }
446 690
447 __extern_always_inline int 691 __extern_always_inline int
(...skipping 19 matching lines...) Expand all
467 return 0; 711 return 0;
468 } 712 }
469 713
470 __extern_always_inline int 714 __extern_always_inline int
471 INTERNAL_SYSCALL_getresuid32_3 (int *err, uid_t *ruid, uid_t *euid, uid_t *ugid) 715 INTERNAL_SYSCALL_getresuid32_3 (int *err, uid_t *ruid, uid_t *euid, uid_t *ugid)
472 { 716 {
473 *err = (38 /* ENOSYS */); 717 *err = (38 /* ENOSYS */);
474 return 0; 718 return 0;
475 } 719 }
476 720
721 __extern_always_inline int
722 INTERNAL_SYSCALL_getrusage_2 (int *err, int who, struct rusage *usage)
723 {
724 *err = (38 /* ENOSYS */);
725 return 0;
726 }
727
728 __extern_always_inline pid_t
729 INTERNAL_SYSCALL_getsid_1 (int *err, pid_t pid)
730 {
731 *err = (38 /* ENOSYS */);
732 return 0;
733 }
734
477 __extern_always_inline __kernel_uid_t 735 __extern_always_inline __kernel_uid_t
478 INTERNAL_SYSCALL_getuid_0 (int *err) 736 INTERNAL_SYSCALL_getuid_0 (int *err)
479 { 737 {
480 *err = (38 /* ENOSYS */); 738 *err = (38 /* ENOSYS */);
481 return 0; 739 return 0;
482 } 740 }
483 741
484 __extern_always_inline uid_t 742 __extern_always_inline uid_t
485 INTERNAL_SYSCALL_getuid32_0 (int *err) 743 INTERNAL_SYSCALL_getuid32_0 (int *err)
486 { 744 {
487 *err = (38 /* ENOSYS */); 745 *err = (38 /* ENOSYS */);
488 return 0; 746 return 0;
489 } 747 }
490 748
491 __extern_always_inline uid_t 749 __extern_always_inline int
750 INTERNAL_SYSCALL_getxattr_4 (int *err, const char *path, const char *name,
751 » » » void *value, size_t size)
752 {
753 *err = (38 /* ENOSYS */);
754 return 0;
755 }
756
757 __extern_always_inline int
492 INTERNAL_SYSCALL_open_3 (int *err, const char *pathname, int flags, mode_t mode) 758 INTERNAL_SYSCALL_open_3 (int *err, const char *pathname, int flags, mode_t mode)
493 { 759 {
494 int newfd; 760 int newfd;
495 *err = __nacl_irt_open (pathname, flags, mode, &newfd); 761 *err = __nacl_irt_open (pathname, flags, mode, &newfd);
496 return newfd; 762 return newfd;
497 } 763 }
498 764
499 __extern_always_inline uid_t 765 __extern_always_inline int
500 INTERNAL_SYSCALL_openat_4 (int *err, int dirfd, const char *pathname, 766 INTERNAL_SYSCALL_openat_4 (int *err, int dirfd, const char *pathname,
501 int flags, mode_t mode) 767 int flags, mode_t mode)
502 { 768 {
503 *err = (38 /* ENOSYS */); 769 *err = (38 /* ENOSYS */);
504 return 0; 770 return 0;
505 } 771 }
506 772
507 __extern_always_inline int 773 __extern_always_inline int
774 INTERNAL_SYSCALL_init_module_3 (int *err, void *umod, unsigned long len,
775 const char *uargs)
776 {
777 *err = (38 /* ENOSYS */);
778 return 0;
779 }
780
781 __extern_always_inline int
782 INTERNAL_SYSCALL_inotify_add_watch_3 (int *err, int fd, const char *pathname,
783 uint32_t mask)
784 {
785 *err = (38 /* ENOSYS */);
786 return 0;
787 }
788
789 __extern_always_inline int
790 INTERNAL_SYSCALL_inotify_init1_1 (int *err, int flags)
791 {
792 *err = (38 /* ENOSYS */);
793 return 0;
794 }
795
796 __extern_always_inline int
797 INTERNAL_SYSCALL_inotify_init_0 (int * err)
798 {
799 return INTERNAL_SYSCALL_inotify_init1_1 (err, 0);
800 }
801
802 __extern_always_inline int
803 INTERNAL_SYSCALL_inotify_rm_watch_2 (int *err, int fd, uint32_t wd)
804 {
805 *err = (38 /* ENOSYS */);
806 return 0;
807 }
808
809 __extern_always_inline int
508 INTERNAL_SYSCALL_ioctl_3 (int *err, int d, int request, 810 INTERNAL_SYSCALL_ioctl_3 (int *err, int d, int request,
509 union __attribute__ ((__transparent_union__)) 811 union __attribute__ ((__transparent_union__))
510 { 812 {
511 unsigned long long ullarg;
512 long long llarg;
513 unsigned long ularg; 813 unsigned long ularg;
514 long larg; 814 long larg;
515 unsigned int uiarg; 815 unsigned int uiarg;
516 int iarg; 816 int iarg;
517 void *parg; 817 void *parg;
518 } arg) 818 } arg)
519 { 819 {
520 *err = (38 /* ENOSYS */); 820 *err = (38 /* ENOSYS */);
521 return 0; 821 return 0;
522 } 822 }
523 823
524 __extern_always_inline int 824 __extern_always_inline int
825 INTERNAL_SYSCALL_ioperm_3 (int *err, unsigned long from, unsigned long num,
826 int turn_on)
827 {
828 *err = (38 /* ENOSYS */);
829 return 0;
830 }
831
832 __extern_always_inline int
833 INTERNAL_SYSCALL_iopl_1 (int *err, int level)
834 {
835 *err = (38 /* ENOSYS */);
836 return 0;
837 }
838
839 __extern_always_inline int
525 INTERNAL_SYSCALL_ipc_6 (int *err, unsigned int call, int first, int second, 840 INTERNAL_SYSCALL_ipc_6 (int *err, unsigned int call, int first, int second,
526 int third, void *ptr, long fifth) 841 int third, void *ptr, long fifth)
527 { 842 {
528 *err = (38 /* ENOSYS */); 843 *err = (38 /* ENOSYS */);
529 return 0; 844 return 0;
530 } 845 }
531 846
532 __extern_always_inline int 847 __extern_always_inline int
533 INTERNAL_SYSCALL_ipc_5 (int *err, unsigned int call, int first, int second, 848 INTERNAL_SYSCALL_ipc_5 (int *err, unsigned int call, int first, int second,
534 int third, void *ptr) 849 int third, void *ptr)
(...skipping 26 matching lines...) Expand all
561 876
562 __extern_always_inline int 877 __extern_always_inline int
563 INTERNAL_SYSCALL_lchown32_3 (int *err, const char *path, 878 INTERNAL_SYSCALL_lchown32_3 (int *err, const char *path,
564 uid_t owner, gid_t group) 879 uid_t owner, gid_t group)
565 { 880 {
566 *err = (38 /* ENOSYS */); 881 *err = (38 /* ENOSYS */);
567 return 0; 882 return 0;
568 } 883 }
569 884
570 __extern_always_inline int 885 __extern_always_inline int
886 INTERNAL_SYSCALL_lgetxattr_4 (int *err, const char *path, const char *name,
887 void *value, size_t size)
888 {
889 *err = (38 /* ENOSYS */);
890 return 0;
891 }
892
893 __extern_always_inline int
571 INTERNAL_SYSCALL_link_2 (int *err, const char *oldpath, const char *newpath) 894 INTERNAL_SYSCALL_link_2 (int *err, const char *oldpath, const char *newpath)
572 { 895 {
573 *err = (38 /* ENOSYS */); 896 *err = (38 /* ENOSYS */);
574 return 0; 897 return 0;
575 } 898 }
576 899
577 __extern_always_inline int 900 __extern_always_inline int
578 INTERNAL_SYSCALL_linkat_5 (int *err, int olddfd, const char *oldname, 901 INTERNAL_SYSCALL_linkat_5 (int *err, int olddfd, const char *oldname,
579 int newdfd, const char *newname, int flags) 902 int newdfd, const char *newname, int flags)
580 { 903 {
581 *err = (38 /* ENOSYS */); 904 *err = (38 /* ENOSYS */);
582 return 0; 905 return 0;
583 } 906 }
584 907
908 __extern_always_inline ssize_t
909 INTERNAL_SYSCALL_listxattr_3 (int *err, const char *path, char *list,
910 size_t size)
911 {
912 *err = (38 /* ENOSYS */);
913 return 0;
914 }
915
916 __extern_always_inline ssize_t
917 INTERNAL_SYSCALL_llistxattr_3 (int *err, const char *path, char *list,
918 size_t size)
919 {
920 *err = (38 /* ENOSYS */);
921 return 0;
922 }
923
924 __extern_always_inline int
925 INTERNAL_SYSCALL_lremovexattr_2 (int *err, const char *path, const char *name)
926 {
927 *err = (38 /* ENOSYS */);
928 return 0;
929 }
930
931 __extern_always_inline int
932 INTERNAL_SYSCALL_lsetxattr_5 (int *err, const char *path, const char *name,
933 const void *value, size_t size, int flags)
934 {
935 *err = (38 /* ENOSYS */);
936 return 0;
937 }
938
585 __extern_always_inline int 939 __extern_always_inline int
586 INTERNAL_SYSCALL_madvise_3 (int *err, void *addr, size_t length, int advice) 940 INTERNAL_SYSCALL_madvise_3 (int *err, void *addr, size_t length, int advice)
587 { 941 {
588 *err = (38 /* ENOSYS */); 942 *err = (38 /* ENOSYS */);
589 return 0; 943 return 0;
590 } 944 }
591 945
592 __extern_always_inline int 946 __extern_always_inline int
947 INTERNAL_SYSCALL_mincore_3 (int *err, void *addr, size_t length,
948 unsigned char *vec)
949 {
950 *err = (38 /* ENOSYS */);
951 return 0;
952 }
953
954 __extern_always_inline int
593 INTERNAL_SYSCALL_mkdir_2 (int *err, const char *pathname, mode_t mode) 955 INTERNAL_SYSCALL_mkdir_2 (int *err, const char *pathname, mode_t mode)
594 { 956 {
595 *err = (38 /* ENOSYS */); 957 *err = (38 /* ENOSYS */);
596 return 0; 958 return 0;
597 } 959 }
598 960
599 __extern_always_inline int 961 __extern_always_inline int
600 INTERNAL_SYSCALL_mkdirat_3 (int *err, int dirfd, const char *pathname, 962 INTERNAL_SYSCALL_mkdirat_3 (int *err, int dirfd, const char *pathname,
601 mode_t mode) 963 mode_t mode)
602 { 964 {
(...skipping 10 matching lines...) Expand all
613 } 975 }
614 976
615 __extern_always_inline int 977 __extern_always_inline int
616 INTERNAL_SYSCALL_mknodat_4 (int *err, int dirfd, const char *pathname, 978 INTERNAL_SYSCALL_mknodat_4 (int *err, int dirfd, const char *pathname,
617 mode_t mode, dev_t dev) 979 mode_t mode, dev_t dev)
618 { 980 {
619 *err = (38 /* ENOSYS */); 981 *err = (38 /* ENOSYS */);
620 return 0; 982 return 0;
621 } 983 }
622 984
623 struct mq_attr; 985 __extern_always_inline int
624 __extern_always_inline int/*mqd_t*/ 986 INTERNAL_SYSCALL_mlock_2 (int *err, const void *addr, size_t len)
987 {
988 *err = (38 /* ENOSYS */);
989 return 0;
990 }
991
992 __extern_always_inline int
993 INTERNAL_SYSCALL_mlockall_1 (int *err, int flags)
994 {
995 *err = (38 /* ENOSYS */);
996 return 0;
997 }
998
999 __extern_always_inline ssize_t
1000 INTERNAL_SYSCALL_modify_ldt_3 (int *err, int func, void *ptr,
1001 » » » unsigned long bytecount)
1002 {
1003 *err = (38 /* ENOSYS */);
1004 return 0;
1005 }
1006
1007 __extern_always_inline int
1008 INTERNAL_SYSCALL_mprotect_3 (int *err, const void *addr, size_t len, int prot)
1009 {
1010 *err = (38 /* ENOSYS */);
1011 return 0;
1012 }
1013
1014 #if !defined (_LIBC) || defined(IS_IN_librt)
1015 __extern_always_inline mqd_t
1016 INTERNAL_SYSCALL_mq_getsetattr_3 (int *err, mqd_t mqdes,
1017 » » » » struct mq_attr *newattr,
1018 » » » » struct mq_attr *oldattr)
1019 {
1020 *err = (38 /* ENOSYS */);
1021 return 0;
1022 }
1023
1024 __extern_always_inline mqd_t
625 INTERNAL_SYSCALL_mq_open_4 (int *err, const char *name, int oflag, mode_t mode, 1025 INTERNAL_SYSCALL_mq_open_4 (int *err, const char *name, int oflag, mode_t mode,
626 struct mq_attr *attr) 1026 struct mq_attr *attr)
627 { 1027 {
628 *err = (38 /* ENOSYS */); 1028 *err = (38 /* ENOSYS */);
629 return 0; 1029 return 0;
630 } 1030 }
631 1031
632 __extern_always_inline int 1032 __extern_always_inline int
633 INTERNAL_SYSCALL_mq_notify_2 (int *err, int/*mqd_t*/ mqdes, 1033 INTERNAL_SYSCALL_mq_notify_2 (int *err, mqd_t mqdes,
634 const struct sigevent *notification) 1034 const struct sigevent *notification)
635 { 1035 {
636 *err = (38 /* ENOSYS */); 1036 *err = (38 /* ENOSYS */);
637 return 0; 1037 return 0;
638 } 1038 }
639 1039
1040 __extern_always_inline ssize_t
1041 INTERNAL_SYSCALL_mq_timedreceive_5 (int *err, mqd_t mqdes, char *msg_ptr,
1042 size_t msg_len, unsigned *msg_prio,
1043 const struct timespec *abs_timeout)
1044 {
1045 *err = (38 /* ENOSYS */);
1046 return 0;
1047 }
1048
1049 __extern_always_inline mqd_t
1050 INTERNAL_SYSCALL_mq_timedsend_5 (int *err, mqd_t mqdes, const char *msg_ptr,
1051 size_t msg_len, unsigned msg_prio,
1052 const struct timespec *abs_timeout)
1053 {
1054 *err = (38 /* ENOSYS */);
1055 return 0;
1056 }
1057
640 __extern_always_inline int 1058 __extern_always_inline int
641 INTERNAL_SYSCALL_mq_unlink_1 (int *err, const char *name) 1059 INTERNAL_SYSCALL_mq_unlink_1 (int *err, const char *name)
642 { 1060 {
643 *err = (38 /* ENOSYS */); 1061 *err = (38 /* ENOSYS */);
644 return 0; 1062 return 0;
645 } 1063 }
1064 #endif
1065
1066 __extern_always_inline int
1067 INTERNAL_SYSCALL_mount_5 (int *err, const char *source, const char *target,
1068 const char *filesystemtype, unsigned long mountflags,
1069 const void *data)
1070 {
1071 *err = (38 /* ENOSYS */);
1072 return 0;
1073 }
1074
1075 __extern_always_inline void*
1076 INTERNAL_SYSCALL_mremap_5 (int *err, void *old_address, size_t old_size,
1077 size_t new_size, int flags, void *new_address)
1078 {
1079 *err = (38 /* ENOSYS */);
1080 return NULL;
1081 }
1082
1083 __extern_always_inline int
1084 INTERNAL_SYSCALL_msgctl_3 (int *err, int msqid, int cmd, struct msqid_ds *buf)
1085 {
1086 *err = (38 /* ENOSYS */);
1087 return 0;
1088 }
1089
1090 __extern_always_inline int
1091 INTERNAL_SYSCALL_msgget_2 (int *err, key_t key, int msgflg)
1092 {
1093 *err = (38 /* ENOSYS */);
1094 return 0;
1095 }
1096
1097 __extern_always_inline ssize_t
1098 INTERNAL_SYSCALL_msgrcv_5 (int *err, int msqid, void *msgp, size_t msgsz,
1099 long msgtyp, int msgflg)
1100 {
1101 *err = (38 /* ENOSYS */);
1102 return 0;
1103 }
1104
1105 __extern_always_inline int
1106 INTERNAL_SYSCALL_msgsnd_4 (int *err, int msqid, const void *msgp, size_t msgsz,
1107 int msgflg)
1108 {
1109 *err = (38 /* ENOSYS */);
1110 return 0;
1111 }
1112
1113 __extern_always_inline int
1114 INTERNAL_SYSCALL_msync_3 (int *err, void *addr, size_t length, int flags)
1115 {
1116 *err = (38 /* ENOSYS */);
1117 return 0;
1118 }
1119
1120 __extern_always_inline int
1121 INTERNAL_SYSCALL_munlock_2 (int *err, const void *addr, size_t len)
1122 {
1123 *err = (38 /* ENOSYS */);
1124 return 0;
1125 }
1126
1127 __extern_always_inline int
1128 INTERNAL_SYSCALL_munlockall_0 (int *err)
1129 {
1130 *err = (38 /* ENOSYS */);
1131 return 0;
1132 }
646 1133
647 __extern_always_inline int 1134 __extern_always_inline int
648 INTERNAL_SYSCALL_munmap_2 (int *err, void *addr, size_t length) 1135 INTERNAL_SYSCALL_munmap_2 (int *err, void *addr, size_t length)
649 { 1136 {
650 *err = __nacl_irt_munmap(addr, length); 1137 *err = __nacl_irt_munmap(addr, length);
651 return 0; 1138 return 0;
652 } 1139 }
653 1140
1141 struct nfsctl_arg;
1142 union nfsctl_res;
1143 __extern_always_inline int
1144 INTERNAL_SYSCALL_nfsservctl_3 (int *err, int cmd, struct nfsctl_arg *argp,
1145 union nfsctl_res *resp)
1146 {
1147 *err = (38 /* ENOSYS */);
1148 return 0;
1149 }
1150
1151 __extern_always_inline int
1152 INTERNAL_SYSCALL_quotactl_4 (int *err, int cmd, const char *special, int id,
1153 __caddr_t addr)
1154 {
1155 *err = (38 /* ENOSYS */);
1156 return 0;
1157 }
1158
1159 __extern_always_inline int
1160 INTERNAL_SYSCALL_query_module_5 (int *err, const char *name, int which,
1161 void *buf, size_t bufsize, size_t *ret)
1162 {
1163 *err = (38 /* ENOSYS */);
1164 return 0;
1165 }
1166
1167 __extern_always_inline int
1168 INTERNAL_SYSCALL_pause_0 (int *err)
1169 {
1170 *err = (38 /* ENOSYS */);
1171 return 0;
1172 }
1173
1174 __extern_always_inline long
1175 INTERNAL_SYSCALL_personality_1 (int *err, unsigned long persona)
1176 {
1177 *err = (38 /* ENOSYS */);
1178 return 0;
1179 }
1180
1181 __extern_always_inline int
1182 INTERNAL_SYSCALL_pipe2_2 (int *err, int pipefd[2], int flags)
1183 {
1184 *err = (38 /* ENOSYS */);
1185 return 0;
1186 }
1187
1188 __extern_always_inline int
1189 INTERNAL_SYSCALL_pipe_1 (int *err, int pipefd[2])
1190 {
1191 return INTERNAL_SYSCALL_pipe2_2 (err, pipefd, 0);
1192 }
1193
1194 __extern_always_inline int
1195 INTERNAL_SYSCALL_pivot_root_2 (int *err, const char *new_root,
1196 const char *put_old)
1197 {
1198 *err = (38 /* ENOSYS */);
1199 return 0;
1200 }
1201
654 __extern_always_inline int 1202 __extern_always_inline int
655 INTERNAL_SYSCALL_poll_3 (int *err, struct pollfd *fds, nfds_t nfds, int timeout) 1203 INTERNAL_SYSCALL_poll_3 (int *err, struct pollfd *fds, nfds_t nfds, int timeout)
656 { 1204 {
657 *err = (38 /* ENOSYS */); 1205 *err = (38 /* ENOSYS */);
658 return 0; 1206 return 0;
659 } 1207 }
660 1208
661 __extern_always_inline int 1209 __extern_always_inline int
662 INTERNAL_SYSCALL_ppoll_5 (int *err, struct pollfd *fds, nfds_t nfds, 1210 INTERNAL_SYSCALL_ppoll_5 (int *err, struct pollfd *fds, nfds_t nfds,
663 const struct timespec *timeout, 1211 const struct timespec *timeout,
664 const sigset_t *sigmask, size_t sigsetsize) 1212 const sigset_t *sigmask, size_t sigsetsize)
665 { 1213 {
666 *err = (38 /* ENOSYS */); 1214 *err = (38 /* ENOSYS */);
667 return 0; 1215 return 0;
1216 }
1217
1218 __extern_always_inline int
1219 INTERNAL_SYSCALL_prctl_5 (int *err, int option, unsigned long arg2,
1220 unsigned long arg3, unsigned long arg4,
1221 unsigned long arg5)
1222 {
1223 *err = (38 /* ENOSYS */);
1224 return 0;
1225 }
1226
1227 __extern_always_inline int
1228 INTERNAL_SYSCALL_pselect6_6 (int *err, int nfds, fd_set *readfds,
1229 fd_set *writefds, fd_set *exceptfds,
1230 const struct timespec *timeout,
1231 void *sigmask)
1232 {
1233 *err = (38 /* ENOSYS */);
1234 return 0;
668 } 1235 }
669 1236
670 __extern_always_inline long 1237 __extern_always_inline long
671 INTERNAL_SYSCALL_ptrace_4 (int *err, enum __ptrace_request request, pid_t pid, 1238 INTERNAL_SYSCALL_ptrace_4 (int *err, enum __ptrace_request request, pid_t pid,
672 void *addr, void *data) 1239 void *addr, void *data)
673 { 1240 {
674 *err = (38 /* ENOSYS */); 1241 *err = (38 /* ENOSYS */);
675 return 0; 1242 return 0;
676 } 1243 }
677 1244
678 __extern_always_inline int 1245 __extern_always_inline int
679 INTERNAL_SYSCALL_putmsg_4 (int *err, int fildes, const struct strbuf *ctlptr, 1246 INTERNAL_SYSCALL_putmsg_4 (int *err, int fildes, const struct strbuf *ctlptr,
680 const struct strbuf *dataptr, int flags) 1247 const struct strbuf *dataptr, int flags)
681 { 1248 {
682 *err = (38 /* ENOSYS */); 1249 *err = (38 /* ENOSYS */);
683 return 0; 1250 return 0;
684 } 1251 }
685 1252
686 __extern_always_inline int 1253 __extern_always_inline int
687 INTERNAL_SYSCALL_putpmsg_5 (int *err, int fildes, const struct strbuf *ctlptr, 1254 INTERNAL_SYSCALL_putpmsg_5 (int *err, int fildes, const struct strbuf *ctlptr,
688 const struct strbuf *dataptr, int band, int flags) 1255 const struct strbuf *dataptr, int band, int flags)
689 { 1256 {
690 *err = (38 /* ENOSYS */); 1257 *err = (38 /* ENOSYS */);
691 return 0; 1258 return 0;
692 } 1259 }
693 1260
694 __extern_always_inline int 1261 __extern_always_inline ssize_t
695 INTERNAL_SYSCALL_readahead_4 (int *err, int fd, 1262 INTERNAL_SYSCALL_readahead_3 (int *err, int fd, __off64_t offset, size_t count)
696 » » » __LONG_LONG_PAIR(long offset_high,
697 » » » » » long offset_low), size_t count)
698 { 1263 {
699 #if 0
700 off64_t offset = ((off64_t)offset_high) << 32 | offset_low;
701 #endif
702 *err = (38 /* ENOSYS */); 1264 *err = (38 /* ENOSYS */);
703 return 0; 1265 return 0;
704 } 1266 }
705 1267
706 __extern_always_inline ssize_t 1268 __extern_always_inline ssize_t
1269 INTERNAL_SYSCALL_readahead_4 (int *err, int fd,
1270 __LONG_LONG_PAIR(long offset_high,
1271 long offset_low), size_t count)
1272 {
1273 __off64_t offset = ((__off64_t)offset_high) << 32 | offset_low;
1274 return INTERNAL_SYSCALL_readahead_3 (err, fd, offset, count);
1275 }
1276
1277 __extern_always_inline ssize_t
707 INTERNAL_SYSCALL_readv_3 (int *err, int fd, const 1278 INTERNAL_SYSCALL_readv_3 (int *err, int fd, const
708 struct iovec *iov, int iovcnt) 1279 struct iovec *iov, int iovcnt)
709 { 1280 {
710 *err = (38 /* ENOSYS */); 1281 *err = (38 /* ENOSYS */);
711 return 0; 1282 return 0;
712 } 1283 }
713 1284
714 __extern_always_inline ssize_t 1285 __extern_always_inline ssize_t
715 INTERNAL_SYSCALL_readlink_3 (int *err, const char *path, 1286 INTERNAL_SYSCALL_readlink_3 (int *err, const char *path,
716 char *buf, size_t bufsiz) 1287 char *buf, size_t bufsiz)
(...skipping 17 matching lines...) Expand all
734 return 0; 1305 return 0;
735 } 1306 }
736 1307
737 __extern_always_inline int 1308 __extern_always_inline int
738 INTERNAL_SYSCALL_reboot_3 (int *err, int magic1, int magic2, int howto) 1309 INTERNAL_SYSCALL_reboot_3 (int *err, int magic1, int magic2, int howto)
739 { 1310 {
740 return INTERNAL_SYSCALL_reboot_4 (err, magic1, magic2, howto, NULL); 1311 return INTERNAL_SYSCALL_reboot_4 (err, magic1, magic2, howto, NULL);
741 } 1312 }
742 1313
743 __extern_always_inline int 1314 __extern_always_inline int
1315 INTERNAL_SYSCALL_remap_file_pages_5 (int *err, void *addr, size_t size,
1316 int prot, ssize_t pgoff, int flags)
1317 {
1318 *err = (38 /* ENOSYS */);
1319 return 0;
1320 }
1321
1322 __extern_always_inline int
1323 INTERNAL_SYSCALL_removexattr_2 (int *err, const char *path, const char *name)
1324 {
1325 *err = (38 /* ENOSYS */);
1326 return 0;
1327 }
1328
1329 __extern_always_inline int
744 INTERNAL_SYSCALL_rename_2 (int *err, const char *oldpath, const char *newpath) 1330 INTERNAL_SYSCALL_rename_2 (int *err, const char *oldpath, const char *newpath)
745 { 1331 {
746 *err = (38 /* ENOSYS */); 1332 *err = (38 /* ENOSYS */);
747 return 0; 1333 return 0;
748 } 1334 }
749 1335
750 __extern_always_inline int 1336 __extern_always_inline int
751 INTERNAL_SYSCALL_renameat_4 (int *err, int olddfd, const char *oldname, 1337 INTERNAL_SYSCALL_renameat_4 (int *err, int olddfd, const char *oldname,
752 int newdfd, const char *newname) 1338 int newdfd, const char *newname)
753 { 1339 {
754 *err = (38 /* ENOSYS */); 1340 *err = (38 /* ENOSYS */);
755 return 0; 1341 return 0;
756 } 1342 }
757 1343
758 __extern_always_inline int 1344 __extern_always_inline int
759 INTERNAL_SYSCALL_rmdir_1 (int *err, const char *pathname) 1345 INTERNAL_SYSCALL_rmdir_1 (int *err, const char *pathname)
760 { 1346 {
761 *err = (38 /* ENOSYS */); 1347 *err = (38 /* ENOSYS */);
762 return 0; 1348 return 0;
763 } 1349 }
764 1350
765 __extern_always_inline int 1351 __extern_always_inline int
766 INTERNAL_SYSCALL_rt_sigpending_2(int *err, sigset_t *set, size_t sigsetsize) 1352 INTERNAL_SYSCALL_rt_sigpending_2 (int *err, sigset_t *set, size_t sigsetsize)
767 { 1353 {
768 *err = (38 /* ENOSYS */); 1354 *err = (38 /* ENOSYS */);
769 return 0; 1355 return 0;
770 } 1356 }
771 1357
772 __extern_always_inline int 1358 __extern_always_inline int
773 INTERNAL_SYSCALL_rt_sigprocmask_4 (int *err, int how, const sigset_t *set, 1359 INTERNAL_SYSCALL_rt_sigprocmask_4 (int *err, int how, const sigset_t *set,
774 sigset_t *oldset, size_t sigsetsize) 1360 sigset_t *oldset, size_t sigsetsize)
775 { 1361 {
776 *err = (38 /* ENOSYS */); 1362 *err = (38 /* ENOSYS */);
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
834 } 1420 }
835 1421
836 __extern_always_inline int 1422 __extern_always_inline int
837 INTERNAL_SYSCALL_sched_getscheduler_1 (int *err, pid_t pid) 1423 INTERNAL_SYSCALL_sched_getscheduler_1 (int *err, pid_t pid)
838 { 1424 {
839 *err = (38 /* ENOSYS */); 1425 *err = (38 /* ENOSYS */);
840 return 0; 1426 return 0;
841 } 1427 }
842 1428
843 __extern_always_inline int 1429 __extern_always_inline int
1430 INTERNAL_SYSCALL_sched_rr_get_interval_2 (int *err, pid_t pid,
1431 struct timespec * tp)
1432 {
1433 *err = (38 /* ENOSYS */);
1434 return 0;
1435 }
1436
1437 __extern_always_inline int
844 INTERNAL_SYSCALL_sched_setaffinity_3 (int *err, pid_t pid, size_t cpusetsize, 1438 INTERNAL_SYSCALL_sched_setaffinity_3 (int *err, pid_t pid, size_t cpusetsize,
845 const cpu_set_t *mask) 1439 const cpu_set_t *mask)
846 { 1440 {
847 *err = (38 /* ENOSYS */); 1441 *err = (38 /* ENOSYS */);
848 return 0; 1442 return 0;
849 } 1443 }
850 1444
851 __extern_always_inline int 1445 __extern_always_inline int
852 INTERNAL_SYSCALL_sched_setparam_2 (int *err, pid_t pid, 1446 INTERNAL_SYSCALL_sched_setparam_2 (int *err, pid_t pid,
853 struct sched_param *param) 1447 struct sched_param *param)
854 { 1448 {
855 *err = (38 /* ENOSYS */); 1449 *err = (38 /* ENOSYS */);
856 return 0; 1450 return 0;
857 } 1451 }
858 1452
859 __extern_always_inline int 1453 __extern_always_inline int
860 INTERNAL_SYSCALL_sched_setscheduler_3 (int *err, pid_t pid, int policy, 1454 INTERNAL_SYSCALL_sched_setscheduler_3 (int *err, pid_t pid, int policy,
861 const struct sched_param *param) 1455 const struct sched_param *param)
862 { 1456 {
863 *err = (38 /* ENOSYS */); 1457 *err = (38 /* ENOSYS */);
864 return 0; 1458 return 0;
865 } 1459 }
866 1460
1461 #ifdef __i386__
1462 #define INTERNAL_SYSCALL_select_5 INTERNAL_SYSCALL__newselect_5
1463 #endif
1464 __extern_always_inline int
1465 INTERNAL_SYSCALL_select_5 (int *err, int nfds, fd_set *readfds,
1466 fd_set *writefds, fd_set *exceptfds,
1467 const struct timeval *timeout)
1468 {
1469 *err = (38 /* ENOSYS */);
1470 return 0;
1471 }
1472
1473 __extern_always_inline int
1474 INTERNAL_SYSCALL_semctl_4 (int *err, int semid, int semnum, int cmd,
1475 #ifdef _SEM_SEMUN_UNDEFINED
1476 int semun)
1477 #else
1478 union semun semun)
1479 #endif
1480 {
1481 *err = (38 /* ENOSYS */);
1482 return 0;
1483 }
1484
1485 __extern_always_inline int
1486 INTERNAL_SYSCALL_semget_3 (int *err, key_t key, int nsems, int semflg)
1487 {
1488 *err = (38 /* ENOSYS */);
1489 return 0;
1490 }
1491
1492 __extern_always_inline int
1493 INTERNAL_SYSCALL_semtimedop_4 (int *err, int semid, struct sembuf *sops,
1494 unsigned nsops, struct timespec *timeout)
1495 {
1496 *err = (38 /* ENOSYS */);
1497 return 0;
1498 }
1499
1500 __extern_always_inline int
1501 INTERNAL_SYSCALL_semop_3 (int *err, int semid, struct sembuf *sops,
1502 unsigned nsops)
1503 {
1504 return INTERNAL_SYSCALL_semtimedop_4 (err, semid, sops, nsops, NULL);
1505 }
1506
1507 __extern_always_inline int
1508 INTERNAL_SYSCALL_setdomainname_2 (int *err, const char *name, size_t len)
1509 {
1510 *err = (38 /* ENOSYS */);
1511 return 0;
1512 }
1513
867 __extern_always_inline int 1514 __extern_always_inline int
868 INTERNAL_SYSCALL_setfsgid_1 (int *err, __kernel_gid_t gid) 1515 INTERNAL_SYSCALL_setfsgid_1 (int *err, __kernel_gid_t gid)
869 { 1516 {
870 *err = (38 /* ENOSYS */); 1517 *err = (38 /* ENOSYS */);
871 return 0; 1518 return 0;
872 } 1519 }
873 1520
874 __extern_always_inline int 1521 __extern_always_inline int
875 INTERNAL_SYSCALL_setfsgid32_1 (int *err, gid_t gid) 1522 INTERNAL_SYSCALL_setfsgid32_1 (int *err, gid_t gid)
876 { 1523 {
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
914 } 1561 }
915 1562
916 __extern_always_inline int 1563 __extern_always_inline int
917 INTERNAL_SYSCALL_setgroups32_2 (int *err, int size, const gid_t *list) 1564 INTERNAL_SYSCALL_setgroups32_2 (int *err, int size, const gid_t *list)
918 { 1565 {
919 *err = (38 /* ENOSYS */); 1566 *err = (38 /* ENOSYS */);
920 return 0; 1567 return 0;
921 } 1568 }
922 1569
923 __extern_always_inline int 1570 __extern_always_inline int
1571 INTERNAL_SYSCALL_sethostname_2 (int *err, const char *name, size_t len)
1572 {
1573 *err = (38 /* ENOSYS */);
1574 return 0;
1575 }
1576
1577 __extern_always_inline int
1578 INTERNAL_SYSCALL_setitimer_3 (int *err, int which,
1579 const struct itimerval *new_value,
1580 struct itimerval *old_value)
1581 {
1582 *err = (38 /* ENOSYS */);
1583 return 0;
1584 }
1585
1586 __extern_always_inline int
1587 INTERNAL_SYSCALL_setpgid_2 (int *err, pid_t pid, pid_t pgid)
1588 {
1589 *err = (38 /* ENOSYS */);
1590 return 0;
1591 }
1592
1593 __extern_always_inline int
924 INTERNAL_SYSCALL_setpriority_3 (int *err, int which, int who, int prio) 1594 INTERNAL_SYSCALL_setpriority_3 (int *err, int which, int who, int prio)
925 { 1595 {
926 *err = (38 /* ENOSYS */); 1596 *err = (38 /* ENOSYS */);
927 return 0; 1597 return 0;
928 } 1598 }
929 1599
930 __extern_always_inline int 1600 __extern_always_inline int
931 INTERNAL_SYSCALL_setregid_2 (int *err, __kernel_gid_t rgid, __kernel_gid_t egid) 1601 INTERNAL_SYSCALL_setregid_2 (int *err, __kernel_gid_t rgid, __kernel_gid_t egid)
932 { 1602 {
933 *err = (38 /* ENOSYS */); 1603 *err = (38 /* ENOSYS */);
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
979 } 1649 }
980 1650
981 __extern_always_inline int 1651 __extern_always_inline int
982 INTERNAL_SYSCALL_setreuid32_2 (int *err, uid_t ruid, uid_t euid) 1652 INTERNAL_SYSCALL_setreuid32_2 (int *err, uid_t ruid, uid_t euid)
983 { 1653 {
984 *err = (38 /* ENOSYS */); 1654 *err = (38 /* ENOSYS */);
985 return 0; 1655 return 0;
986 } 1656 }
987 1657
988 __extern_always_inline int 1658 __extern_always_inline int
1659 INTERNAL_SYSCALL_settimeofday_2 (int *err, const struct timeval *tv,
1660 const struct timezone *tz)
1661 {
1662 *err = (38 /* ENOSYS */);
1663 return 0;
1664 }
1665
1666 __extern_always_inline int
989 INTERNAL_SYSCALL_set_robust_list_2 (int *err, struct robust_list_head *head, 1667 INTERNAL_SYSCALL_set_robust_list_2 (int *err, struct robust_list_head *head,
990 size_t len) 1668 size_t len)
991 { 1669 {
992 *err = (38 /* ENOSYS */); 1670 *err = (38 /* ENOSYS */);
993 return 0; 1671 return 0;
994 } 1672 }
995 1673
1674 __extern_always_inline pid_t
1675 INTERNAL_SYSCALL_setsid_0 (int *err)
1676 {
1677 *err = (38 /* ENOSYS */);
1678 return 0;
1679 }
1680
996 __extern_always_inline int 1681 __extern_always_inline int
997 INTERNAL_SYSCALL_setuid_1 (int *err, __kernel_uid_t uid) 1682 INTERNAL_SYSCALL_setuid_1 (int *err, __kernel_uid_t uid)
998 { 1683 {
999 *err = (38 /* ENOSYS */); 1684 *err = (38 /* ENOSYS */);
1000 return 0; 1685 return 0;
1001 } 1686 }
1002 1687
1003 __extern_always_inline int 1688 __extern_always_inline int
1004 INTERNAL_SYSCALL_setuid32_1 (int *err, uid_t uid) 1689 INTERNAL_SYSCALL_setuid32_1 (int *err, uid_t uid)
1005 { 1690 {
1006 *err = (38 /* ENOSYS */); 1691 *err = (38 /* ENOSYS */);
1007 return 0; 1692 return 0;
1008 } 1693 }
1009 1694
1010 __extern_always_inline int 1695 __extern_always_inline int
1696 INTERNAL_SYSCALL_setxattr_5 (int *err, const char *path, const char *name,
1697 const void *value, size_t size, int flags)
1698 {
1699 *err = (38 /* ENOSYS */);
1700 return 0;
1701 }
1702
1703 __extern_always_inline void*
1704 INTERNAL_SYSCALL_shmat_3 (int *err, int shmid, const void *shmaddr, int shmflg)
1705 {
1706 *err = (38 /* ENOSYS */);
1707 return 0;
1708 }
1709
1710 __extern_always_inline int
1711 INTERNAL_SYSCALL_shmctl_3 (int *err, int shmid, int cmd, struct shmid_ds *buf)
1712 {
1713 *err = (38 /* ENOSYS */);
1714 return 0;
1715 }
1716
1717 __extern_always_inline int
1718 INTERNAL_SYSCALL_shmdt_1 (int *err, const void *shmaddr)
1719 {
1720 *err = (38 /* ENOSYS */);
1721 return 0;
1722 }
1723
1724 __extern_always_inline int
1725 INTERNAL_SYSCALL_shmget_3 (int *err, key_t key, size_t size, int shmflg)
1726 {
1727 *err = (38 /* ENOSYS */);
1728 return 0;
1729 }
1730
1731 __extern_always_inline int
1732 INTERNAL_SYSCALL_sigaltstack_2 (int *err, const stack_t *ss, stack_t *oss)
1733 {
1734 *err = (38 /* ENOSYS */);
1735 return 0;
1736 }
1737
1738 __extern_always_inline int
1011 INTERNAL_SYSCALL_signalfd4_4 (int *err, int fd, const sigset_t *mask, 1739 INTERNAL_SYSCALL_signalfd4_4 (int *err, int fd, const sigset_t *mask,
1012 size_t sigsetsize, int flags) 1740 size_t sigsetsize, int flags)
1013 { 1741 {
1014 *err = (38 /* ENOSYS */); 1742 *err = (38 /* ENOSYS */);
1015 return 0; 1743 return 0;
1016 } 1744 }
1017 1745
1018 __extern_always_inline int 1746 __extern_always_inline int
1019 INTERNAL_SYSCALL_signalfd_3 (int *err, int fd, const sigset_t *mask, 1747 INTERNAL_SYSCALL_signalfd_3 (int *err, int fd, const sigset_t *mask,
1020 size_t sigsetsize) 1748 size_t sigsetsize)
1021 { 1749 {
1022 return INTERNAL_SYSCALL_signalfd4_4 (err, fd, mask, sigsetsize, 0); 1750 return INTERNAL_SYSCALL_signalfd4_4 (err, fd, mask, sigsetsize, 0);
1023 } 1751 }
1024 1752
1025 __extern_always_inline int 1753 __extern_always_inline int
1754 INTERNAL_SYSCALL_socket_3 (int *err, int domain, int type, int protocol)
1755 {
1756 *err = (38 /* ENOSYS */);
1757 return 0;
1758 }
1759
1760 __extern_always_inline ssize_t
1761 INTERNAL_SYSCALL_splice_6 (int *err, int fd_in, loff_t *off_in, int fd_out,
1762 loff_t *off_out, size_t len, unsigned int flags)
1763 {
1764 *err = (38 /* ENOSYS */);
1765 return 0;
1766 }
1767
1768 __extern_always_inline int
1769 INTERNAL_SYSCALL_stime_1 (int *err, time_t *t)
1770 {
1771 *err = (38 /* ENOSYS */);
1772 return 0;
1773 }
1774
1775 __extern_always_inline int
1776 INTERNAL_SYSCALL_swapoff_1 (int *err, const char *path)
1777 {
1778 *err = (38 /* ENOSYS */);
1779 return 0;
1780 }
1781
1782 __extern_always_inline int
1783 INTERNAL_SYSCALL_swapon_2 (int *err, const char *path, int swapflags)
1784 {
1785 *err = (38 /* ENOSYS */);
1786 return 0;
1787 }
1788
1789 __extern_always_inline int
1026 INTERNAL_SYSCALL_symlink_2 (int *err, const char *oldpath, const char *newpath) 1790 INTERNAL_SYSCALL_symlink_2 (int *err, const char *oldpath, const char *newpath)
1027 { 1791 {
1028 *err = (38 /* ENOSYS */); 1792 *err = (38 /* ENOSYS */);
1029 return 0; 1793 return 0;
1030 } 1794 }
1031 1795
1032 __extern_always_inline int 1796 __extern_always_inline int
1033 INTERNAL_SYSCALL_symlinkat_3 (int *err, const char *oldpath, 1797 INTERNAL_SYSCALL_symlinkat_3 (int *err, const char *oldpath,
1034 int newdirfd, const char *newpath) 1798 int newdirfd, const char *newpath)
1035 { 1799 {
1036 *err = (38 /* ENOSYS */); 1800 *err = (38 /* ENOSYS */);
1037 return 0; 1801 return 0;
1038 } 1802 }
1039 1803
1040 __extern_always_inline int 1804 __extern_always_inline int
1805 INTERNAL_SYSCALL_sync_0 (int *err)
1806 {
1807 *err = (38 /* ENOSYS */);
1808 return 0;
1809 }
1810
1811 __extern_always_inline int
1041 INTERNAL_SYSCALL_sync_file_range_6 (int *err, int fd, 1812 INTERNAL_SYSCALL_sync_file_range_6 (int *err, int fd,
1042 __LONG_LONG_PAIR(long offset_high, 1813 __LONG_LONG_PAIR(long offset_high,
1043 long offset_low), 1814 long offset_low),
1044 __LONG_LONG_PAIR(long nbytes_high, 1815 __LONG_LONG_PAIR(long nbytes_high,
1045 long nbytes_low), 1816 long nbytes_low),
1046 unsigned int flags) 1817 unsigned int flags)
1047 { 1818 {
1048 #if 0 1819 #if 0
1049 off64_t offset = ((off64_t)offset_high) << 32 | offset_low; 1820 __off64_t offset = ((__off64_t)offset_high) << 32 | offset_low;
1050 off64_t nbytes = ((off64_t)nbytes_high) << 32 | nbytes_low; 1821 __off64_t nbytes = ((__off64_t)nbytes_high) << 32 | nbytes_low;
1051 #endif 1822 #endif
1052 *err = (38 /* ENOSYS */); 1823 *err = (38 /* ENOSYS */);
1053 return 0; 1824 return 0;
1054 } 1825 }
1055 1826
1056 __extern_always_inline int 1827 __extern_always_inline int
1057 INTERNAL_SYSCALL__sysctl_1 (int *err, struct __sysctl_args *args) 1828 INTERNAL_SYSCALL__sysctl_1 (int *err, struct __sysctl_args *args)
1058 { 1829 {
1059 *err = (38 /* ENOSYS */); 1830 *err = (38 /* ENOSYS */);
1060 return 0; 1831 return 0;
1061 } 1832 }
1062 1833
1063 __extern_always_inline int 1834 __extern_always_inline int
1835 INTERNAL_SYSCALL_sysinfo_1 (int *err, struct sysinfo *info)
1836 {
1837 *err = (38 /* ENOSYS */);
1838 return 0;
1839 }
1840
1841 __extern_always_inline ssize_t
1842 INTERNAL_SYSCALL_tee_4 (int *err, int fd_in, int fd_out, size_t len,
1843 unsigned int flags)
1844 {
1845 *err = (38 /* ENOSYS */);
1846 return 0;
1847 }
1848
1849 __extern_always_inline ssize_t
1850 INTERNAL_SYSCALL_syslog_3 (int *err, int type, char *bufp, int len)
1851 {
1852 *err = (38 /* ENOSYS */);
1853 return 0;
1854 }
1855
1856 __extern_always_inline int
1064 INTERNAL_SYSCALL_tgkill_3 (int *err, gid_t tgid, pid_t tid, int sig) 1857 INTERNAL_SYSCALL_tgkill_3 (int *err, gid_t tgid, pid_t tid, int sig)
1065 { 1858 {
1066 *err = (38 /* ENOSYS */); 1859 *err = (38 /* ENOSYS */);
1067 return 0; 1860 return 0;
1068 } 1861 }
1069 1862
1070 __extern_always_inline int 1863 __extern_always_inline int
1071 INTERNAL_SYSCALL_timer_create_3 (int *err, clockid_t clockid, 1864 INTERNAL_SYSCALL_timer_create_3 (int *err, clockid_t clockid,
1072 struct sigevent *evp, 1865 struct sigevent *evp,
1073 __kernel_timer_t *timerid) 1866 __kernel_timer_t *timerid)
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
1114 return 0; 1907 return 0;
1115 } 1908 }
1116 1909
1117 __extern_always_inline int 1910 __extern_always_inline int
1118 INTERNAL_SYSCALL_tkill_2 (int *err, pid_t tid, int sig) 1911 INTERNAL_SYSCALL_tkill_2 (int *err, pid_t tid, int sig)
1119 { 1912 {
1120 *err = (38 /* ENOSYS */); 1913 *err = (38 /* ENOSYS */);
1121 return 0; 1914 return 0;
1122 } 1915 }
1123 1916
1917 __extern_always_inline mode_t
1918 INTERNAL_SYSCALL_umask_1 (int *err, mode_t mask)
1919 {
1920 *err = (38 /* ENOSYS */);
1921 return 0;
1922 }
1923
1924 __extern_always_inline int
1925 INTERNAL_SYSCALL_umount2_2 (int *err, const char *target, int flags)
1926 {
1927 *err = (38 /* ENOSYS */);
1928 return 0;
1929 }
1930
1931 __extern_always_inline int
1932 INTERNAL_SYSCALL_umount_1 (int *err, const char *target)
1933 {
1934 return INTERNAL_SYSCALL_umount2_2 (err, target, 0);
1935 }
1936
1937 __extern_always_inline int
1938 INTERNAL_SYSCALL_uname_1 (int *err, struct utsname *buf)
1939 {
1940 *err = (38 /* ENOSYS */);
1941 return 0;
1942 }
1943
1124 __extern_always_inline int 1944 __extern_always_inline int
1125 INTERNAL_SYSCALL_unlink_1 (int *err, const char *pathname) 1945 INTERNAL_SYSCALL_unlink_1 (int *err, const char *pathname)
1126 { 1946 {
1127 *err = (38 /* ENOSYS */); 1947 *err = (38 /* ENOSYS */);
1128 return 0; 1948 return 0;
1129 } 1949 }
1130 1950
1131 __extern_always_inline int 1951 __extern_always_inline int
1132 INTERNAL_SYSCALL_unlinkat_3 (int *err, int dirfd, const char *pathname, 1952 INTERNAL_SYSCALL_unlinkat_3 (int *err, int dirfd, const char *pathname,
1133 int flags) 1953 int flags)
1134 { 1954 {
1135 *err = (38 /* ENOSYS */); 1955 *err = (38 /* ENOSYS */);
1136 return 0; 1956 return 0;
1137 } 1957 }
1138 1958
1139 __extern_always_inline int 1959 __extern_always_inline int
1960 INTERNAL_SYSCALL_unshare_1 (int *err, int flags)
1961 {
1962 *err = (38 /* ENOSYS */);
1963 return 0;
1964 }
1965
1966 __extern_always_inline int
1967 INTERNAL_SYSCALL_uselib_1 (int *err, const char *library)
1968 {
1969 *err = (38 /* ENOSYS */);
1970 return 0;
1971 }
1972
1973 __extern_always_inline int
1140 INTERNAL_SYSCALL_ustat_2 (int *err, dev_t dev, struct ustat *ubuf) 1974 INTERNAL_SYSCALL_ustat_2 (int *err, dev_t dev, struct ustat *ubuf)
1141 { 1975 {
1142 *err = (38 /* ENOSYS */); 1976 *err = (38 /* ENOSYS */);
1143 return 0; 1977 return 0;
1144 } 1978 }
1145 1979
1146 __extern_always_inline int 1980 __extern_always_inline int
1147 INTERNAL_SYSCALL_utime_2 (int *err, const char *filename, 1981 INTERNAL_SYSCALL_utime_2 (int *err, const char *filename,
1148 const struct utimbuf *times) 1982 const struct utimbuf *times)
1149 { 1983 {
(...skipping 10 matching lines...) Expand all
1160 } 1994 }
1161 1995
1162 __extern_always_inline int 1996 __extern_always_inline int
1163 INTERNAL_SYSCALL_utimensat_4 (int *err, int dirfd, const char *pathname, 1997 INTERNAL_SYSCALL_utimensat_4 (int *err, int dirfd, const char *pathname,
1164 const struct timespec times[2], int flags) 1998 const struct timespec times[2], int flags)
1165 { 1999 {
1166 *err = (38 /* ENOSYS */); 2000 *err = (38 /* ENOSYS */);
1167 return 0; 2001 return 0;
1168 } 2002 }
1169 2003
2004 __extern_always_inline int
2005 INTERNAL_SYSCALL_vhangup_0 (int *err)
2006 {
2007 *err = (38 /* ENOSYS */);
2008 return 0;
2009 }
2010
2011 #ifdef __i386__
2012 __extern_always_inline int
2013 INTERNAL_SYSCALL_vm86_2 (int *err, unsigned long fn,
2014 struct vm86plus_struct *v86)
2015 {
2016 *err = (38 /* ENOSYS */);
2017 return 0;
2018 }
2019
2020 __extern_always_inline int
2021 INTERNAL_SYSCALL_vm86old_1 (int *err, struct vm86_struct *info)
2022 {
2023 *err = (38 /* ENOSYS */);
2024 return 0;
2025 }
2026 #endif
2027
2028 __extern_always_inline ssize_t
2029 INTERNAL_SYSCALL_vmsplice_4 (int *err, int fd, const struct iovec *iov,
2030 unsigned long nr_segs, unsigned int flags)
2031 {
2032 *err = (38 /* ENOSYS */);
2033 return 0;
2034 }
2035
1170 __extern_always_inline pid_t 2036 __extern_always_inline pid_t
1171 INTERNAL_SYSCALL_wait3_3 (int *err, int *status, int options, 2037 INTERNAL_SYSCALL_wait3_3 (int *err, int *status, int options,
1172 struct rusage *rusage) 2038 struct rusage *rusage)
1173 { 2039 {
1174 *err = (38 /* ENOSYS */); 2040 *err = (38 /* ENOSYS */);
1175 return 0; 2041 return 0;
1176 } 2042 }
1177 2043
1178 __extern_always_inline pid_t 2044 __extern_always_inline pid_t
1179 INTERNAL_SYSCALL_wait4_4 (int *err, pid_t pid, int *status, int options, 2045 INTERNAL_SYSCALL_wait4_4 (int *err, pid_t pid, int *status, int options,
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
1223 It should return pid (which is equal to tid for the main process). 2089 It should return pid (which is equal to tid for the main process).
1224 It's only ever called from main process so we just return TID. */ 2090 It's only ever called from main process so we just return TID. */
1225 __extern_always_inline int 2091 __extern_always_inline int
1226 INTERNAL_SYSCALL_set_tid_address_1 (int *err, volatile int *tidptr) 2092 INTERNAL_SYSCALL_set_tid_address_1 (int *err, volatile int *tidptr)
1227 { 2093 {
1228 return INTERNAL_SYSCALL_gettid_0 (err); 2094 return INTERNAL_SYSCALL_gettid_0 (err);
1229 } 2095 }
1230 #endif 2096 #endif
1231 2097
1232 #undef INTERNAL_SYSCALL_DECL 2098 #undef INTERNAL_SYSCALL_DECL
1233 #define INTERNAL_SYSCALL_DECL(err) int err 2099 # define INTERNAL_SYSCALL_DECL(err) int err
1234 2100
1235 #undef INTERNAL_SYSCALL_ERRNO 2101 #undef INTERNAL_SYSCALL_ERRNO
1236 #define INTERNAL_SYSCALL_ERRNO(val, err) (err) 2102 # define INTERNAL_SYSCALL_ERRNO(val, err) (err)
1237 2103
1238 #undef INTERNAL_SYSCALL_ERROR_P 2104 #undef INTERNAL_SYSCALL_ERROR_P
1239 #define INTERNAL_SYSCALL_ERROR_P(val, err) (err) 2105 # define INTERNAL_SYSCALL_ERROR_P(val, err) (err)
1240 2106
1241 /* Define a macro which expands inline into the wrapper code for a IRT 2107 /* Define a macro which expands inline into the wrapper code for a IRT
1242 call. */ 2108 call. */
1243 # undef INLINE_SYSCALL 2109 # undef INLINE_SYSCALL
1244 # define INLINE_SYSCALL(name, nr, args...) \ 2110 # define INLINE_SYSCALL(name, nr, args...) \
1245 ({ \ 2111 ({ \
1246 INTERNAL_SYSCALL_DECL (err); \ 2112 INTERNAL_SYSCALL_DECL (err); \
1247 unsigned long int resultvar = INTERNAL_SYSCALL (name, err, nr , ## args); \ 2113 unsigned long int resultvar = INTERNAL_SYSCALL (name, err, nr , ## args); \
1248 if (__builtin_expect (err, 0)) \ 2114 if (__builtin_expect (err, 0)) \
1249 { \ 2115 { \
1250 __set_errno (err); \ 2116 __set_errno (err); \
1251 resultvar = (unsigned long int) -1; \ 2117 resultvar = (unsigned long int) -1; \
1252 } \ 2118 } \
1253 (long int) resultvar; }) 2119 (long int) resultvar; })
1254 2120
1255 #undef INTERNAL_VSYSCALL 2121 #undef INTERNAL_VSYSCALL
1256 #define INTERNAL_VSYSCALL INTERNAL_SYSCALL 2122 # define INTERNAL_VSYSCALL INTERNAL_SYSCALL
1257 2123
1258 /* Nacl uses AT_SYSINFO for IRT. Thus sysinfo can never be usable 2124 /* Nacl uses AT_SYSINFO for IRT. Thus sysinfo can never be usable
1259 and it's safe to disable this machinery. */ 2125 and it's safe to disable this machinery. */
1260 #undef NEED_DL_SYSINFO 2126 #undef NEED_DL_SYSINFO
1261 2127
1262 #undef __NR_fallocate
1263 #undef __NR_pselect6
1264 #undef __NR_rt_sigaction
1265
1266 #ifndef __x86_64__ 2128 #ifndef __x86_64__
1267 #undef PSEUDO 2129 #undef PSEUDO
1268 #define PSEUDO(name, syscall_name, args) \ 2130 #define PSEUDO(name, syscall_name, args) \
1269 .text; \ 2131 .text; \
1270 ENTRY (name) \ 2132 ENTRY (name) \
1271 mov $-38, %eax; \ 2133 mov $-38, %eax; \
1272 L(pseudo_end): \ 2134 L(pseudo_end): \
1273 NACLRET 2135 NACLRET
1274 2136
1275 #undef PSEUDO_END 2137 #undef PSEUDO_END
(...skipping 25 matching lines...) Expand all
1301 #define PSEUDO_END_ERRVAL(name) \ 2163 #define PSEUDO_END_ERRVAL(name) \
1302 END (name) 2164 END (name)
1303 2165
1304 #undef SYSCALL_ERROR_HANDLER_TLS_STORE 2166 #undef SYSCALL_ERROR_HANDLER_TLS_STORE
1305 #define SYSCALL_ERROR_HANDLER_TLS_STORE(src, destoff) \ 2167 #define SYSCALL_ERROR_HANDLER_TLS_STORE(src, destoff) \
1306 movl %gs:0, %eax; \ 2168 movl %gs:0, %eax; \
1307 movl src, (%eax,destoff) 2169 movl src, (%eax,destoff)
1308 2170
1309 #endif 2171 #endif
1310 #endif 2172 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698