Commit Graph

676 Commits

Author SHA1 Message Date
mycroft 365a977533 Catch up with setre[ug]id() changes. 1996-06-23 11:13:32 +00:00
mycroft f01b3b1837 Regen. 1996-06-23 11:12:22 +00:00
mycroft 3bbb29fe03 Catch up with setre[ug]id() changes. 1996-06-23 11:10:01 +00:00
cgd d73abf41aa avoid unnecessary checks of m_get/MGET/etc.'s return values. When
they're called with M_WAIT, they are defined to never return NULL.
1996-06-14 22:21:12 +00:00
christos d83602c110 Simplify and add comments. 1996-06-13 19:27:01 +00:00
christos 4d9a6e0930 - Pass the Elf32_Ehdr in the linux probe function, and use it!
Since linux binaries are (mostly) always compiled with gcc, look for
the gcc signature in the .comment section header: "\0 GCC: (GNU) ".
I've changed the probe order in kern/exec_elf.c to probe for linux ELF
binaries first and fall back to SVR4 binaries. This makes statically
linked binaries work for both linux and svr4. Note that gcc-compiled
svr4 binaries, still contain the operating system signature first and
then the GCC signature, so there is no conflict. Yes this is a hack.
1996-06-13 18:42:01 +00:00
christos 5d27db0882 Pass the elf exec header in the probe function. 1996-06-13 18:33:54 +00:00
jonathan 592ca35c51 Fix typos in SUSP and DSUSP mapping when setting Ultrix posixmode tty
attributes  (was 112 and 113,  should be 12 and 13).
1996-06-13 18:13:34 +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
pk ec587073d7 I_SIGSET => I_SETSIG (pointed out by Greg Earle). 1996-05-26 23:57:10 +00:00
mrg 663808dfc5 use ' not " when passing variables to a sub-make. pr#1199/pr#1296 1996-05-20 17:23:25 +00:00
mark 847038524a cast -1 to a char for comparision with tc->t_brkc so that this test
will work with signed and unsigned chars.
1996-05-20 14:29:17 +00:00
fvdl 484a6c9fe4 Regen. 1996-05-20 02:00:53 +00:00
fvdl 69761c2aa8 Update list of Linux syscalls and implement the ones that are likely to be
used and doable.
1996-05-20 01:59:09 +00:00
veego d5db0e464d Put this into an #ifdef COMPAT_OLDTTY.
look in <sys/tty.h> for more infomations about that.
1996-05-18 22:17:49 +00:00
christos 4f3ac596f5 - rename cpu_exec_aout_prep_oldzmagic to exec_aout_prep_oldzmagic 1996-05-18 16:02:08 +00:00
christos f09036d6ec - Moving cpu_exec_aout_prep_oldzmagic -> exec_aout_prep_oldzmagic.
This is used by the i386, hp300 and mac68k ports.
- Added exec_aout_prep_oldomagic, and exec_aout_prep_oldnmagic
  These are just copies of the respective prep functions from
  kern_exec.c with text address starting at 0. Maybe a better fix
  is to pass the starting address as a third argument so we don't
  duplicate code, but this could be the next pass since the functions
  are used in many places. These functions are used for BSDI binaries.
1996-05-18 15:52:19 +00:00
christos 268e6edf33 Support bsdi getkerninfo(SYSINFO,...) call so that the BSDI netscape
calling uname(3) can find out what os it is running on. Tested only with a
bsdi binary that calls getkerninfo directly. Funny thing is that I ran
the same binary on a bsdi machine, and they fill in fewer fields in the
emulation than we do; maybe I went overboard :-)
1996-05-18 01:24:34 +00:00
christos 6ba5bd8c10 Fix OGETUDATA for Solaris-2.3 (From Greg Hudson) 1996-05-13 16:57:50 +00:00
mycroft 540f9550c0 Make `make depend' work for libraries. 1996-05-11 16:11:30 +00:00
mrg b961912b8a sort this. 1996-05-05 17:14:25 +00:00
veego 203fc82ae2 Added a missing Makefile and run it
Moved the prototyp for sunos_sendsig in an #ifndef sparc
1996-05-05 16:07:42 +00:00
briggs 8b8a6fcf2f Put prototype for sunos_sendsig() in sunos.h as suggested by veego. 1996-05-05 12:01:45 +00:00
christos 5503f7b749 Prototype and gcc -Wall cleanups 1996-05-03 19:41:56 +00:00
christos 8fd0f1f8b3 Add missing prototypes. 1996-05-03 19:26:28 +00:00
christos 029f35aa10 Avoid overruns when copying the interface name. 1996-05-03 17:09:15 +00:00
christos a9972e1bbb - RCSid police
- gcc -Wall fixes
1996-05-03 17:05:16 +00:00
christos 744868c6a0 gcc -Wall fixes. 1996-05-03 17:03:09 +00:00
christos ffd5576439 remove include of <sys/cpu.h> 1996-04-22 01:44:31 +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
mycroft 7a8c8f8a5c Turn off the alignment check flag when entering a signal handler. 1996-04-18 08:36:20 +00:00
mycroft ad790f628e Turn off the trace flag when delivering a signal. 1996-04-12 08:44:35 +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
mycroft 48643c6605 Export [gs]et_vflags(), and always use them when saving/restoring registers
in VM86 mode.
Allow changing of *all* PSL bits in VM86 mode; some applications don't work
right otherwise, and all the nasty bits are virtualized anyway.
Make sure PSL_VIF, PSL_VIP, and PSL_VM don't show up in the user's view of
the PSL.
1996-04-11 07:47:33 +00:00
jonathan b72f41635e Remove gcc -Wall lint from ultrix emulation.-
Mostly adding explicit != comparison to "if (error = copyin/out( ... ))".
Fix comment glitch in ultrix_fs.c
1996-04-07 17:23:04 +00:00
jonathan 938d7138be Add vax setregs() support for exec'ing vax ultrix a.out binaries. 1996-04-07 16:38:03 +00:00
christos 151fa70f78 Prototyping changes. 1996-04-05 00:01:10 +00:00
christos d7130e8385 - Prototyping changes
- Fix bug that gcc -Wall found in linux_sys_getpgid()
1996-04-04 23:56:01 +00:00
christos 363777341c - Add missing prototypes
- Fix bugs with reversed arguments that prototyping discovered
1996-04-04 23:51:36 +00:00
mycroft 46c087980e Add explicit return types. 1996-04-03 08:55:20 +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 fc8b478bdd Bring prototypes into scope and fix compiler warnings. 1996-03-14 19:33:44 +00:00
christos 6cbf515e30 Fix compiler warnings 1996-03-14 19:31:45 +00:00
christos 79344ff371 - add svr4_conf.h
- add window size ioctls
1996-03-14 19:29:11 +00:00
mycroft 8dbac07c10 Add a message to help us debug Linux compat. 1996-03-08 06:00:53 +00:00
mycroft 6bc0baa1ce Separate ioctl emulation by group. Add (minimal) audio emulation. 1996-03-08 04:55:59 +00:00
pk 8c485c3690 syscalls.master changed. 1996-02-28 16:06:02 +00:00
pk 636580a34f Insert sunos_sys_fcntl(). 1996-02-28 16:03:54 +00:00
gwr b1305e88db dir => dirent 1996-02-28 01:41:25 +00:00
mycroft 5cdb5e8ebe Map SIOCGIFFLAGS and SIOCGIFADDR (et al). 1996-02-27 08:18:16 +00:00
mycroft 48ec0383a3 Use OSIOCGIFCONF in previous. 1996-02-27 07:25:34 +00:00
mycroft 4b2741c436 Map SIOCGIFCONF. 1996-02-27 05:51:05 +00:00
pk 95d7594df0 If NFS `rsize' is specified, set `readdirsize' too. 1996-02-25 13:27:01 +00:00
cgd c9a23604b9 fourth argument to kern_sysctl() must be a size_t *. simply passing a pointer
to SCARG(uap, len) won't do, because that'd be an int *.  copy the value
into a size_t, and pass pointer to that.
1996-02-21 00:10:59 +00:00
pk 9bfd34f41e Adapt to NFSv3. 1996-02-19 15:41:38 +00:00
pk 9e2cbae0ea Adapt compat NFS mount code to NFSv3. 1996-02-18 14:46:25 +00:00
jtk e8aa4c9806 fix stray MOUNT_UFS -> MOUNT_FFS 1996-02-17 23:08:36 +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 647dfa216e Don't declare MSG_COMPAT in two places.
More prototype fixes
1996-02-10 00:12:44 +00:00
christos 1b17f25866 fix prototype warnings 1996-02-09 23:12:14 +00:00
christos a18394e8c3 Extracted vm compat functions from vm and added them here where they belong. 1996-02-05 01:58:28 +00:00
christos ec3976413e kern_sysctl was missing process argument. Elimited -Wall warnings from
the files that were affected
1996-02-04 02:02:14 +00:00
christos 065bada41f so_pcb -> so_internal 1996-02-04 02:01:07 +00:00
mycroft f96fc7f12e Simplify, and add support for passing CPPFLAGS. 1996-02-02 20:34:38 +00:00
christos 32a57f01bc Renamed compat_tty.c to tty_43.c and updated with the newest copy from
kern/tty_compat.c
1996-02-02 18:47:50 +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
mycroft 88e512b693 LOCORE -> _LOCORE 1996-02-01 22:28: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
jonathan aadc0baf87 Add '/emul/ultrix' pathname processing to Ultrix emulation, and move
Ultrix syscalls that require that processing out of ultrix_misc.c
to ultrix_pathname.c.
1996-01-07 13:38:49 +00:00
mycroft 6761817ae6 Correct name of sysi86 function. 1996-01-07 06:09:43 +00:00
thorpej d9bce7422e Move the obviously machine-dependent HP-UX compat code to hpux_machdep.{c,h}.
A fair bit of this, the m68k core dump and exec goo, can probably be
made into a generic m68k hpux module, eventually.

More to be placed in hpux_machdep.c - keep your eyes peeled...
1996-01-06 12:44:06 +00:00
scottb 382f551ca1 Added support for sysi86 and eaccess syscalls 1996-01-06 03:23:46 +00:00
pk 3a7b2129f3 Implement vhangup(); more or less as suggested in PR#1560 (matthew green).
I'm vrele'ing s_ttyvp here too, so sys_exit() won't have to go over it
again.
1996-01-05 16:53:14 +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
jonathan 36817f8d02 Rewrite (a copy of) the emul-sunos termio/termios emulation code to
emulate Ultrix termio/termios instead. Ultrix termio c_cc has separate
VMIM/VTIME attributes, and the Ultrix termios c_cc is a strict
superset of Ultrix termio c_cc. The termios-only c_cc indices are
all changed, relative to SunOS.
1996-01-04 19:03:32 +00:00
jonathan ac604db4dd Add sigcode and esigcode to emul_ultrix, so that signal trampoline
code is set up for emul_ultrix processes.
1996-01-03 21:07:33 +00:00
jonathan c02f0114ff Ultrix-compatible termios struct and ioctl() definitions. 1995-12-27 19:57:25 +00:00
mycroft 3872a4ba45 Take a stab at implementing TCXONC and TCFLSH. 1995-12-26 17:56:36 +00:00
jonathan a44b6c74de Add emulation of ultrix mount(2). Sufficient to NFS-mount filesystems
using a NetBSD kernel in an ultrix root filesystem.

Move wait emulation to the old (v7) wait syscall number, as that's
what the  Ultrix ufs_mount binary uses.
1995-12-26 10:06:14 +00:00
jonathan e9411cae99 Fix ultrix_sys_select() entry. 1995-12-26 04:46:08 +00:00
jonathan 6a363a1101 Add emulation of Ultrix select: before calling native sys_select(),
limit the number of FDs to select on to the maximum supported by NetBSD --
which is as many FDs as the emul_ultrix process can have open, anyway.

Add emulation of Ultrix getmnt(2) in ultrix_fs.c

Add partial emulation of Ultrix tty ioctl()s in ultrix_ioctl.c, derived
from compat/sunos/sunos_ioctl.c.  Ultrix libc's ``isatty()'' now works
in compat_emul processes.
1995-12-26 04:44:37 +00:00
jonathan 0a1e90f900 Add emulation of Ultrix select: before calling native sys_select(),
limit the number of FDs to select on to the maximum supported by NetBSD --
which is as many FDs as the emul_ultrix process can have open, anyway.

Add emulation of Ultrix getmnt(2) in ultrix_fs.c

Add partial emulation of Ultrix tty ioctl()s in ultrix_ioctl.c, derived
from compat/sunos/sunos_ioctl.c.  Ultrix libc's ``isatty()'' now works
in compat_emul processes.
1995-12-26 04:22:30 +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
fvdl 4ed045ab27 syscalls.master changed 1995-12-18 14:35:43 +00:00
fvdl 2df1785997 msync, readv and writev were recently added to the Linux kernel; add them
to the emulation as well.
1995-12-18 14:35:08 +00:00
ghudson 76063d53bb Reverse pk's changes from 1.57; the faked cookies are not valid,
and are no longer necessary now that NFS provides cookies.
1995-12-14 18:44:44 +00:00
thorpej 3bf97cdb69 Fix a type-size glitch caught by gcc 2.7.2. 1995-12-11 16:32:46 +00:00
mycroft 018fa71167 Eliminate bogus casts. 1995-12-09 04:05:52 +00:00
mycroft 812fdf80d2 Reran makesyscalls.sh. 1995-12-09 04:04:45 +00:00
mycroft 9df1f90849 We don't need a private version of fork() here any more. 1995-12-09 04:01:42 +00:00
thorpej d7cef923ac Centralize the HP-UX file flags translation stuff. 1995-12-08 07:54:43 +00:00
thorpej b0ca4831ea Check in two changes I apparently overlooked the last time. "oops" 1995-12-08 07:45:31 +00:00
jtc 0cd793449e merge in changes from 1.1 release branch 1995-11-30 00:56:23 +00:00
thorpej 0d02785d6c Re-ran makesyscalls.sh; syscalls.conf and syscalls.master chagned. 1995-11-28 08:43:58 +00:00
thorpej 0ec193c9b2 Get COMPAT_HPUX partially working on the hp300. Notable improvements:
* It compiles (and links).
	* Make use of "/emul/hpux" where applicable.
	* Untangle a bit, pulling some funtions from the monolithic
	  hpux_compat.c into hpux_file.c, hpux_exec.c, etc.
	* Fix a couple of bugs.
Yet to do:
	* Move hp300-specific functions into hp300/hp300/hpux_machdep.c.
	* Make everything work properly (you laugh...)

These changes are sufficient to run some simple HP-UX 9.x executables,
including ls(1) (which will read password and group information from the
YP server correctly, albeit slowly), a simple "hello world", uname(1),
and a few other odds and ends.  Dynamically linked executables work, and
demand-paging _seems_ to work properly.  Major problems:
	* socket and/or signal handling appears to need some work yet.
	* 99% sure I didn't do exactly the right thing adjusting for the
	  fact that "kstack" is gone now.
	* ktrace(1)'ing some executables (HP-UX telnet(1) is what I tried)
	  causes the HP-UX executable to dump core with a SIGSEGV for an
	  as of yet unknown reason.

This is mostly meant as a checkpoint/snapshot, to make it easier for others
to track progress on this code, and hack on it themselves.  It's certainly
better off now than before.
1995-11-28 08:39:45 +00:00
thorpej b2f1fb085b Fix transposed copyin() args, from Niklas Hallqvist <niklas@appli.se>. 1995-11-16 18:42:05 +00:00
cgd bd4a0a45ea note that COMPAT_OSF1 requires ECOFF, in a comment. 1995-11-15 05:42:17 +00:00
gwr 883be4be3a ufs ==> ffs 1995-11-07 22:27:21 +00:00
mycroft d67fb08153 Make sure we free the pathname buffer in all error cases. 1995-10-22 08:20:44 +00:00
cgd d71e8d0d69 set, don't add to, CFLAGS from COMPATCFLAGS 1995-10-20 00:34:15 +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
pk b60d6eae12 Gets NFS-mounted /emul/sunos going again by faking readdir cookies if
not supported by VOP_READDIR().
1995-10-11 12:50:23 +00:00
mycroft 28484180c7 Fix minor oversight. 1995-10-10 18:27:25 +00:00
mycroft 5d9ff18d18 Switch to user code and data selectors in the GDT while handling signals. 1995-10-10 04:54:18 +00:00
mycroft 25f53a986f Add USERMODE() and KERNELMODE() macros, and use them. 1995-10-10 04:45:03 +00:00
mycroft d279b4198a Convert VMIN and VTIME. 1995-10-10 02:35:16 +00:00
mycroft e6d9bc8787 Fix typo. 1995-10-10 01:34:37 +00:00
mycroft a91100d6af Oops; remove something. 1995-10-10 01:20:55 +00:00
mycroft e1ac4c6362 Output of makesyscalls.sh. 1995-10-10 01:20:11 +00:00
mycroft 63bb46e733 FreeBSD binary compatibility module, from Noriyuki Soda. 1995-10-10 01:19:24 +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 0fff06cb86 Remove struct sunos_dirent from here. 1995-10-09 16:54:48 +00:00
mycroft 652c9eff74 Use cookies for directory offset, mostly from Greg Hudson. 1995-10-09 11:23:57 +00:00
fvdl 82079ba5b3 Work around calling the NetBSD fcntl(F_{G,S}ETOWN) for now; it is too
restrictive to implement the Linux equivalent (and perhaps too restrictive
overall).
1995-10-08 22:53:43 +00:00
fvdl 7292169d66 Avoid unnecessary copyin() of shmid_ds struct for shmctl(IPC_RMID) 1995-10-08 22:49:29 +00:00
fvdl 81d650570f Implement the KDGKBMODE ioctl for Linux (possible with pcvt 3.32). 1995-10-08 22:45:20 +00:00
mycroft 319813467d Prefix names of system call implementation functions with `sys_'. 1995-10-07 06:53:04 +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 4a15671a68 Fix the declaration of compat_43_wait() (int * -> register_t *), pointed
out by Chris Demetriou.
1995-09-29 05:18:41 +00:00
thorpej 236ee835ed Add common file lists, similar to what the other emulation modules use. 1995-09-20 00:15:18 +00:00
thorpej 7d7396c414 Make system calls conform to a standard prototype and bring those
prototypes into scope.
1995-09-19 22:53:47 +00:00
thorpej d4153ed512 makesyscalls.sh changed 1995-09-19 22:50:38 +00:00
thorpej 78f7651c91 Make system calls conform to a standard prototype and bring those
prototypes into scope.
1995-09-19 22:49:22 +00:00
thorpej 9c2a912abe makesyscalls.sh changed 1995-09-19 22:46:47 +00:00
thorpej e4747eef00 Obsolete; use the one in /sys/kern 1995-09-19 22:46:04 +00:00
thorpej 19ccdce168 Make system calls conform to a standard prototype and bring those
prototypes into scope.
1995-09-19 22:44:25 +00:00
thorpej 134a6981d1 makesyscalls.sh changed 1995-09-19 22:42:48 +00:00
thorpej cd414f7dca Make system calls conform to a standard prototype and bring those
prototypes into scope.
1995-09-19 22:42:02 +00:00
thorpej 6d91dd5b49 makesyscalls.sh changed. 1995-09-19 22:38:15 +00:00
thorpej e1da0d5390 Make system calls conform to a standard prototype and bring those
prototypes into scope.
1995-09-19 22:37:27 +00:00
thorpej 4d68188f17 makesyscalls.sh changed. 1995-09-19 22:24:14 +00:00
thorpej b5a39bba19 Make system calls conform to a standard prototype and bring those
prototypes into scope.

Fix a couple of bugs revealed during the prototyping process.
1995-09-19 22:19:01 +00:00
thorpej d95577b1ce makesyscalls.sh changed. 1995-09-19 22:13:07 +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
thorpej 7160dfc805 Make system calls conform to a standard prototype and bring those
prototypes into scope.
1995-09-19 21:57:36 +00:00
fvdl 788a8655bc Update offset elsewhere in linux_getdents(); still emulate a bug in
Linux, but avoid endless loops.
1995-09-13 21:51:14 +00:00
fvdl 43279db68d Fix PR #1445 (incorrect ifdef/else/endif), from Bill Sommerfeld via
John Kohl.
1995-09-08 07:57:15 +00:00
fvdl df2f99818a Get notion of VT number right. 1995-09-07 21:55:43 +00:00
fvdl 698e606f39 syscalls.master changed 1995-09-07 21:49:52 +00:00
fvdl a396a097b7 Fix some bugs & typing problems. 1995-09-07 21:48:59 +00:00
mycroft 29053c58b2 SA_ONSTACK --> SS_ONSTACK 1995-09-01 20:05:59 +00:00
fvdl 10101d52ba Only define some vars (one of pcvt-specific type) when pcvt is configured.
Fixes PR #1424 (from Mike Long)
1995-08-31 09:33:10 +00:00
fvdl 0324e91dae Remove VT-switch disabling hack now that pcvt handles this. 1995-08-30 00:32:51 +00:00
fvdl 9ca2821d22 A couple of definitions added for previous changes. 1995-08-27 20:57:18 +00:00
fvdl 040bcc367d Add some yucky code to emulate Linux VTs well enough to make svgalib
stuff work reasonably well.
1995-08-27 20:56:38 +00:00
fvdl a7459f5321 syscalls.master changed 1995-08-27 20:53:31 +00:00
fvdl d308963c5d Add a hook for MD ioctl calls, plus a couple of more changes to make
svgalib binaries work on the i386
1995-08-27 20:51:48 +00:00
fvdl 72e901b9ff syscalls.master changed 1995-08-23 20:19:15 +00:00
fvdl 28d9d64235 Emulate some syscalls that appear in Linux 1.3: a select() with normal args,
getdents() and flock().
1995-08-23 20:17:28 +00:00
fvdl 7cd62a508c Check for status NULL argument in wait4 and waitpid. From PR #1392
by Thomas EberHardt.
1995-08-21 23:15:51 +00:00
mycroft 7f01d32fb3 syscalls.master changed. 1995-08-21 03:42:35 +00:00
mycroft 9a0cd13442 Implement the old and older uname(2) calls. 1995-08-21 03:42:09 +00:00
cgd ce48e523d6 kill some redundant (and harmful) static definitions of functions 1995-08-19 04:04:50 +00:00
mycroft 760379d766 Update for signal handling changes. 1995-08-17 03:07:47 +00:00
mycroft 2c03307168 If updating the timeval would make it negative, zero it instead. 1995-08-16 04:50:17 +00:00
mycroft dc41c4257e Allow bogus timevals, per Linux. 1995-08-16 04:29:49 +00:00
mycroft 54c148fda5 Convert 230400 baud. 1995-08-16 04:14:51 +00:00
fvdl 02b3c95be6 Implement the rest of the sysv ipc calls ({sem,msg}*()) 1995-08-15 21:14:32 +00:00
gwr 3d4ed382f6 Catch up with renamed SA_DISABLE flag and update
sunos_sigvec to allow the new SA_RESETHAND flag.
1995-08-15 17:28:02 +00:00
mycroft c331c7be82 Rename ss_flags bits. 1995-08-15 16:52:30 +00:00
mycroft e9d68a777e Export bsd_to_linux_sig[], and use it. 1995-08-14 02:58:29 +00:00
mycroft d2c9e4f1c8 Export bsd_to_ibcs2_sig[], and use it. 1995-08-14 02:26:01 +00:00
mycroft 10c06fe363 Prototype some functions. 1995-08-14 02:22:20 +00:00
mycroft 9b899c17cd Export bsd_to_linux_sig[], and use it. 1995-08-14 02:19:08 +00:00
mycroft 1e69f23205 Export bsd_to_svr4_sig[], and use it. 1995-08-14 02:07:57 +00:00
mycroft baaaba9bc5 Rearrange #includes. 1995-08-14 01:38:24 +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 a6bb142d21 Various clean up and bug fixes. Make this look like the SVR4 and Linux
versions.
1995-08-14 00:44:12 +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
mycroft fef558efaa Convert SA_NOMASK and SA_ONESHOT.
Clean up this code a bit.
1995-08-13 22:55:28 +00:00
mycroft ad35618e1e Linux doesn't allow select(2) to be restarted. 1995-08-13 17:51:40 +00:00
mycroft 6f7dc7fd4e Make this compile if one of SYSV{SEM,SHM,MSG} is not defined. 1995-08-10 04:08:57 +00:00
fvdl 64b54f62f4 syscalls.master changed 1995-07-24 06:39:38 +00:00
fvdl 83ed983d47 mkdir() has 2 arguments.. fixes PR 1248 (from Brad Spencer) 1995-07-24 06:35:28 +00:00
christos 3a1e063118 Make the macro botch fix more palatable. 1995-07-05 17:08:54 +00:00
pk cde4f269ae Start using sunos_sigvec(). 1995-07-05 13:14:09 +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
fvdl 059661a991 Fix totally bogus implementation of a few fcntl() calls. I think I'll go
live on a deserted island now..
1995-07-03 21:33:59 +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
cgd 26340c4a2e sync with my current sources. WAY out of date. 1995-06-28 04:41:30 +00:00
cgd 65c4cf2b9a light cleanup, adjustments for the Alpha 1995-06-28 03:00:20 +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 c35bc29cc9 Fix PR1160... (bug with the new compat_util prefix) 1995-06-26 19:27:17 +00:00
christos 2a17942096 Add the ability to override COMPATREL and COMPATDST similar to libkern 1995-06-26 03:27:13 +00:00
briggs a734709115 Oops... NOARGS for compat_43_sigvec. 1995-06-25 14:58:17 +00:00
briggs e1731cd1bf syscalls.master changed. 1995-06-25 14:18:56 +00:00
briggs de17480671 sigvec -> compat_43_sigvec. 1995-06-25 14:18:35 +00:00
briggs 09e0072b98 Add sunos_emul_path (/emul/sunos). I don't know if this is correct, but
this will at least aid the compilation step and is similar to the
others.
1995-06-25 14:15:08 +00:00
briggs c9917aa539 * Don't include sys/exec.h explicitly--it's not protected against multiple
inclusions and compat_util.h now includes it.
* Declare struct emul *e=p->p_emul in a couple of places so we can use
  STACKGAPBASE macro (should this macro be modified to take a struct
  emul * or struct proc * parameter?).
* Declare extern struct emul emul_sunos for sunos_sigvec's comparison.
1995-06-25 13:11:44 +00:00
christos fc741845e6 Stackgap_init() now takes an p->p_emul argument. 1995-06-24 20:36:28 +00:00
christos d0169ce44a Use compat_util.[ch] 1995-06-24 20:29:17 +00:00
christos 5ad8a15866 Syscalls.master was changed 1995-06-24 20:26:41 +00:00
christos 57b6b2745e Use compat_util.[ch] 1995-06-24 20:22:33 +00:00
christos 6b95b513b0 Use compat_util.[ch]. 1995-06-24 20:20:04 +00:00
christos 3a3aa6407e Use compat_util.[ch] 1995-06-24 20:18:53 +00:00
christos 8207f8e49e Use the new compat_util.h 1995-06-24 20:17:54 +00:00
christos dcb2a50b2b - Extracted all compat routines from the kern directory and moved here.
- Created compat_util.c and compat_util.h to be used by the compatibility
  modules, so they don't duplicate the same code.
- Added prototypes to the stackgap allocation routines.
1995-06-24 20:15:55 +00:00
fvdl cbcf8eee8a Check for invalid filedescriptors in getmsg() and putmsg(). 1995-06-24 18:47:08 +00:00
fvdl 1634acc3e4 Include file change. 1995-06-22 21:35:42 +00:00
fvdl c4aaa6000c * Changed to use generic ELF code from kern/exec_elf.c (which was taken
from the svr4 exec code plus the linux compat mods)
* Include file change
* Add multicast sockopts (from John Brezak)
1995-06-22 21:34:27 +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
cgd 8f62c773e8 don't assume the f_fsnamelen is nul-truncated or longer than MFSNAMELEN 1995-06-18 14:45:14 +00:00
pk 1e070197f4 Go with the flow; use `/emul/sunos' pseudo-root (from Matthew Green).
Note: sunos_stat() and sunos_lstat() were added too.
1995-06-11 22:33:50 +00:00
fvdl 769310e81d Linux select() returns the amount of time left before a timeout would have
occured in the timeval structure. Emulate this behavior. Reported by
Theo de Raadt.
1995-06-11 21:51:38 +00:00
fvdl fb777788b1 Don't forget to acknowledge that all the ELF stuff was taken from
Christos' svr4 code.
1995-06-11 15:15:09 +00:00
fvdl 8bf395c808 Make this link when SYSVXXXX is not enabled too. 1995-06-11 15:07:55 +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
fvdl bfc9b29ab2 Remade these after syscalls.master had changed. 1995-06-11 14:57:56 +00:00
fvdl fc7cfb5f0b * Make Linux ELF binaries work. Lots of code duplication, but it will have to do
for now.
* Add a sanity check in linux_uselib
1995-06-11 14:56:47 +00:00
mycroft abd4cc9991 Remove /dev/zero special case. It's done in mmap(). 1995-06-10 22:45:15 +00:00