Commit | Line | Data |
---|---|---|
2ab371d8 | 1 | /* |
c6dd5f9e | 2 | * unix7sys.h 4.1 82/05/12 |
2ab371d8 RH |
3 | */ |
4 | #define NSYSTRAPS 64 | |
5 | #define NSIGS 13 | |
6 | #define ILLSYS -1 | |
7 | #define NORMRET 0 | |
8 | #define LONGRET 1 | |
9 | #define TWORET 2 | |
10 | #define FORK 2 | |
11 | #define OPEN 5 | |
12 | #define WAIT 7 | |
13 | #define CREAT 8 | |
14 | #define LINK 9 | |
15 | #define UNLNK 10 | |
16 | #define EXEC 11 | |
17 | #define CHDIR 12 | |
18 | #define MKNOD 14 | |
19 | #define BRK 17 | |
20 | #define STAT 18 | |
21 | #define SEEK 19 | |
22 | #define SETUID 23 | |
23 | #define GETUID 24 | |
24 | #define FSTAT 28 | |
25 | #define PIPE 42 | |
26 | #define TIMES 43 | |
27 | #define SETGID 46 | |
28 | #define GETGID 47 | |
29 | #define SIG 48 | |
30 | #define EXECE 59 | |
31 | /* | |
32 | * The numerical entries in the following table are | |
33 | * really composed of 3 parts. | |
34 | * The first entry in each row indicates the number | |
35 | * of register arguments for the system call, while | |
36 | * the 2nd position is the number of memory arguments | |
37 | * the 3rd position is LONGRET if the return is a long (r0 and r1) | |
38 | * or is TWORET if the return is 2 ints ala pipe | |
39 | * otherwise it is NORMRET. | |
40 | */ | |
41 | int sysargs[][3] = | |
42 | { | |
43 | 0, 0, NORMRET, /* 0 = indir */ | |
44 | 1, 0, NORMRET, /* 1 = exit */ | |
45 | 0, 0, NORMRET, /* 2 = fork */ | |
46 | 1, 2, NORMRET, /* 3 = read */ | |
47 | 1, 2, NORMRET, /* 4 = write */ | |
48 | 0, 2, NORMRET, /* 5 = open */ | |
49 | 1, 0, NORMRET, /* 6 = close */ | |
50 | 0, 0, TWORET, /* 7 = wait */ | |
51 | 0, 2, NORMRET, /* 8 = creat */ | |
52 | 0, 2, NORMRET, /* 9 = link */ | |
53 | 0, 1, NORMRET, /* 10 = unlink */ | |
54 | 0, 2, NORMRET, /* 11 = exec */ | |
55 | 0, 1, NORMRET, /* 12 = chdir */ | |
56 | 0, 0, LONGRET, /* 13 = time */ | |
57 | 0, 3, NORMRET, /* 14 = mknod */ | |
58 | 0, 2, NORMRET, /* 15 = chmod */ | |
59 | 0, 3, NORMRET, /* 16 = chown; now 3 args */ | |
60 | 0, 1, NORMRET, /* 17 = break */ | |
61 | 0, 2, NORMRET, /* 18 = stat */ | |
62 | 1, 3, LONGRET, /* 19 = seek; now 3 args */ | |
63 | 0, 0, NORMRET, /* 20 = getpid */ | |
64 | 0, 3, NORMRET, /* 21 = mount */ | |
65 | 0, 1, NORMRET, /* 22 = umount */ | |
66 | 1, 0, NORMRET, /* 23 = setuid */ | |
67 | 0, 0, TWORET, /* 24 = getuid */ | |
68 | 2, 0, NORMRET, /* 25 = stime */ | |
69 | 1, 3, NORMRET, /* 26 = ptrace */ | |
70 | 1, 0, NORMRET, /* 27 = alarm */ | |
71 | 1, 1, NORMRET, /* 28 = fstat */ | |
72 | 0, 0, NORMRET, /* 29 = pause */ | |
73 | 0, 2, NORMRET, /* 30 = utime */ | |
74 | 1, 1, NORMRET, /* 31 = stty */ | |
75 | 1, 1, NORMRET, /* 32 = gtty */ | |
76 | 0, 2, NORMRET, /* 33 = access */ | |
77 | 1, 0, NORMRET, /* 34 = nice */ | |
78 | 0, 1, NORMRET, /* 35 = ftime; formerly sleep */ | |
79 | 0, 0, NORMRET, /* 36 = sync */ | |
80 | 1, 1, NORMRET, /* 37 = kill */ | |
81 | 0, 0, NORMRET, /* 38 = switch; inoperative */ | |
82 | 0, 0, NORMRET, /* 39 = setpgrp (not in yet) */ | |
83 | ILLSYS, 0, NORMRET, /* 40 = tell (obsolete) */ | |
84 | 2, 0, NORMRET, /* 41 = dup */ | |
85 | 0, 0, TWORET, /* 42 = pipe */ | |
86 | 0, 1, NORMRET, /* 43 = times */ | |
87 | 0, 4, NORMRET, /* 44 = prof */ | |
88 | ILLSYS, 0, NORMRET, /* 45 = unused */ | |
89 | 1, 0, NORMRET, /* 46 = setgid */ | |
90 | 0, 0, TWORET, /* 47 = getgid */ | |
91 | 0, 2, NORMRET, /* 48 = sig */ | |
92 | ILLSYS, 0, NORMRET, /* 49 = reserved for USG */ | |
93 | ILLSYS, 0, NORMRET, /* 50 = reserved for USG */ | |
94 | 0, 1, NORMRET, /* 51 = turn acct off/on */ | |
95 | 0, 3, NORMRET, /* 52 = set user physical addresses */ | |
96 | 0, 1, NORMRET, /* 53 = lock user in core */ | |
97 | 0, 3, NORMRET, /* 54 = ioctl */ | |
98 | ILLSYS, 0, NORMRET, /* 55 = readwrite (in abeyance) */ | |
99 | 0, 4, NORMRET, /* 56 = creat mpx comm channel */ | |
100 | ILLSYS, 0, NORMRET, /* 57 = reserved for USG */ | |
101 | ILLSYS, 0, NORMRET, /* 58 = reserved for USG */ | |
102 | 0, 3, NORMRET, /* 59 = exece */ | |
103 | 0, 1, NORMRET, /* 60 = umask */ | |
104 | 0, 1, NORMRET, /* 61 = chroot */ | |
105 | ILLSYS, 0, NORMRET, /* 62 = x */ | |
106 | ILLSYS, 0, NORMRET /* 63 = used internally */ | |
107 | }; |