augustss
b907acd3fd
Add sysinfo.
2000-12-13 21:41:46 +00:00
augustss
ccf2c891cc
Implement sysinfo.
2000-12-13 21:41:23 +00:00
itohy
3e9f9f8abf
sync with i386, so that exec_conf.c compiles again
2000-12-13 03:49:51 +00:00
mycroft
108d17eb16
Do the md_syscall, __HAVE_MINIMAL_EMUL and __HAVE_SYSCALL_INTERN thangs.
2000-12-13 03:16:36 +00:00
mycroft
165574c579
Regen.
2000-12-13 01:29:35 +00:00
mycroft
c87c56ee90
Round up sysent[] table size.
2000-12-13 01:29:16 +00:00
jdolecek
638d27777e
add linux_sys_truncate64()
2000-12-12 22:24:56 +00:00
jdolecek
e60b4a518d
regen
2000-12-12 22:23:47 +00:00
jdolecek
405a6ce62f
actually, we need to wrap sys_truncate() call so that the /emul/linux/...
...
path is tried first
fix ftruncate64 entry - first arg to ftruncate is int fd, not path
2000-12-12 22:23:02 +00:00
jdolecek
621dac5bc2
define struct linux_stat64 used by linux_sys_*stat64()
2000-12-12 19:07:59 +00:00
jdolecek
c3dd514d84
regen
2000-12-12 19:03:10 +00:00
jdolecek
daff00c255
add emulation of Linux truncate64(2), ftruncate64(2), *stat64(2)
2000-12-12 19:01:59 +00:00
jdolecek
f8d1770316
define EXEC_AOUT (if not defined) before including linux_syscallargs.h,
...
to get linux_sys_uselib() prototype
2000-12-12 17:52:56 +00:00
fvdl
0b7398458a
Allow for passing through of certain ranges of ioctl command values
...
directly to a device. The device has to be aware of how to handle
with these special ioctls. Useful for LKMs that deal with Linux
binaries.
2000-12-12 15:11:56 +00:00
mycroft
455360f941
Do the __HAVE_SYSCALL_INTERN and __HAVE_MINIMAL_EMUL dance.
2000-12-12 08:00:26 +00:00
mycroft
f495cd9dc6
Introduce 2 new flags in types.h:
...
* __HAVE_SYSCALL_INTERN. If this is defined, e_syscall is replaced by
e_syscall_intern, which is called at key places in the kernel. This can be
used to set a MD syscall handler pointer. This obsoletes and replaces the
*_HAS_SEPARATED_SYSCALL flags.
* __HAVE_MINIMAL_EMUL. If this is defined, certain (deprecated) elements in
struct emul are omitted.
2000-12-11 05:28:59 +00:00
mycroft
fef5184d84
Regen.
2000-12-11 04:56:01 +00:00
mycroft
fc774b14ce
getuid -> getuid_with_euid
...
getgid -> getgid_with_egid
2000-12-11 04:55:50 +00:00
mycroft
75fbdc005e
Nuke LINUX_MACHDEP_PASS_PPID.
2000-12-11 04:55:09 +00:00
mycroft
cfe0002fc5
Regen.
2000-12-11 04:54:29 +00:00
mycroft
6d0c28a87c
getpid -> getpid_with_ppid
2000-12-11 04:54:13 +00:00
mycroft
e99a608974
Regen.
2000-12-11 03:09:10 +00:00
mycroft
c0341b165d
Round up sysent table size.
2000-12-11 03:09:02 +00:00
mycroft
f0689d5505
Regen.
2000-12-11 03:07:06 +00:00
mycroft
23babc12e5
Round up sysent table size.
2000-12-11 03:06:49 +00:00
thorpej
a1479e118c
Fix previous:
...
- EBADF, not NULL when a file descriptor can't be found.
- Check FIF_WANTCLOSE properly.
2000-12-10 17:34:25 +00:00
fvdl
a499e56944
Add some ioctls for harddisk, floppy disk and console handling.
...
Implement a few extra cdrom ioctl calls.
Make sure to correctly use FILE_USE and FILE_UNUSE.
2000-12-10 14:12:16 +00:00
fvdl
e772d7a6d5
Add i386-specific code for a few ioctl calls.
2000-12-10 14:09:59 +00:00
fvdl
ec9b1e3f5e
The gist of the Linux _IOX definitions was the same for all platforms;
...
move it to the MI linux_ioctl.h and only leave the MD bits in the MD
header files.
Add defintions for linux_ioctl_hdio and linux_ioctl_fdio.
2000-12-10 14:08:48 +00:00
fvdl
8488f3e039
The gist of the Linux _IOX definitions was the same for all platforms;
...
move it to the MI linux_ioctl.h and only leave the MD bits in the MD
header files.
2000-12-10 14:07:22 +00:00
fvdl
f86f1f091f
Add linux_hdio.c and linux_fdio.c
2000-12-10 14:05:54 +00:00
christos
835b5d35c5
how many different prototypes does linux_syscall() need finally? sheesh!
2000-12-09 19:51:44 +00:00
jdolecek
87a6bee3a9
prototype ibcs2_syscall() in compat/ibcs2/ibcs2_exec.c
2000-12-09 12:45:44 +00:00
jdolecek
8f9b01eba1
prototype svr4_syscall() (only) in compat/svr4/svr4_exec.c
2000-12-09 12:44:26 +00:00
jdolecek
a6ca890142
always fill in e_syscall in respective emul_*; if the emulation doesn't
...
have it's own separated *_syscall() function, use syscall()
2000-12-09 12:38:23 +00:00
jdolecek
415500a28f
regen
2000-12-09 12:27:00 +00:00
jdolecek
c557c9f0f9
add more unimplemented syscalls to list
2000-12-09 12:23:35 +00:00
jdolecek
217ab37653
split ecoff specific code to separate file ultrix_exec_ecoff.c
2000-12-09 12:19:28 +00:00
mycroft
dd92250590
Regen.
2000-12-09 07:11:17 +00:00
mycroft
9b7a9b2897
Get rid of the damn EMUL_GET* flags.
2000-12-09 07:10:34 +00:00
mycroft
77b46f5749
Oops; missed a critical #include.
2000-12-09 06:25:03 +00:00
mycroft
95bdfed457
Add hook for a separate svr4_syscall().
2000-12-09 06:20:17 +00:00
mycroft
51e3b887d7
Regen.
2000-12-09 06:19:40 +00:00
mycroft
e2743f72a9
Round up the sysent table size.
2000-12-09 06:15:42 +00:00
mycroft
f348afacb9
Regen.
2000-12-09 05:37:01 +00:00
mycroft
d47448bce6
Add the %% separators.
2000-12-09 05:31:10 +00:00
mycroft
9682cf0b09
Add the %% separators.
2000-12-09 05:27:28 +00:00
jdolecek
cc5b7ecb22
put the ecoff specific code from osf1_exec.c to osf1_exec_ecoff.c
2000-12-08 21:39:30 +00:00
jdolecek
f4c6609be7
change emulation name from 'netbsd' to 'aoutm68k'
2000-12-08 20:07:43 +00:00
jdolecek
0576f87ad3
add infrastructure to load emulations and their executable support dynamically
...
via LKM
2000-12-08 19:42:11 +00:00
jdolecek
6f1bed130e
regen
2000-12-06 21:26:07 +00:00
jdolecek
79e6f66114
make LKM safe
2000-12-06 21:25:39 +00:00
jdolecek
3a7eb81dbe
make LKM safe (need to use if/endif, #if/#endif is filtered out by makesyscalls.sh)
2000-12-06 21:24:47 +00:00
jdolecek
eb248dea94
regen
2000-12-06 21:02:30 +00:00
jdolecek
6ddca63eb7
make LKM safe
2000-12-06 21:02:00 +00:00
sommerfeld
5348dfb6ac
Have recursive make invocations depend on the .MAKE pseudo-target so
...
make knows to handle them specially.
2000-12-05 17:01:19 +00:00
eeh
433c92930e
Fix uninitialized pointer bug.
2000-12-05 15:25:57 +00:00
fvdl
c3d820fa5d
Use a copied fktrace syscall arg structure with out 'const int' for the
...
filedescriptor to copy arguments, avoiding a warning. XXX
2000-12-03 14:48:29 +00:00
fvdl
5ce71a2aed
Include opt_* files to make sure prototypes are included.
2000-12-03 14:47:27 +00:00
fvdl
8537802e8d
Add systm.h to pull in copyout* prototypes.
2000-12-03 13:15:38 +00:00
scw
47a35be2c9
Initial cut of COMPAT_AOUT_M68K.
...
This gets most existing m68k a.out binaries working with m68k ELF
kernels.
There are still some remaining ABI issues to track down; most notably,
some ioctl(2) calls are affected by the change.
2000-12-02 20:40:03 +00:00
jdolecek
6f4041b981
regen after addition of linux_sys_swapoff()
2000-12-02 16:45:51 +00:00
jdolecek
1acf11b550
add emulation of linux swapoff(2)
2000-12-02 16:43:50 +00:00
jdolecek
65203b4ec6
if IBCS2_MACHDEP_HAS_SEPARATED_SYSCALL is defined, put ibcs2_syscall to
...
emul_ibcs2
define IBCS2_MACHDEP_HAS_SEPARATED_SYSCALL in i386 ibcs2_machdep.h
2000-12-02 16:09:44 +00:00
jdolecek
da1aefe9bf
if machdep define LINUX_MACHDEP_HAS_SEPARATED_SYSCALL is defined, put
...
linux_syscall() to emul_linux
define LINUX_MACHDEP_HAS_SEPARATED_SYSCALL for i386
2000-12-02 16:05:04 +00:00
mrg
f5a3788577
pull over lost fix from nebsd32_exec.c:
...
>revision 1.25
>date: 2000/12/01 08:59:02; author: mrg; state: Exp; lines: +2 -2
>in netbsd32_elf32_probe(), 'pos' is really a pointer to an Elf_Addr, not a
>vaddr_t. cast the pointer before dereferencing it to avoid the alignment
>fault that broke compat_netbsd32, cuz pos is defined like:
> Elf_Addr phdr = 0, pos = 0;
>in exec_elf32.c.
2000-12-02 04:08:35 +00:00
jdolecek
df127e0001
make netbsd32_copyargs() an inline
2000-12-01 22:05:18 +00:00
jdolecek
e53f148af5
put a.out/elf32 specific things in netbsd32_exec_{aout|elf32}.c
...
emul_netbsd32 was moved to netbsd32_netbsd.c
g/c netbsd32_exec.c now
2000-12-01 21:51:08 +00:00
jdolecek
758d9354ff
always define COMPAT_OLDSOCK (this tracks rev.1.55 of kern/uipc_syscalls.c)
...
move definition of emul_netbsd32 from netbsd32_exec.c here
fix couple of compile nits I encountered while compiling this with
sparc cross-compiler
2000-12-01 21:48:24 +00:00
jdolecek
445c16b759
implement linux_sys_setdomainname()/linux_sys_swapon(), using code
...
from compat_09_sys_setdomainname()/compat_12_sys_swapon().
2000-12-01 21:14:42 +00:00
jdolecek
31cf7b914c
regen
2000-12-01 21:11:02 +00:00
jdolecek
058a5a87bd
replace compat_09_sys_setdomainname() with linux_sys_setdomainname(),
...
compat_12_sys_swapon() with linux_sys_swapon() - this is to drop dependency
on COMPAT_12/COMPAT_09
2000-12-01 21:02:55 +00:00
jdolecek
b490742cef
if LINUX_MACHDEP_PASS_PPID_AND_EUID is defined for given arch, add
...
flags EMUL_GETPID_PASS_PPID|EMUL_GETID_PASS_EID to emul_linux
define this option for alpha
2000-12-01 20:31:13 +00:00
jdolecek
5c032b6899
define EXEC_AOUT before including freebsd_exec.h, so that the a.out stuff
...
gets defined
2000-12-01 19:35:39 +00:00
jdolecek
8e91e3f0bd
make LKM safe
2000-12-01 19:26:57 +00:00
jdolecek
2ff42428df
put elf32 specific code from svr4_exec.c to separate file svr4_exec_elf32.c
2000-12-01 19:26:26 +00:00
jdolecek
dc7c57f299
make LKM safe
2000-12-01 19:25:10 +00:00
jdolecek
36e6e46132
put aout specific sunos code from sunos_exec.c to separate file
...
sunos_exec_aout.c
make LKM safe
add EMUL_GETPID_PASS_PPID|EMUL_GETID_PASS_EID to emul_sunos flags
2000-12-01 19:24:36 +00:00
jdolecek
43ac5f6b81
put aout specific sunos code from sunos_exec.c to separate file
...
sunos_exec_aout.c
2000-12-01 19:23:10 +00:00
jdolecek
7f86cf1b2c
make LKM safe
2000-12-01 19:20:56 +00:00
jdolecek
e0c059250f
emul_osf1: add flags EMUL_GETPID_PASS_PPID|EMUL_GETID_PASS_EID
2000-12-01 19:20:22 +00:00
jdolecek
70569d32c8
prototype netbsd32_stat12_to_netbsd32()
2000-12-01 19:18:46 +00:00
jdolecek
f1badb80a7
put executable format specific code from ibcs2_exec.c to separate
...
files ibcs2_exec_coff.c, ibcs2_exec_elf32.c, ibcs2_exec_xout.c as
appropriate
2000-12-01 19:17:41 +00:00
jdolecek
e826fe9d58
split aout-specific code to sepatate file hpux_exec_aout.c
2000-12-01 19:15:12 +00:00
jdolecek
b4a8a5fbce
split aout and elf32 specific code to separate files
...
emul_freebsd: add emul flags
EMUL_HAS_SYS___syscall|EMUL_GETPID_PASS_PPID|EMUL_GETID_PASS_EID
2000-12-01 19:13:47 +00:00
jdolecek
caae796b52
add emul flag EMUL_HAS_SYS___syscall
2000-12-01 19:12:11 +00:00
jdolecek
011229ffcb
make LKM safe
2000-12-01 18:16:54 +00:00
jdolecek
23a13e04be
LKMify, g/c no more needed extern declarations, make hpuxtobsdioctl() static
2000-12-01 18:05:53 +00:00
jdolecek
31a6e57929
LKMify
2000-12-01 18:03:54 +00:00
jdolecek
798f64c85b
put linux_sys_uselib() to separate file linux_uselib.c
2000-12-01 13:49:35 +00:00
jdolecek
81f0543ba6
fix the emulation path
2000-12-01 13:21:37 +00:00
jdolecek
28c12f0c39
provide extern const struct emul emul_osf1
2000-12-01 12:51:03 +00:00
jdolecek
01040d97a2
add e_path (emulation path) to struct emul, which replaces emulation-specific
...
*_emul_path variables
change macros CHECK_ALT_{CREAT|EXIST} to use that, 'root' doesn't need
to be passed explicitly any more and *_CHECK_ALT_{CREAT|EXIST} are removed
change explicit emul_find() calls in probe functions to get the emulation
path from the checked exec switch entry's emulation
remove no longer needed header files
add e_flags and e_syscall to struct emul; these are unsed and empty for now
2000-12-01 12:28:30 +00:00
mrg
7af8b6448c
in netbsd32_elf32_probe(), 'pos' is really a pointer to an Elf_Addr, not a
...
vaddr_t. cast the pointer before dereferencing it to avoid the alignment
fault that broke compat_netbsd32, cuz pos is defined like:
Elf_Addr phdr = 0, pos = 0;
in exec_elf32.c.
2000-12-01 08:59:02 +00:00
jdolecek
50d91bb255
fix typo - it should be compat_09_netbsd32_uname, not compat_09_netbsd32_ouname
2000-11-30 19:19:43 +00:00
jdolecek
e8fcbc2bf1
always include netbsd32_ntp_adjtime(), LKMify
2000-11-30 19:17:56 +00:00
jdolecek
cad0013a61
only define SYSVMSG, SYSVSEM, SYSVSHM if it's not defined already
2000-11-30 19:14:35 +00:00
jdolecek
6626f506b3
LKMify
2000-11-30 19:05:26 +00:00
jdolecek
6b1add13dc
sync netbsd32_execve() with sys_execve() - this involves
...
VMCMD_RELATIVE support, couple of debugging printfs and addition of
doexechooks() call
also fix one FREE() which should be free()
2000-11-30 12:54:38 +00:00
jdolecek
73f3cd8c7e
LKMify
2000-11-29 21:51:49 +00:00