Commit Graph

287 Commits

Author SHA1 Message Date
eeh
fc6c67ff5d Fixup big-endian syscall args. 1998-10-03 19:33:32 +00:00
christos
af5667d954 We have SA_NOCLDWAIT now, and for SA_SIGINFO, we ignore the bit, but we
always construct siginfo_t and pass it to the handler. So kill the printfs..
1998-10-02 11:54:16 +00:00
christos
4a904760a4 the pool boy forgot to convert this to use pool stuff. Goodbye long uptime! 1998-10-01 19:26:30 +00:00
mycroft
5978dc4801 Regen. 1998-09-12 00:10:33 +00:00
mycroft
a641f893ab Rename ___posix calls in the syscall list. 1998-09-12 00:10:06 +00:00
mycroft
f384c47bc7 Regen. 1998-09-11 23:13:32 +00:00
mycroft
fb526e055c Substantial signal handling changes:
* Increase the size of sigset_t to accomodate 128 signals -- adding new
  versions of sys_setprocmask(), sys_sigaction(), sys_sigpending() and
  sys_sigsuspend() to handle the changed arguments.
* Abstract the guts of sys_sigaltstack(), sys_setprocmask(), sys_sigaction(),
  sys_sigpending() and sys_sigsuspend() into separate functions, and call them
  from all the emulations rather than hard-coding everything.  (Avoids uses
  the stackgap crap for these system calls.)
* Add a new flag (p_checksig) to indicate that a process may have signals
  pending and userret() needs to do the full (slow) check.
* Eliminate SAS_ALTSTACK; it's exactly the inverse of SS_DISABLE.
* Correct emulation bugs with restoring SS_ONSTACK.
* Make the signal mask in the sigcontext always use the emulated mask format.
* Store signals internally in sigaction structures, rather than maintaining a
  bunch of little sigsets for each SA_* bit.
* Keep track of where we put the signal trampoline, rather than figuring it out
  in *_sendsig().
* Issue a warning when a non-emulated sigaction bit is observed.
* Add missing emulated signals, and a native SIGPWR (currently not used).
* Implement the `not reset when caught' semantics for relevant signals.

Note: Only code touched by the i386 port has been modified.  Other ports and
emulations need to be updated.
1998-09-11 12:50:05 +00:00
mycroft
11ac489856 Stylistic change. 1998-09-11 12:34:46 +00:00
rvb
26b955eec7 ufs_readdir no longer checks if vp->v_type != VDIR so
the individual emulated readdirs must check.
Since netbsd and freebsd return EINVAL for the error
and I don't know what the other platforms do, return
EINVAL for them too.
1998-09-08 20:02:51 +00:00
christos
8fb507a3b7 Assign copyright to TNF. 1998-09-05 14:50:25 +00:00
christos
e1f16dd0c9 Assign copyrights to TNF; tv has copyrights on the remaining files...
It would be nice if he changed them (hint, hint)
1998-09-04 19:54:37 +00:00
christos
667541561d Try to implement I_GETSIG to make netscape work again (untested) 1998-08-27 07:04:31 +00:00
eeh
a2dd74ed79 Merge paddr_t changes into the main branch. 1998-08-13 02:10:37 +00:00
perry
e1601dc2ca bzero->memset, bcopy->memcpy, bcmp->memcmp 1998-08-09 20:36:58 +00:00
kleink
af261318d9 Now that we have it, add a conversion for _PC_SYNC_IO. 1998-08-03 14:23:30 +00:00
thorpej
0e28b643e9 Use a pool for proc structures. 1998-08-02 04:41:32 +00:00
lukem
786b86d71b use AF_LOCAL instead of AF_UNIX 1998-07-18 05:04:35 +00:00
thorpej
469eb58301 Fix pread64/pwrite64 wrt. argument translation. 1998-07-02 02:20:21 +00:00
thorpej
dd0758a46a Oops, fix a couple of brain-o's. 1998-07-01 01:23:25 +00:00
thorpej
576184d528 Put pread64() and pwrite64() back in here, but just call the native
NetBSD system call with no argument translation.
1998-06-30 23:34:05 +00:00
thorpej
c21db87c09 Regen. 1998-06-30 23:32:07 +00:00
thorpej
641ea73301 Revert the last change; it had a side-effect that I didn't think about. 1998-06-30 23:31:28 +00:00
thorpej
f8fe385b78 Rewrite svr4_sys_pread() and svr4_sys_pwrite() in terms of the native
NetBSD pread(2) and pwrite(2).  These still require indirection because
the arguments need to be converted to the correct types.

Delete svr4_sys_pread64() and svr4_sys_pwrite64(), since the arguments
for these calls do not need conversion, and the syscall switch calls
the native NetBSD system calls directly.
1998-06-30 19:42:56 +00:00
thorpej
e05b7cc70b Regen: syscalls.master changed to reflect native pread/pwrite. 1998-06-30 19:40:55 +00:00
thorpej
cf54391ad7 Now that NetBSD has pread(2) and pwrite(2), we no longer need to indirect
through SVR4 emulation layers to handle SVR4's pread64(2) and pwrite64(2),
since NetBSD's arguments are the same as the SVR4 64-bit system call
arguments.
1998-06-30 19:40:13 +00:00
sommerfe
becaafeea0 defopt for options FIFO 1998-06-22 22:00:59 +00:00
scottb
8adcd13408 Fixed incorrect assumption that svr4_semctl is passed a 'union semun' pointer 1998-03-05 04:42:49 +00:00
fvdl
a377495cfb Only free cookiebuf when sure that the vop actually allocated it. 1998-03-03 13:44:48 +00:00
fvdl
e5bc90f40c Merge with Lite2 + local changes 1998-03-01 02:20:01 +00:00
thorpej
dc4fe3d32d Regen: makesyscalls.sh changed. 1998-02-19 03:34:15 +00:00
thorpej
2ea9f5648e regen; makesyscalls.sh changed 1998-02-19 00:45:36 +00:00
thorpej
054d3ec0b2 Change a comment to reflect new makesyscalls.sh behavior. 1998-02-19 00:45:12 +00:00
kleink
f1d879bb87 Regen: use POSIX semantics for chown()/fchown()/rename() syscalls, add lchown(). 1998-02-14 21:43:35 +00:00
kleink
b9233971cd * Use sys___posix_{chown,fchown}() insteade of sys_{chown,fchown}().
* Change reference from sys_posix_rename() to sys___posix_rename().
* Emulate lchown().
1998-02-14 21:40:54 +00:00
thorpej
5f8168f660 Use the sesssion's stored SID in getsid(). 1998-02-14 01:33:18 +00:00
kleink
552ec236a0 Map ENOMSG. 1998-02-10 14:37:38 +00:00
mrg
d90485202c - add defopt's for UVM, UVMHIST and PMAP_NEW.
- remove unnecessary UVMHIST_DECL's.
1998-02-10 14:08:44 +00:00
mikel
4de16acd9c update errno maps, we now have EIDRM 1998-02-06 08:26:02 +00:00
mrg
1a8c7604f4 initial import of the new virtual memory system, UVM, into -current.
UVM was written by chuck cranor <chuck@maria.wustl.edu>, with some
minor portions derived from the old Mach code.  i provided some help
getting swap and paging working, and other bug fixes/ideas.  chuck
silvers <chuq@chuq.com> also provided some other fixes.

this is the rest of the MI portion changes.

this will be KNF'd shortly.  :-)
1998-02-05 07:59:28 +00:00
christos
3c7ab5dc3a Regen. 1998-02-01 13:25:00 +00:00
christos
eff7649981 Enable nanosleep 1998-02-01 13:12:42 +00:00
mycroft
9dd67a9098 Prototype new functions. 1998-01-24 12:39:37 +00:00
mycroft
112a8edc95 Use svr4_setregs(). 1998-01-24 12:34:16 +00:00
mycroft
c9c365814e Regen. 1998-01-22 17:36:16 +00:00
mycroft
88ff8086d8 Nor COMPAT_09. 1998-01-22 17:36:01 +00:00
mycroft
91668a26c1 Regen. 1998-01-22 17:34:15 +00:00
mycroft
95745ffc95 This doesn't actually use COMPAT_10. 1998-01-22 17:33:49 +00:00
thorpej
80fff795f9 Regen. 1998-01-09 06:19:02 +00:00
thorpej
0068dec705 Regen: back out RCD ID related changes. 1998-01-08 00:27:16 +00:00
perry
36bd5a5407 regened with RCSIDs in place 1998-01-05 18:23:00 +00:00
mjacob
0e9ef018df more putz cleanup: I dunno if this works (fixing syntax, not checking semantics) 1997-12-01 06:04:23 +00:00
christos
669a5c22a2 Regen 1997-11-16 22:51:15 +00:00
christos
6a9178e444 From Todd Vierling:
- Fix memcntl()
- Fixed stat and mknod syscalls to properly disassemble and reassemble
  dev_t values to/from emulation dev_t's
- Added pty (ptmx) subsystem at svr4net minor number 10 -- /dev/ptmx
- Implemented fork1() as fork() (should change if and when threads get
  added to the system)
- fixed spellings in disclaimer in svr4_net.c; it looks like someone went
  and did a s/nd/st/g on the whole file... yuck
- changed ptmx device to also halt on ENXIO (for pty files that exist with
  no kernel pty to back them)
- fixed SVR4 setpgrp() to be a near equivalent to BSD setsid() (old
  emulation didn't create a new session)
1997-11-16 22:50:55 +00:00
pk
1abecf9a70 Deal with svr4_ulimit() return values in the same way as in
compat_43_sys_setrlimit(). (takes care of PR#4418)

Also in svr4_ulimit(): return EINVAL for unknown commands, instead of ENOSYS.
1997-11-03 22:03:31 +00:00
pk
78ccc57a52 Fix test for NULL arg in svr4_utime() (PR#4418). 1997-11-03 21:33:07 +00:00
christos
8158edb63d Regen 1997-10-28 19:02:52 +00:00
christos
b08c2743e7 Put a noop stub for sys_auditsys 1997-10-28 18:58:17 +00:00
christos
09d37c93a5 Implement F_REVOKE, F_FREESP and all the 64 bit calls. 1997-10-28 18:55:56 +00:00
kleink
043c84ea94 Addendum to last commit: don't clobber the read/write byte count when
seeking back to the original offset.
1997-10-28 12:06:56 +00:00
kleink
4174920943 Per X/Open CAE Specification, Issue 5, change the semantics of pread(),
pread64(), pwrite(), pwrite64():
* The `offset' argument specifies an absolute offset within the file.
* After performing the read resp. write operation, restore the original
  offset within the file.
Also, change the argument structure used by svr4_sys_prwite64() to
svr4_sys_pwrite64_args, instead of the 32-bit offset version.
1997-10-27 11:45:57 +00:00
fvdl
b2d2f560e8 Fix another eofflag interpretation mistake that I missed when fixing
them.
1997-10-26 11:13:46 +00:00
thorpej
14cd99880c Fix the shared library versioning snafu caused by the recent changes
to the stat(2) family and msync(2).  This uses a primitive function
versioning scheme.

This reverts the libc shared library major version from 13 to 12, and
adds a few new interfaces to bring us to libc version 12.20.

From Frank van der Linden <fvdl@NetBSD.ORG>.
1997-10-20 22:05:06 +00:00
christos
eb2b299151 Regen. 1997-10-19 18:45:46 +00:00
christos
423b2ff7b4 Make mman(2) functions args consistent (caddr_t -> void *) 1997-10-19 18:45:04 +00:00
mycroft
429b08a2b4 Use S_IS*(), not S_IF*. 1997-10-19 18:40:11 +00:00
fvdl
33074aa25a Eliminate compile warning because of mmap caddr_t -> void * change. 1997-10-19 00:16:08 +00:00
christos
dac5408a54 Regen. 1997-10-17 02:04:28 +00:00
christos
f8dee5bcb9 PR/4278: Chris Jones: Fix rlimit function prototypes 1997-10-17 02:03:17 +00:00
mycroft
91302e62ef Regen. 1997-10-16 03:36:14 +00:00
mycroft
68fb837229 Fix a typo inherited from kern/syscalls.master. 1997-10-15 17:18:17 +00:00
fvdl
d85f38cbec Fix braino in my interpretation of the eof flag to VOP_READDIR. 1997-10-10 22:16:04 +00:00
fvdl
d6e5e295fa Signal error when getting a 64 bit offset cookie that can't be stored
in 32 bits. Provide an error message to the user, and return EINVAL.
Also, pay attention to the EOF flag from VOP_READDIR. Correct a
misspell in a panic message.
1997-10-10 01:42:21 +00:00
mycroft
a6aa4731bc Fix errors left over from system call conversion. 1997-09-09 21:14:00 +00:00
bouyer
1cd83a5971 Fix "missing entries" bug when reading large directories: When reading a
directory and running out of space in the dest buffer, off should point to the
current entry (which was not saved) and not to the next.
I discovered this bug using linux and SunOS emulation over NFS, but seems to
affect other emulations as well.
1997-08-04 09:48:07 +00:00
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