Commit Graph

363 Commits

Author SHA1 Message Date
christos
3c27e58f31 Regen. 1997-07-21 23:03:30 +00:00
christos
ee8b56d3e6 Add:
64 bit filesystem system calls
	socket system calls
	ntp system calls
1997-07-21 23:02:34 +00:00
pk
e3680b0e26 config.new => config 1997-07-20 20:33:08 +00:00
kleink
ff831a8fcd regen. 1997-06-27 05:36:07 +00:00
kleink
96588fead9 Use sys_posix_rename() instead of sys_rename() as it's the behaviour of the
native implementation.
1997-06-27 05:29:34 +00:00
mycroft
e3f99a9397 Pass the vnode type to vaccess(), and use it when checking VEXEC. Make sure
that the mode bits passed to vaccess() and returned by foo_getattr() contain
only permission bits.
1997-05-08 16:19:43 +00:00
mycroft
837a72363d VEXEC -> VLOOKUP, as appropriate. 1997-05-08 10:57:17 +00:00
christos
8e5e5d1667 Fix reverse test in O_NOCTTY; pointed out by Klaus Klein 1997-04-02 15:29:18 +00:00
christos
6c41fdc592 Handle NULL shmid_ds properly in shmctl. 1997-03-30 17:21:02 +00:00
christos
4fe8f4e95f PR/3354: From Michael Eriksson; I_SETSIG did not handle O_ASYNC properly
and we would never get asynchronous events back. This affected the java
SDK. Also GC O_RAIOSIG which was a Dell/SVR4'ism which is now RIP.
1997-03-18 18:57:19 +00:00
christos
f4fdc411c5 Regen 1997-03-15 00:06:47 +00:00
christos
015524c601 Add nice(2). 1997-03-15 00:01:18 +00:00
christos
5426bff5dd Fix incorrect comment about fdinsert 1997-03-15 00:00:09 +00:00
thorpej
8f8abcd69c Regen; makesyscalls.sh emits comments now. 1997-01-13 18:49:02 +00:00
fvdl
bb31faf853 Make this compile again, including Politically Correct const handling. 1996-12-22 23:00:02 +00:00
christos
4fd46ff6cb regen 1996-12-06 03:26:33 +00:00
christos
88bb1b35b5 add syscalls acl, facl, memcntl, pause 1996-12-06 03:25:07 +00:00
christos
e0c2870d89 implement I_SETSIG 1996-12-06 03:24:32 +00:00
christos
76a77f1302 header for acl, facl 1996-12-06 03:23:30 +00:00
christos
ac0cfc70ae implement acl, facl, memcntl 1996-12-06 03:22:34 +00:00
christos
e8aaebee8e implement pause 1996-12-06 03:21:53 +00:00
fvdl
0c32bba802 Make this compile with -Wcast-qual. 1996-10-28 08:46:35 +00:00
christos
dcf74c0b02 Catch up with Jason changes.
Backout kprintf stuff
1996-10-13 00:08:26 +00:00
christos
5476886e52 printf -> kprintf, sprintf -> ksprintf 1996-10-10 17:47:29 +00:00
cgd
912e6fef44 include <sys/exec.h> rather than <machine/exec.h> 1996-10-07 21:47:33 +00:00
christos
3e00b323f3 Fix PR/2801: Zero length svr4_mmap() should return EINVAL. 1996-10-07 16:16:14 +00:00
cgd
65148dea43 kill (re)definitions of EXEC_ELF32. They're no longer necessary
(because of the EXEC_* option changes), and now cause warnings.
1996-10-03 05:02:05 +00:00
cgd
7c3255776d slightly clean up some of the changes made when ELF64 support went in 1996-09-27 18:14:23 +00:00
cgd
9c3e274c7b adapt ELF-using compat code to use new ELF definitions/code. At this point,
these are restricted to 32-bit ELF, and should be severely cleaned.
1996-09-26 20:52:42 +00:00
christos
42d3980338 Fix PR/2779: statvfs returns incorrect sizes. From Aaron Brown 1996-09-25 04:37:13 +00:00
mycroft
826fb76b6f Regen. 1996-09-07 14:24:17 +00:00
mycroft
1449e67e30 Modify poll(2) prototype. 1996-09-07 14:20:09 +00:00
mycroft
f51fa207ba Regen. 1996-09-07 13:01:41 +00:00
mycroft
4a60463da8 This is no longer needed. 1996-09-07 13:01:29 +00:00
mycroft
2bc736661a Implement poll(2). 1996-09-07 12:40:22 +00:00
mycroft
a8fd25767d Define execv() and execve() consistently across emulations.
Do path name translation.
1996-09-03 03:12:17 +00:00
christos
f8dddb3afe add: I_FDINSERT, _I_BIND_RSVD, _I_RELE_RSVD, SI_SHUTDOWN
this fixes programs that use listen(2) and accept(2), and
makes unix domain sockets work both in tcp and udp.
1996-08-30 23:06:24 +00:00
christos
8979b8342a Fix PR/2599; include <sys/dirent.h> instead of <sys/dir.h> 1996-07-05 16:31:00 +00:00
christos
5d27db0882 Pass the elf exec header in the probe function. 1996-06-13 18:33:54 +00:00
christos
38c8b72648 Many bug fixes... These now work well enough for vi, ksh, csh, stty etc. 1996-06-05 19:27:41 +00:00
christos
13bce5bb2b - report process usage correctly. we used to get panics on SIGTSTP. 1996-06-05 19:26:13 +00:00
christos
53efdc8e32 - return EINVAL on the hardware specific 'X' ioctls, otherwise stty does not
work properly.
- use printf -> uprintf.
1996-06-05 19:24:22 +00:00
christos
7e8a7a54eb - Always check if the file descriptor we are using is a socket.
- Make sure we get an so_internal state allocated, even if we
  did not open the socket ourselves.
1996-06-05 19:10:34 +00:00
christos
dd1fe33d2e - Always check if the file descriptor we are using is a socket.
- Make sure we get an so_internal state allocated, even if we
  did not open the socket ourselves.
1996-06-05 19:07:37 +00:00
christos
6ba5bd8c10 Fix OGETUDATA for Solaris-2.3 (From Greg Hudson) 1996-05-13 16:57:50 +00:00
mrg
b961912b8a sort this. 1996-05-05 17:14:25 +00:00
christos
029f35aa10 Avoid overruns when copying the interface name. 1996-05-03 17:09:15 +00:00
christos
efc7b8aec4 - don't use if_index to get the number of interfaces in SIOCGIFNUM; compute
the actual number.
- forgot to copyout the result in SIOGCIFFLAGS.
1996-04-22 01:17:33 +00:00
christos
02f94c17fb Add SI_SYSTEMINFO from Solaris-2.5 1996-04-22 01:16:04 +00:00
christos
5fda4b10a2 - small ioctl naming changes.
- pass ioctl fd explicitly.
1996-04-11 12:54:40 +00:00
christos
3b309224fd - Pass ioctl file descriptor explicitly.
- some 'T' ioctl's are for streams, call the stream function in the default case
1996-04-11 12:53:48 +00:00
christos
4a0b33e910 Handle different address families, and in particular AF_UNIX. 1996-04-11 12:52:41 +00:00
christos
8edeaa1f71 Add accept message 1996-04-11 12:52:03 +00:00
christos
d37bbda397 - keep the address family in the global state, now that we are using it.
- add netaddr_un
1996-04-11 12:50:31 +00:00
christos
0a8a2051dc - Make unix domain sockets work.
- Implement GETSOCKNAME and GETMYNAME
- Implement getmsg(ACCEPT) [incomplete]
- Implement LISTEN [incomplete]

There are too many changes in the code, this is why the incomplete checkpoint.
1996-04-11 12:49:13 +00:00
christos
8294057bdb Svr4 does not have unix domain sockets; it emulates them with mode 0 named
pipes. Emulate that behavior, by telling svr4 we've found mode 0 named pipe
when we find a unix domain socket. Also record the name and device,inode
pair of sockets found.
1996-04-11 12:46:41 +00:00
christos
dcf6c8ee56 New files to provide a device,inode -> pathname mapping for unix domain
sockets. This is needed for putmsg(2)
1996-04-11 12:43:29 +00:00
christos
260951021b Use uprintf instead of printf for debugging. Lot's of printing causes panics
on the sparcs, and even if that was not the case, you end up losing text.
1996-04-11 12:41:25 +00:00
christos
c5cd2c8f26 Remove dependence on svr4_conf.h and the file itself. 1996-03-30 22:40:55 +00:00
christos
6c2fd36998 Fixed debug printf format args. 1996-03-30 22:37:52 +00:00
christos
ed8966b2ea svr4_sigfillset should be void 1996-03-16 23:20:30 +00:00
christos
79344ff371 - add svr4_conf.h
- add window size ioctls
1996-03-14 19:29:11 +00:00
christos
47158e6548 syscalls.master changed 1996-02-10 17:14:07 +00:00
christos
eb13d0121e - fixed wrong argument order in xmknod
- added proper support for {f,}pathconf
1996-02-10 17:12:31 +00:00
christos
b50214e2fa use %p in printf's instead of casts to (unsigned int) 1996-02-10 00:48:08 +00:00
christos
1b17f25866 fix prototype warnings 1996-02-09 23:12:14 +00:00
christos
065bada41f so_pcb -> so_internal 1996-02-04 02:01:07 +00:00
mycroft
f19761346e Do the previous change a little differently. 1996-02-02 08:09:45 +00:00
christos
1c35870a46 syscalls.master was changed 1996-02-02 01:18:09 +00:00
christos
9840c3ca68 Add xmknod() 1996-02-02 01:17:24 +00:00
jtc
e19bfae4f9 Rename struct timespec fields to conform to POSIX.1b 1996-02-01 00:18:04 +00:00
mycroft
99686e0059 Add a vnode** argument to getvnode(), prototype it, and make it return
EBADF if the file descriptor has been revoked.
1996-01-30 20:05:33 +00:00
jtc
2fce159ff8 Changed name of sigaltstack's ss_base field to ss_sp to match XPG4.2 and
traditional usage.
1996-01-04 22:21:33 +00:00
christos
ac82785d44 fix compile error from fvdl; thanks. 1995-12-19 18:27:02 +00:00
christos
34af3b306f syscalls.master was changed 1995-12-19 07:14:25 +00:00
christos
20a2ff3d16 Added utime and utimes 1995-12-19 07:12:53 +00:00
mycroft
686dddaff9 Reran makesyscalls.sh. 1995-10-15 06:13:56 +00:00
christos
81ae32e332 syscalls.master was changed. 1995-10-14 20:26:39 +00:00
christos
a4e2f7532a - Added msgsys, shmsys and semsys... MITSHM needs shmsys, so X applications
that used that would fail.
- Propagated all the fixes from the fully prototyped kernel.
1995-10-14 20:24:14 +00:00
thorpej
d0c7d0fdd6 Add missing F_SETLKW case to svr4_sys_fcntl(), from Niklas Hallqvist
<niklas@appli.se>.
1995-10-09 23:56:17 +00:00
mycroft
652c9eff74 Use cookies for directory offset, mostly from Greg Hudson. 1995-10-09 11:23:57 +00:00
mycroft
6263c69339 Reran makesyscalls.sh. 1995-10-07 06:51:37 +00:00
mycroft
55c46e9514 Reran makesyscalls.sh. 1995-10-07 06:41:34 +00:00
mycroft
245f292fed Prefix names of system call implementation functions with `sys_'. 1995-10-07 06:25:19 +00:00
pk
23b15422dc svr4_fcntl: make uap point to argument. 1995-10-02 08:20:47 +00:00
thorpej
eecd40e854 Make system calls conform to a standard prototype and bring those
prototypes into scope.
1995-09-19 22:10:11 +00:00
thorpej
c8aae0e18a makesyscalls.sh changed. 1995-09-19 22:05:58 +00:00
cgd
ce48e523d6 kill some redundant (and harmful) static definitions of functions 1995-08-19 04:04:50 +00:00
mycroft
c331c7be82 Rename ss_flags bits. 1995-08-15 16:52:30 +00:00
mycroft
10c06fe363 Prototype some functions. 1995-08-14 02:22:20 +00:00
mycroft
1e69f23205 Export bsd_to_svr4_sig[], and use it. 1995-08-14 02:07:57 +00:00
mycroft
283f211782 Sort. 1995-08-14 01:34:09 +00:00
mycroft
01fa87477a syscalls.master changed. 1995-08-14 01:29:05 +00:00
mycroft
88b8e43a80 Rearrange #includes. 1995-08-14 01:27:43 +00:00
mycroft
9440382c88 svr4_stack_t --> svr4_sigaltstack 1995-08-14 01:13:29 +00:00
mycroft
05abc039c9 syscalls.master changed. 1995-08-14 01:13:11 +00:00
mycroft
eba2f2e81a Move signal types into signal.h. 1995-08-14 01:11:52 +00:00
mycroft
3b76c0ddef svr4_stack_t --> svr4_sigaltstack 1995-08-14 00:57:13 +00:00
mycroft
475edc261c Move definition of sigset_t into types.h. 1995-08-14 00:50:27 +00:00
mycroft
ca057762b9 Minor cleanup. 1995-08-14 00:41:02 +00:00
mycroft
1575859e07 Minor cleanup. 1995-08-13 23:37:56 +00:00
mycroft
a6b7c740c6 Convert SA_RESETHAND and SA_NODEFER.
Scrub this code a bit.
1995-08-13 22:57:10 +00:00
christos
3a1e063118 Make the macro botch fix more palatable. 1995-07-05 17:08:54 +00:00
pk
426fb108d1 Brutally work around a macro botch. 1995-07-05 13:07:12 +00:00
christos
87b62763ae Add a few more sockio ioctls... Now sunxdoom is running! 1995-07-04 23:00:11 +00:00
christos
c07ddb7c1d Added sockioctls... Only getifnum supported for now.
Added SVR4_EMT_TAGOVF, needed by new machdep translations.
1995-07-04 19:46:58 +00:00
christos
ed63c665eb - make svr4_break() identical to obreak(). We still keep the code here,
to do some more testing.
- add POSIX.4 sysconfig options [we don't support them, but we don't
  return EINVAL too]
- More kludges in the interpeter load address. I hope I escape the kludge
  police...
1995-07-02 06:16:06 +00:00
christos
294f607d50 Fix alignment of svr4_getdents, so that it works for solaris2.4/sparc 1995-07-01 23:42:54 +00:00
christos
68328ddcdd Fixes for Solaris-2.4/sparc dynamically linked binaries.
We can now run them, but:

1. setcontext() causes a panic so binaries that receive signals
   crash the machine [something is wrong with the register setup].
   sleep 10 ==
    Watchdog reset
    Data Access Exception
    Type  help  for more information
    ok

2. csh says "unknown software trap a7".
3. ls gives us a bus error.
4. ldd works :-)

But I solved the problem that had been bothering me for weeks :-)
1995-06-27 22:12:47 +00:00
christos
d0169ce44a Use compat_util.[ch] 1995-06-24 20:29:17 +00:00
fvdl
cbcf8eee8a Check for invalid filedescriptors in getmsg() and putmsg(). 1995-06-24 18:47:08 +00:00
fvdl
4a10f838e7 Changed to use generic ELF code from kern/exec_elf.c (which was taken
from the svr4 exec code plus the linux compat mods)
1995-06-22 21:32:57 +00:00
fvdl
a22d72bf4d * Always kill all vm_cmds before giving up on loading an executable
* Don't try to use auxiliary arguments with statically linked executables.
* Remove 'cannot find interpreter' uprintf, as other exec modules may
  succeed in running the binary after all, and then we don't want this message.
* Some linkers produce rw- for the data segment, not rwx.
* Remove a few debugging printfs
1995-06-11 15:06:11 +00:00
mycroft
abd4cc9991 Remove /dev/zero special case. It's done in mmap(). 1995-06-10 22:45:15 +00:00
mycroft
b1868d1bdf Set st_rdev in SVR4 struct stat. 1995-06-10 22:44:18 +00:00
jtc
95ded74f58 Moved egid credential from cr_groups[0] to new field cr_gid. POSIX.1
requires that sgid executables and the setuid() syscall *not* change
the supplemental group list.
1995-06-01 22:43:30 +00:00
mycroft
bfd22ffde8 Generate the new ps_strings format. 1995-05-16 14:19:03 +00:00
mycroft
7688f4456e Remove usages of ibcs_sigflags. 1995-05-01 04:50:28 +00:00
christos
44eef7c28b - added struct emul to all emulations.
- removed all setup functions.
- added copyargs() functions where needed.
1995-04-22 19:48:19 +00:00
cgd
27228062f9 config.new file lists 1995-04-17 16:12:14 +00:00
mycroft
72adfee7f7 EMUL_IBCS2_ELF -> EMUL_SVR4; EMUL_IBCS2_{COFF,XOUT} -> EMUL_IBCS2 1995-04-13 20:48:14 +00:00
christos
c8afb5deaf Syscalls.master was changed 1995-03-31 03:08:25 +00:00
christos
ee05f066e8 1. siginfo stuff torn out from wait.h to be used by the MI portion of the code.
2. many termio, ioctl, sigaction fixes
3. better socket type emulation; still ticotsord [the loopback interface I
   guess] does not work properly on svr4 4.1.
4. new gettimeofday, fixed utssys..
5. rmdir and mkdir were swapped in syscalls.master
1995-03-31 03:06:17 +00:00
mycroft
f75ba16b09 Update to use timer{add,sub}(). 1995-03-21 13:33:34 +00:00
christos
316fa4de0e Syscalls.master was changed. 1995-02-01 01:41:37 +00:00
christos
dbcb84b7e1 Added sigaltstack, ioctl(I_NREAD)
Replaced syssun with svr4_sysarch()
1995-02-01 01:37:33 +00:00
christos
a8c747992c syscalls.master was changed 1995-01-25 04:17:45 +00:00
christos
5a54340166 Make siginfo structure a union for clarity. Fix incorrect settings of
the siginfo_t in the waitid() system call.
1995-01-25 04:17:06 +00:00
christos
279d6f3237 wait(2): Put the status in retval[1] as solaris expects it there
avoid infinite loop when looking for / [since it used to return /emul/svr4],
by returning the real root.
1995-01-22 23:44:48 +00:00
christos
22572ffee9 More debugging for waitsys()
Fixed uname which was broken since 1.0.
Added timod/getinfo stream ioctl.
Fixed TIOC{G,S}PGRP
Fixed typo in the flags translation
1995-01-10 00:04:03 +00:00
christos
9033addb0c Job control fixes... Still not working, but better 1995-01-09 01:04:18 +00:00
christos
e15e38be03 syscalls.master was changed 1995-01-08 21:32:40 +00:00
christos
ff6fb90722 Fixed waitsys().
Fixed time functions.
Added alarm(), contextsys(), sigaction(), kill(), statvfs(), fstatvfs()
1995-01-08 21:31:34 +00:00
mycroft
c06da32c6e Make sure to ream out the file descriptor table slot when aborting. 1994-12-14 20:20:26 +00:00
mycroft
797dcd3e8f Use the same method as portal fs for creating a file descriptor. 1994-12-14 20:08:30 +00:00
mycroft
6332be8c7f Use __timeradd(), not timervaladd(). 1994-12-11 17:56:21 +00:00
christos
153d76736d syscalls.master was changed; added a couple of new header files. 1994-11-18 02:56:09 +00:00
christos
2859b1c634 Rework streams emulation so that it does not rely on non portable hacks.
We keep streams state in so->so_ptcb; this field is unused in all the kernel.
Fix poll(2) timeout computation; add hrtsys and waitsys syscalls.
1994-11-18 02:53:37 +00:00
christos
0d5c2ddb90 new files 1994-11-14 06:13:11 +00:00
christos
25ef6e1436 More functionality and bug fixes 1994-11-14 06:10:37 +00:00
christos
f46f498d53 Changed code to KNF, removed global variable per cgd's request. 1994-10-29 00:43:14 +00:00
mycroft
ed0f09279e Reran makesyscalls.sh, to update SYS_* constants and fix truncated line. 1994-10-28 20:46:17 +00:00
mycroft
4e9c2720e2 Clean up deleted files. 1994-10-26 11:58:32 +00:00
christos
afffe1aaf8 Fixed Charles suggestions:
1. always do the stackgap_init()/CHECKALT first in syscalls that need it.
2. svr4_emul_find() uses malloc for the buf, does not use copyoutstr, but
   copyout().

Removed makesyscalls.sh; it was really old and we don't need a separate copy.
1994-10-26 11:58:24 +00:00
cgd
69d2deb545 new RCS ID format. 1994-10-26 05:27:43 +00:00
deraadt
dca2741d28 make SYS_* macros unique 1994-10-24 23:26:02 +00:00
deraadt
b415eb1d1d new from christos 1994-10-24 17:37:34 +00:00
cgd
74d7436a91 pay a small amount of lip service to the new syscall args mechanism.
In reality, none of these will compile.
1994-10-20 04:47:31 +00:00
mycroft
9db57a0aa0 Fix typo. 1994-08-17 11:03:07 +00:00
mycroft
da534b691a Reran makesyscalls.sh. 1994-08-15 23:49:28 +00:00
mycroft
e8b01ef8dc Add missing line. 1994-08-15 23:48:41 +00:00
mycroft
2b2c64b4e2 Need prototype of exec_svr4_elf_makecmds(). 1994-08-15 22:54:51 +00:00
mycroft
a82f727857 Clean up deleted files. 1994-08-15 22:47:27 +00:00
mycroft
ea999cdda2 Rename this for consistency. 1994-08-15 22:47:24 +00:00
mycroft
e2122143e9 Don't reread the blasted header. 1994-08-15 22:47:00 +00:00
mycroft
b0d890f90a EMUL_IBCS2 --> EMUL_IBCS2_ELF 1994-08-15 22:03:12 +00:00
cgd
19f726e77f fix a botch, and gen syscall files 1994-06-30 17:00:13 +00:00
cgd
bc9970144d fix up for new ID format, and consistency 1994-06-30 16:42:47 +00:00
cgd
cf92afd66e New RCS ID's, take two. they're more aesthecially pleasant, and use 'NetBSD' 1994-06-29 06:29:24 +00:00
deraadt
932345acae post 4.4-lite update 1994-06-24 07:30:17 +00:00
deraadt
95c2509dcd maxfdescs -> maxfiles 1994-05-24 03:27:13 +00:00
cgd
8ecf3dc2cc this file came from sun_misc.c 1994-05-22 10:46:33 +00:00
deraadt
a0ca154be4 prelim svr4 stuff from <christos@deshaw.com> 1994-05-22 10:04:26 +00:00