32a8490d32
sys/modules Makefile after completing a buildworld. History: The bulk of this code was obtained from NetBSD approximately one year ago (I have taken care to preserve the original NetBSD copyrights and I thank the authors for their work.) At that time, the OSF/1 code was what was left over from their initial bootstrapping off of OSF/1 and did not provide support for executing shared binaries. I have independently added support for shared libraries, and support for some of the more obscure system calls. This code has been available for testing and comment since January of 1999 and running on production machines here at Duke since April. Known working applications include: - Netscape (all versions I've tried) - Mathematica 3.0.2 - Splus 3.4 - ArcInfo 7.1 - Matlab (version unknown) - SimOS - Atom instrumented binaries (built on a real OSF/1 system) Applications which are known not to work: - All applications linking to libmach - Adobe Acrobat (uses libmach) This has been tested with applications running against shared libraries from OSF/1 (aka Tru64) 4.0D and 4.0F. Reviewed by: marcel, obrien BDE-lint by: obrien Agreed in principal to by: msmith
393 lines
14 KiB
Plaintext
393 lines
14 KiB
Plaintext
; $FreeBSD$
|
|
|
|
; @(#)syscalls.master 8.1 (Berkeley) 7/19/93
|
|
; System call name/number master file (or rather, slave, from OSF1).
|
|
; Processed to created osf1_sysent.c, osf1_syscalls.c and osf1_syscall.h.
|
|
|
|
; Columns: number type nargs namespc name alt{name,tag,rtyp}/comments
|
|
; number system call number, must be in order
|
|
; type one of STD, OBSOL, UNIMPL, COMPAT
|
|
; namespc one of POSIX, BSD, STD, NOHIDE (I dont care :-) -Peter
|
|
; name psuedo-prototype of syscall routine
|
|
; If one of the following alts is different, then all appear:
|
|
; altname name of system call if different
|
|
; alttag name of args struct tag if different from [o]`name'"_args"
|
|
; altrtyp return type if not int (bogus - syscalls always return int)
|
|
; for UNIMPL/OBSOL, name continues with comments
|
|
|
|
; types:
|
|
; STD always included
|
|
; COMPAT included on COMPAT #ifdef
|
|
; LIBCOMPAT included on COMPAT #ifdef, and placed in syscall.h
|
|
; OBSOL obsolete, not included in system, only specifies name
|
|
; UNIMPL not implemented, placeholder only
|
|
|
|
#include "opt_compat.h"
|
|
#include <sys/param.h>
|
|
#include <sys/sysent.h>
|
|
#include <sys/sysproto.h>
|
|
#include <alpha/osf1/osf1.h>
|
|
#include <alpha/osf1/osf1_signal.h>
|
|
#include <alpha/osf1/osf1_proto.h>
|
|
|
|
|
|
0 NOPROTO OSF1 { int nosys(void); }
|
|
1 NOPROTO OSF1 { int exit(int rval); }
|
|
2 NOPROTO OSF1 { int fork(void); }
|
|
3 NOPROTO OSF1 { ssize_t read(int fd, char *buf, ssize_t nbyte); }
|
|
4 NOPROTO OSF1 { ssize_t write(int fd, char *buf, ssize_t nbyte); }
|
|
5 UNIMPL OSF1 old open
|
|
6 NOPROTO OSF1 { int close(int fd); }
|
|
7 STD OSF1 { int osf1_wait4(int pid, int *status, int options, \
|
|
struct osf1_rusage *rusage); }
|
|
8 UNIMPL OSF1 old creat
|
|
9 NOPROTO OSF1 { int link(char *path, char *link); }
|
|
10 NOPROTO OSF1 { int unlink(char *path); }
|
|
11 UNIMPL OSF1 execv
|
|
12 NOPROTO OSF1 { int chdir(char *path); }
|
|
13 NOPROTO OSF1 { int fchdir(int fd); }
|
|
14 STD OSF1 { int osf1_mknod(char *path, int mode, int dev); }
|
|
15 NOPROTO OSF1 { int chmod(char *path, int mode); }
|
|
16 NOPROTO OSF1 { int chown(char *path, int uid, int gid); }
|
|
17 NOPROTO OSF1 { int obreak(char *nsize); }
|
|
18 STD OSF1 { int osf1_getfsstat(struct osf1_statfs *buf, \
|
|
long bufsize, int flags); }
|
|
19 STD OSF1 { off_t osf1_lseek(int fd, off_t offset, \
|
|
int whence); }
|
|
20 NOPROTO OSF1 { pid_t getpid(void); }
|
|
21 STD OSF1 { int osf1_mount(int type, char *path, int flags, \
|
|
caddr_t data); }
|
|
22 STD OSF1 { int osf1_unmount(char *path, int flags); }
|
|
23 STD OSF1 { int osf1_setuid(uid_t uid); }
|
|
24 NOPROTO OSF1 { uid_t getuid(void); }
|
|
25 UNIMPL OSF1 exec_with_loader
|
|
26 UNIMPL OSF1 ptrace
|
|
27 UNIMPL OSF1 recvmsg
|
|
28 UNIMPL OSF1 sendmsg
|
|
29 NOPROTO OSF1 { int recvfrom(int s, caddr_t buf, size_t len, \
|
|
int flags, caddr_t from, int *fromlenaddr); }
|
|
30 NOPROTO OSF1 { int accept(int s, caddr_t name, int *anamelen); }
|
|
31 NOPROTO OSF1 { int getpeername(int fdes, caddr_t asa, int *alen); }
|
|
32 NOPROTO OSF1 { int getsockname(int fdes, caddr_t asa, int *alen); }
|
|
33 STD OSF1 { int osf1_access(char *path, int flags); }
|
|
34 UNIMPL OSF1 chflags
|
|
35 UNIMPL OSF1 fchflags
|
|
36 NOPROTO OSF1 { int sync(void); }
|
|
37 STD OSF1 { int osf1_kill(int pid, int signum); }
|
|
38 UNIMPL OSF1 old stat
|
|
39 NOPROTO OSF1 { int setpgid(int pid, int pgid); }
|
|
40 UNIMPL OSF1 old lstat
|
|
41 NOPROTO OSF1 { int dup(u_int fd); }
|
|
42 NOPROTO OSF1 { int pipe(void); }
|
|
43 STD OSF1 { int osf1_set_program_attributes( \
|
|
vm_offset_t text_start, vm_offset_t text_len,\
|
|
vm_offset_t bss_start, vm_offset_t bss_len); }
|
|
44 UNIMPL OSF1 profil
|
|
45 STD OSF1 { int osf1_open(char *path, int flags, int mode); }
|
|
46 OBSOL OSF1 sigaction
|
|
47 NOPROTO OSF1 { gid_t getgid(void); }
|
|
48 STD OSF1 { int osf1_sigprocmask(int how, osf1_sigset_t mask); }
|
|
49 NOPROTO OSF1 { int getlogin(char *namebuf, u_int namelen); }
|
|
50 NOPROTO OSF1 { int setlogin(char *namebuf); }
|
|
51 NOPROTO OSF1 { int acct(char *path); }
|
|
52 STD OSF1 { int osf1_sigpending(struct proc *p, \
|
|
osf1_sigset_t *mask ); }
|
|
53 STD OSF1 { int osf1_classcntl(int opcode, int arg1, \
|
|
int arg2, int arg3); }
|
|
54 STD OSF1 { int osf1_ioctl(int fd, int com, caddr_t data); }
|
|
55 STD OSF1 { int osf1_reboot(int opt); }
|
|
56 NOPROTO OSF1 { int revoke(char *path); }
|
|
57 NOPROTO OSF1 { int symlink(char *path, char *link); }
|
|
58 NOPROTO OSF1 { int readlink(char *path, char *buf, int count); }
|
|
59 STD OSF1 { int osf1_execve(char *path, char **argp, \
|
|
char **envp); }
|
|
60 NOPROTO OSF1 { int umask(int newmask); }
|
|
61 NOPROTO OSF1 { int chroot(char *path); }
|
|
62 UNIMPL OSF1 old fstat
|
|
63 NOPROTO OSF1 { int getpgrp(void); }
|
|
64 NOPROTO OSF1 { int ogetpagesize(void); }
|
|
65 UNIMPL OSF1 mremap
|
|
66 NOPROTO OSF1 { int vfork(void); }
|
|
67 STD OSF1 { int osf1_stat(char *path, struct osf1_stat *ub); }
|
|
68 STD OSF1 { int osf1_lstat(char *path, \
|
|
struct osf1_stat *ub); }
|
|
69 UNIMPL OSF1 sbrk
|
|
70 UNIMPL OSF1 sstk
|
|
71 STD OSF1 { caddr_t osf1_mmap(caddr_t addr, size_t len, \
|
|
int prot, int flags, int fd, off_t pos); }
|
|
72 UNIMPL OSF1 ovadvise
|
|
73 NOPROTO OSF1 { int munmap(caddr_t addr, size_t len); }
|
|
74 NOPROTO OSF1 { int mprotect(void *addr, size_t len, int prot); }
|
|
; XXX
|
|
75 STD OSF1 { int osf1_madvise(void); }
|
|
76 UNIMPL OSF1 old vhangup
|
|
77 UNIMPL OSF1 kmodcall
|
|
78 UNIMPL OSF1 mincore
|
|
79 NOPROTO OSF1 { int getgroups(u_int gidsetsize, gid_t *gidset); }
|
|
80 NOPROTO OSF1 { int setgroups(u_int gidsetsize, gid_t *gidset); }
|
|
81 UNIMPL OSF1 old getpgrp
|
|
; OSF/1 setpgrp(); identical in function to setpgid(). XXX
|
|
82 STD OSF1 { int osf1_setpgrp(int pid, int pgid); }
|
|
83 STD OSF1 { int osf1_setitimer(u_int which, struct itimerval *itv, \
|
|
struct itimerval *oitv); }
|
|
84 UNIMPL OSF1 old wait
|
|
85 STD OSF1 { int osf1_table(long id, long index, void *addr, \
|
|
long nel, u_long lel); }
|
|
86 STD OSF1 { int osf1_getitimer(u_int which, struct itimerval *itv); }
|
|
87 NOPROTO OSF1 { int ogethostname(char *hostname, \
|
|
u_int len); }
|
|
88 NOPROTO OSF1 { int osethostname(char *hostname, \
|
|
u_int len); }
|
|
89 NOPROTO OSF1 { int getdtablesize(void); }
|
|
90 NOPROTO OSF1 { int dup2(u_int from, u_int to); }
|
|
91 STD OSF1 { int osf1_fstat(int fd, void *sb); }
|
|
92 STD OSF1 { int osf1_fcntl(int fd, int cmd, void *arg); }
|
|
93 STD OSF1 { int osf1_select(u_int nd, fd_set *in, fd_set *ou, \
|
|
fd_set *ex, struct timeval *tv); }
|
|
94 NOPROTO OSF1 { int poll(struct pollfd *fds, u_int nfds, \
|
|
int timeout); }
|
|
95 NOPROTO OSF1 { int fsync(int fd); }
|
|
96 NOPROTO OSF1 { int setpriority(int which, int who, int prio); }
|
|
97 STD OSF1 { int osf1_socket(int domain, int type, \
|
|
int protocol); }
|
|
98 NOPROTO OSF1 { int connect(int s, caddr_t name, int namelen); }
|
|
99 NOPROTO OSF1 { int oaccept(int s, caddr_t name, int *anamelen); }
|
|
100 NOPROTO OSF1 { int getpriority(int which, int who); }
|
|
101 NOPROTO OSF1 { int osend(int s, caddr_t buf, int len, \
|
|
int flags); }
|
|
102 NOPROTO OSF1 { int orecv(int s, caddr_t buf, int len, \
|
|
int flags); }
|
|
103 STD OSF1 { int osf1_sigreturn(struct osigcontext *sigcntxp); }
|
|
104 NOPROTO OSF1 { int bind(int s, caddr_t name, int namelen); }
|
|
105 NOPROTO OSF1 { int setsockopt(int s, int level, int name, \
|
|
caddr_t val, int valsize); }
|
|
106 NOPROTO OSF1 { int listen(int s, int backlog); }
|
|
107 UNIMPL OSF1 plock
|
|
108 UNIMPL OSF1 old sigvec
|
|
109 UNIMPL OSF1 old sigblock
|
|
110 UNIMPL OSF1 old sigsetmask
|
|
111 STD OSF1 { int osf1_sigsuspend(osf1_sigset_t ss); }
|
|
112 STD OSF1 { int osf1_osigstack(struct sigstack *nss, \
|
|
struct sigstack *oss); }
|
|
113 UNIMPL OSF1 old recvmsg
|
|
114 UNIMPL OSF1 old sendmsg
|
|
115 UNIMPL OSF1 vtrace
|
|
116 STD OSF1 { int osf1_gettimeofday(struct timeval *tp, \
|
|
struct timezone *tzp); }
|
|
; XXX
|
|
117 STD OSF1 { int osf1_getrusage(long who, void *rusage); }
|
|
118 NOPROTO OSF1 { int getsockopt(int s, int level, int name, \
|
|
caddr_t val, int *avalsize); }
|
|
119 UNIMPL OSF1
|
|
120 STD OSF1 { int osf1_readv(int fd, struct osf1_iovec *iovp, \
|
|
u_int iovcnt); }
|
|
121 STD OSF1 { int osf1_writev(int fd, struct osf1_iovec *iovp, \
|
|
u_int iovcnt); }
|
|
122 NOPROTO OSF1 { int settimeofday(struct timeval *tv, \
|
|
struct timezone *tzp); }
|
|
123 NOPROTO OSF1 { int fchown(int fd, int uid, int gid); }
|
|
124 NOPROTO OSF1 { int fchmod(int fd, int mode); }
|
|
125 NOPROTO OSF1 { int orecvfrom(int s, caddr_t buf, \
|
|
size_t len, int flags, caddr_t from, \
|
|
int *fromlenaddr); }
|
|
126 NOPROTO OSF1 { int setreuid(int ruid, int euid); }
|
|
127 NOPROTO OSF1 { int setregid(int rgid, int egid); }
|
|
128 NOPROTO OSF1 { int rename(const char *from, \
|
|
const char *to); }
|
|
129 STD OSF1 { int osf1_truncate(char *path, off_t length); }
|
|
130 STD OSF1 { int osf1_ftruncate(int fd, off_t length); }
|
|
131 NOPROTO OSF1 { int flock(int fd, int how); }
|
|
132 STD OSF1 { int osf1_setgid(gid_t gid); }
|
|
133 STD OSF1 { int osf1_sendto(int s, caddr_t buf, size_t len, \
|
|
int flags, struct sockaddr *to, int tolen); }
|
|
134 NOPROTO OSF1 { int shutdown(int s, int how); }
|
|
135 UNIMPL OSF1 socketpair
|
|
136 NOPROTO OSF1 { int mkdir(char *path, int mode); }
|
|
137 NOPROTO OSF1 { int rmdir(char *path); }
|
|
138 NOPROTO OSF1 { int utimes(char *path, struct timeval *tptr); }
|
|
139 OBSOL OSF1 4.2 sigreturn
|
|
140 UNIMPL OSF1 adjtime
|
|
141 NOPROTO OSF1 { int ogetpeername(int fdes, caddr_t asa, int *alen); }
|
|
142 NOPROTO OSF1 { int32_t ogethostid(void); }
|
|
143 NOPROTO OSF1 { int osethostid(int32_t hostid); }
|
|
144 STD OSF1 { int osf1_getrlimit(u_int which, \
|
|
struct rlimit *rlp); }
|
|
145 STD OSF1 { int osf1_setrlimit(u_int which, \
|
|
struct rlimit *rlp); }
|
|
146 UNIMPL OSF1 old killpg
|
|
147 NOPROTO OSF1 { int setsid(void); }
|
|
148 UNIMPL OSF1 quotactl
|
|
149 NOPROTO OSF1 { int oquota(void); }
|
|
150 NOPROTO OSF1 { int ogetsockname(int fdec, caddr_t asa, int *alen);}
|
|
151 UNIMPL OSF1
|
|
152 UNIMPL OSF1
|
|
153 UNIMPL OSF1
|
|
154 UNIMPL OSF1
|
|
155 UNIMPL OSF1
|
|
156 STD OSF1 { int osf1_sigaction(long signum, \
|
|
struct osf1_sigaction *nsa, \
|
|
struct osf1_sigaction *osa, \
|
|
void *sigtramp); }
|
|
157 UNIMPL OSF1
|
|
158 UNIMPL OSF1 nfssvc
|
|
159 NOPROTO OSF1 { int ogetdirentries(int fd, char *buf, \
|
|
u_int count, long *basep); }
|
|
160 STD OSF1 { int osf1_statfs(char *path, \
|
|
struct osf1_statfs *buf, int len); }
|
|
161 STD OSF1 { int osf1_fstatfs(int fd, \
|
|
struct osf1_statfs *buf, int len); }
|
|
162 UNIMPL OSF1
|
|
163 UNIMPL OSF1 async_daemon
|
|
164 UNIMPL OSF1 getfh
|
|
165 NOPROTO OSF1 { int getdomainname(char *domainname, int len); }
|
|
166 NOPROTO OSF1 { int setdomainname(char *domainname, int len); }
|
|
167 UNIMPL OSF1
|
|
168 UNIMPL OSF1
|
|
169 UNIMPL OSF1 exportfs
|
|
170 UNIMPL OSF1
|
|
171 UNIMPL OSF1
|
|
172 UNIMPL OSF1 alt msgctl
|
|
173 UNIMPL OSF1 alt msgget
|
|
174 UNIMPL OSF1 alt msgrcv
|
|
175 UNIMPL OSF1 alt msgsnd
|
|
176 UNIMPL OSF1 alt semctl
|
|
177 UNIMPL OSF1 alt semget
|
|
178 UNIMPL OSF1 alt semop
|
|
179 UNIMPL OSF1 alt uname
|
|
180 UNIMPL OSF1
|
|
181 UNIMPL OSF1 alt plock
|
|
182 UNIMPL OSF1 lockf
|
|
183 UNIMPL OSF1
|
|
184 UNIMPL OSF1 getmnt
|
|
185 UNIMPL OSF1
|
|
186 UNIMPL OSF1 unmount
|
|
187 UNIMPL OSF1 alt sigpending
|
|
188 UNIMPL OSF1 alt setsid
|
|
189 UNIMPL OSF1
|
|
190 UNIMPL OSF1
|
|
191 UNIMPL OSF1
|
|
192 UNIMPL OSF1
|
|
193 UNIMPL OSF1
|
|
194 UNIMPL OSF1
|
|
195 UNIMPL OSF1
|
|
196 UNIMPL OSF1
|
|
197 UNIMPL OSF1
|
|
198 UNIMPL OSF1
|
|
199 UNIMPL OSF1 swapon
|
|
200 NOPROTO OSF1 { int msgctl(int msqid, int cmd, \
|
|
struct msqid_ds *buf); }
|
|
201 NOPROTO OSF1 { int msgget(key_t key, int msgflg); }
|
|
202 NOPROTO OSF1 { int msgrcv(int msqid, void *msgp, size_t msgsz, \
|
|
long msgtyp, int msgflg); }
|
|
203 NOPROTO OSF1 { int msgsnd(int msqid, void *msgp, size_t msgsz, \
|
|
int msgflg); }
|
|
204 NOPROTO OSF1 { int __semctl(int semid, int semnum, int cmd, \
|
|
union semun *arg); }
|
|
205 NOPROTO OSF1 { int semget(key_t key, int nsems, int semflg); }
|
|
206 NOPROTO OSF1 { int semop(int semid, struct sembuf *sops, \
|
|
u_int nsops); }
|
|
207 NOPROTO OSF1 { int uname(struct utsname *name); }
|
|
208 NOPROTO OSF1 { int lchown(char *path, int uid, \
|
|
int gid); }
|
|
209 NOPROTO OSF1 { int shmat(int shmid, void *shmaddr, int shmflg); }
|
|
210 NOPROTO OSF1 { int shmctl(int shmid, int cmd, \
|
|
struct shmid_ds *buf); }
|
|
211 NOPROTO OSF1 { int shmdt(void *shmaddr); }
|
|
212 NOPROTO OSF1 { int shmget(key_t key, int size, int shmflg); }
|
|
213 UNIMPL OSF1 mvalid
|
|
214 UNIMPL OSF1 getaddressconf
|
|
215 UNIMPL OSF1 msleep
|
|
216 UNIMPL OSF1 mwakeup
|
|
217 STD OSF1 { int osf1_msync(caddr_t addr, size_t len, \
|
|
int flags); }
|
|
218 STD OSF1 {int osf1_signal(int signum, void *handler); }
|
|
219 UNIMPL OSF1 utc gettime
|
|
220 UNIMPL OSF1 utc adjtime
|
|
221 UNIMPL OSF1
|
|
222 UNIMPL OSF1 security
|
|
223 UNIMPL OSF1 kloadcall
|
|
224 UNIMPL OSF1
|
|
225 UNIMPL OSF1
|
|
226 UNIMPL OSF1
|
|
227 UNIMPL OSF1
|
|
228 UNIMPL OSF1
|
|
229 UNIMPL OSF1
|
|
230 UNIMPL OSF1
|
|
231 UNIMPL OSF1
|
|
232 UNIMPL OSF1
|
|
233 NOPROTO OSF1 { pid_t getpgid(pid_t pid); }
|
|
234 NOPROTO OSF1 { pid_t getsid(pid_t pid); }
|
|
235 STD OSF1 { int osf1_sigaltstack(struct osf1_sigaltstack *nss, \
|
|
struct osf1_sigaltstack *oss); }
|
|
236 UNIMPL OSF1 waitid
|
|
237 UNIMPL OSF1 priocntlset
|
|
238 UNIMPL OSF1 sigsendset
|
|
239 UNIMPL OSF1
|
|
240 UNIMPL OSF1 msfs_syscall
|
|
241 STD OSF1 { int osf1_sysinfo(int cmd, char *buf, long count); }
|
|
242 UNIMPL OSF1 uadmin
|
|
243 UNIMPL OSF1 fuser
|
|
244 STD OSF1 { int osf1_proplist_syscall(void); }
|
|
245 STD OSF1 { int osf1_ntpadjtime(void *tp); }
|
|
246 STD OSF1 { int osf1_ntpgettime(void *tp); }
|
|
247 STD OSF1 { int osf1_pathconf(char *path, int name); }
|
|
248 STD OSF1 { int osf1_fpathconf(int fd, int name); }
|
|
249 UNIMPL OSF1
|
|
250 STD OSF1 { int osf1_uswitch(long cmd, long mask); }
|
|
251 STD OSF1 { int osf1_usleep_thread(struct timeval *sleep, \
|
|
struct timeval *slept); }
|
|
252 UNIMPL OSF1 audcntl
|
|
253 UNIMPL OSF1 audgen
|
|
254 UNIMPL OSF1 sysfs
|
|
255 UNIMPL OSF1
|
|
256 STD OSF1 { int osf1_getsysinfo(u_long op, caddr_t buffer, \
|
|
u_long nbytes, caddr_t arg, u_long flag); }
|
|
257 STD OSF1 { int osf1_setsysinfo(u_long op, caddr_t buffer, \
|
|
u_long nbytes, caddr_t arg, u_long flag); }
|
|
258 UNIMPL OSF1 afs_syscall
|
|
259 UNIMPL OSF1 swapctl
|
|
260 UNIMPL OSF1 memcntl
|
|
261 UNIMPL OSF1
|
|
262 UNIMPL OSF1
|
|
263 UNIMPL OSF1
|
|
264 UNIMPL OSF1
|
|
265 UNIMPL OSF1
|
|
266 UNIMPL OSF1
|
|
267 UNIMPL OSF1
|
|
268 UNIMPL OSF1
|
|
269 UNIMPL OSF1
|
|
270 UNIMPL OSF1
|
|
271 UNIMPL OSF1
|
|
272 UNIMPL OSF1
|
|
273 UNIMPL OSF1
|
|
274 UNIMPL OSF1
|
|
275 UNIMPL OSF1
|
|
276 UNIMPL OSF1
|
|
277 UNIMPL OSF1
|
|
278 UNIMPL OSF1
|
|
279 UNIMPL OSF1
|
|
280 UNIMPL OSF1
|
|
281 UNIMPL OSF1
|
|
282 UNIMPL OSF1
|
|
283 UNIMPL OSF1
|
|
284 UNIMPL OSF1
|
|
285 UNIMPL OSF1
|
|
286 UNIMPL OSF1
|
|
287 UNIMPL OSF1
|
|
288 UNIMPL OSF1
|
|
289 UNIMPL OSF1
|
|
290 UNIMPL OSF1
|
|
291 UNIMPL OSF1
|
|
292 UNIMPL OSF1
|
|
293 UNIMPL OSF1
|
|
294 UNIMPL OSF1
|
|
295 UNIMPL OSF1
|
|
296 UNIMPL OSF1
|
|
297 UNIMPL OSF1
|
|
298 UNIMPL OSF1
|
|
299 UNIMPL OSF1
|
|
300 UNIMPL OSF1
|
|
|
|
|
|
|