eeh
a72ee87980
Add support for 64-bit SVR4 (Solaris 8) binaries.
2001-02-21 23:53:00 +00:00
jdolecek
522f569810
make some more constant arrays 'const'
2001-02-21 21:39:52 +00:00
eeh
82deda03bf
Fixup compile problems.
2001-02-19 19:49:35 +00:00
eeh
800c3c476d
Use svr4_ttold.c since it has no LP64 issues.
2001-02-19 15:48:59 +00:00
mrg
bc003b5676
use svr4_32 ttold ioctl types.
2001-02-18 00:27:20 +00:00
eeh
8a4a682091
Support flexible process address space limits and bump kernel version number.
2001-02-14 18:21:42 +00:00
manu
ad16681a92
Clarified comments about the LINUX_SCERR_SIGN macro
2001-02-12 21:25:08 +00:00
fvdl
6b7a7448f5
Cast 32bit sunos_nfs_arg member to (char *)(long) to avoid warning
...
after sunos.h change (cast is safe; a SunOS binary will pas a 32 bit
pointer).
2001-02-12 19:49:20 +00:00
manu
16bc5b4004
Moved the fix for negative errno returned to userland on the PowerPC to a
...
more machine independent fashion
2001-02-11 20:24:49 +00:00
eeh
fb46d1eed4
Export bits needed by COMPAT_SVR4_32.
2001-02-11 01:16:42 +00:00
eeh
c2a7dae9d2
Fix getuid() and getgid() to work like the Solaris ones.
2001-02-11 01:14:25 +00:00
eeh
7fd4c88055
Fix getuid() and getgid() calls to return both e[ug]id and r[ug]id.
2001-02-11 01:13:01 +00:00
eeh
82ca5fba5b
Fixes to get dynamic binaries working.
2001-02-11 01:10:24 +00:00
eeh
a562e38910
Don't play fast and loose with pointers.
2001-02-11 00:00:29 +00:00
mrg
da9e4bd3a1
split up netbsd32_netbsd.c into 9 new files, leaving only those syscalls that
...
have no special interpretations besides simple syscall args conversion.
2001-02-08 13:19:33 +00:00
mrg
477f3d1140
header is struct netbsd32_exec
2001-02-08 12:32:41 +00:00
mrg
e927957b42
move the static inline conversion functions into a header file so other
...
files can see these. note a bunch of functions that should be moved
into their own files.
2001-02-07 15:22:39 +00:00
mrg
7217f71af3
compat_12_netbsd32_{,fl}stat12() were not copyout()ing the converted result.
2001-02-07 13:15:54 +00:00
mrg
c1b372c5ca
fix the glaring errors in compat_13_netbsd32_sigaltstack13
2001-02-07 13:14:07 +00:00
mrg
7a908a5f44
compat_sunos needs netbsd32_compat_09.c
2001-02-07 13:13:01 +00:00
mrg
098da9d296
use the standard alt check for creat.
2001-02-07 01:34:21 +00:00
eeh
4380259bc7
Specify a process' address space limits for uvmspace_exec().
2001-02-06 17:01:51 +00:00
eeh
967cc758a6
Add 32-bit svr4 emulation (for 64-bit machines).
2001-02-06 16:37:56 +00:00
mrg
d0f57eaf28
regen
2001-02-06 15:42:34 +00:00
mrg
bb4dfb96a8
oops, use netbsd32_select().
2001-02-06 15:41:53 +00:00
mrg
79c2fcd3b2
add from NetBSD Id.
2001-02-06 15:39:38 +00:00
mrg
5cd04bbafa
use struct sunos32_dirent. now getwd() works.
2001-02-06 13:13:42 +00:00
mrg
04534d365c
stat/lstat must use netbsd32_stat43 not stat43.
2001-02-06 10:32:34 +00:00
manu
82b165a23b
Modified a cast so that it builds again
2001-02-05 19:44:32 +00:00
mrg
8507daffe2
regen
2001-02-05 12:48:33 +00:00
mrg
f973f47b9c
s/sunos_sendsig/sunos32_sendsig/
2001-02-05 12:48:13 +00:00
mrg
2bdf90f148
use sunos32_sys_sigreturn
2001-02-05 12:46:19 +00:00
chs
09cb38f22b
expose the definitions of MIN() and MAX() in sys/param.h to the kernel
...
and use those in favor of a dozen copies scattered around the source tree.
2001-02-05 10:42:40 +00:00
mrg
8e76e697d7
fix the glaring errors in emulations for osendmsg, orecvmsg, osigvec and osigstack.
2001-02-05 06:32:55 +00:00
mrg
973fe837ab
s/long/netbsd32_long/ in various places. call netbsd32_fcntl, not sys_fcntl.
2001-02-05 06:28:55 +00:00
mrg
07df067e6c
make sunos32_sys_stime() & sunos32_sys_sigvec() work.
2001-02-05 06:27:57 +00:00
itojun
30b4221720
make it compile on alpha. cast pointer to u_long, not int
2001-02-05 04:33:41 +00:00
jmc
ece49e13a9
Back out last change. m68k.h is now in cpu.h (which got updated in between
...
my noticing this problem here on a sun3).
2001-02-04 23:53:31 +00:00
christos
ff4eeac9d3
cosmetic fixes.
2001-02-04 22:59:26 +00:00
mrg
2343525d2b
we don't #include ../sunos/sunos_ioctl.c anymore...sigh
2001-02-04 15:38:17 +00:00
manu
0bf34ec725
Fixed a bug in Linux/powerpc ktrace support (it's still broken, anyway)
2001-02-04 14:24:38 +00:00
mrg
9e0d8392a4
clean up sunos32_sys_mmap(), modelling it more like netbsd32_mmap()
2001-02-04 11:06:14 +00:00
jmc
5a272e431a
Add m68k/m68k.h to pickup fputype definitions.
2001-02-04 10:16:43 +00:00
mrg
b4e92dfd81
regen
2001-02-04 09:48:43 +00:00
mrg
b352fc1de2
s/long/netbsd32_long/ in sunos32_sys_mmap(). noted by chuq.
2001-02-04 09:47:22 +00:00
mrg
32fdb6e321
change_utimes32() was copyin()ing a struct timeval, not netbsd32_timeval.
...
general clean up.
2001-02-04 09:00:14 +00:00
mrg
a531aa1597
emulate kern.boottime. now 32-bit w(1) works properly.
2001-02-04 07:08:51 +00:00
mrg
2aa001b546
make sysctl vm.loadavg work.
2001-02-04 06:35:07 +00:00
mrg
bd15b74ffc
add missing !LKM check, noted by <tih@kpnQwest.no>
2001-02-03 22:20:02 +00:00
ross
69e20722b9
Emulate LINUX_TCFLSH with our TIOCFLUSH. Do some CSE.
2001-02-03 19:01:29 +00:00
mrg
ef777aa80b
sync a comment from sys_execve().
...
make netbsd32_recvfrom() work.
2001-02-03 12:46:55 +00:00
mrg
dabf2a8634
s/sizeof(struct exec)/sizeof(struct netbsd32_exec)/ when calculating file offsets. now sunos32 nmagic/omagic work.
2001-02-03 12:45:44 +00:00
fvdl
92bf89da0b
Oops, remove debugging printf.
2001-02-03 01:23:08 +00:00
fvdl
3d66a69335
For the read subchannel ioctl, don't mix up the data and address formats,
...
and always set the track to 0, like Linux does.
2001-02-03 01:17:38 +00:00
jdolecek
c48d420625
emul_find(): actually, the emulation root vnode dance has to be done for
...
CHECK_ALT_SYMLINK() same way as for CHECK_ALT_EXISTS()
This fixes lossage reported on current-users and kern/12019 by Ross Harvey.
2001-02-02 21:17:45 +00:00
mrg
0b2b6b074d
add netbsd32 & sunos32 to the (commented) SUBDIR line.
2001-02-02 13:08:04 +00:00
mrg
eefaef162b
properly implement compat_43_netbsd32_stat43, compat_43_netbsd32_lstat43
...
and compat_43_netbsd32_fstat43. now 32-bit ls(1) works. so does static
sunos `/sbin/sh' on sparc64.
2001-02-02 13:06:48 +00:00
mrg
87cc07b7c9
implement netbsd32_lchflags & netbsd32_utrace
2001-02-02 13:05:18 +00:00
mrg
674f1689f6
regen
2001-02-02 13:03:39 +00:00
mrg
b0f29c9c95
add lchflags, issetugid, utrace, reserves for [gs]etcontext, and sched/SA.
2001-02-02 13:01:44 +00:00
mrg
2110531265
implement stat & fstat properly.
2001-02-02 13:00:29 +00:00
mrg
bdec681975
sunos_ioctl.c is included by sunos32_ioctl.c. include the sunos32 &
...
netbsd32 headers if we are in sunos32 mode.
2001-02-02 12:59:43 +00:00
mrg
2f62d51a64
generate.
2001-02-02 07:29:42 +00:00
mrg
3fbaadb80d
initial support for sunos binaries running on a 64 bit sparc64 kernel.
...
some programs work, many do not yet.
2001-02-02 07:28:54 +00:00
mrg
b67bcac710
don't build these files if we're doing compat_netbsd32 as well.
...
a different set are required.
2001-02-02 07:12:27 +00:00
mrg
157a31d7a1
make this useful when compiled on sparc64: two members in sunos_nfs_args
...
become typedefs.
2001-02-02 07:11:09 +00:00
mrg
e4c34bc9e5
de-static netbsd32_exec_aout_prep_[zno]magic().
...
de-static netbsd32_from_stat43().
move the guts of netbsd32_execve() into netbsd32_execve2().
all of are for the forthcoming sunos32 compat mode (for sparc64).
2001-02-02 07:08:17 +00:00
thorpej
95a72e42de
egen; getpid(2) is MP-safe.
2001-01-27 08:02:10 +00:00
thorpej
00d798f276
getpid(2) is MP-safe.
2001-01-27 07:59:58 +00:00
thorpej
b54650a0bc
Regen; getpid(2) is MP-safe.
2001-01-27 07:58:37 +00:00
thorpej
e00fb66e89
getpid(2) is MP-safe.
2001-01-27 07:58:22 +00:00
thorpej
cf30c31b4d
Regen; getpid(2) is MP-safe.
2001-01-27 07:56:54 +00:00
thorpej
bca5b90ff2
getpid(2) is MP-safe.
2001-01-27 07:56:30 +00:00
thorpej
e385ddef5e
Regen; getpid(2) is MP-safe.
2001-01-27 07:55:44 +00:00
thorpej
f979b01e55
getpid(2) is MP-safe.
2001-01-27 07:55:23 +00:00
thorpej
c1bdc2ed00
Regen; getpid(2) is MP-safe.
2001-01-27 07:54:43 +00:00
thorpej
3853970b15
getpid(2) is MP-safe.
2001-01-27 07:54:24 +00:00
thorpej
3c55fd337f
Regen; getpid(2) is MP-safe.
2001-01-27 07:53:27 +00:00
thorpej
f3e8131498
getpid(2) is MP-safe.
2001-01-27 07:53:10 +00:00
thorpej
987590c661
Regen; getpid(2) is MP-safe.
2001-01-27 07:52:20 +00:00
thorpej
4f58e50fa7
getpid(2) is MP-safe.
2001-01-27 07:51:22 +00:00
thorpej
c69905cee8
Regen; getpid(2) is MP-safe.
2001-01-27 07:50:34 +00:00
thorpej
ac878f7a8c
getpid(2) is MP-safe.
2001-01-27 07:50:11 +00:00
thorpej
1b6a66420e
Regen; add sy_flags.
2001-01-27 07:23:06 +00:00
manu
de8918d969
Moved include <sys/ioctl.h> so that we can build without WSCONS enabled.
2001-01-26 19:41:52 +00:00
manu
86651a757f
Fixed wrong signal handler argument setup. The emulated sigcontext still has some problems.
2001-01-25 19:36:53 +00:00
jdolecek
1b91de887e
use CHECK_ALT_SYMLINK() for lstat(2)
...
don't call stackgap_init() for pwrite(2) and pread(2), it's not necessary
2001-01-22 21:31:37 +00:00
jdolecek
13ca559d39
Use CHECK_ALT_SYMLINK() instead CHECK_ALT_EXISTS() where appropriate.
...
This addresses kern/11757.
2001-01-22 20:08:03 +00:00
jdolecek
2fcd02eea0
Introduce CHECK_ALT_SYMLINK() - this checks for alternative location without
...
following links, hence is usable for checking of presence of a symlink.
Also slighly cleanup EXISTS and CREAT cases - use symbolic constants
instead of 0/1.
This is needed for emulation of readlink(2), lchown(2) and similar.
Addresses kern/11757.
2001-01-22 19:50:56 +00:00
manu
9c111b5a93
Fixed wrong open() Linux flags definition (octal instead of hexadecimal)
2001-01-21 22:19:26 +00:00
manu
167ec91e4b
Fix the "created from" field of files generated from syscalls.master (this
...
master file did not have a RCS Id at generation time, hence the problem)
2001-01-20 19:03:01 +00:00
manu
0d6749fdd9
Fixed wrong ioctl definitions that caused Linux ioctl TCGETS and many other to
...
fail
2001-01-20 18:59:55 +00:00
manu
fe95c9c3de
Moved architecure dependent part of struct linux_termio to architecture
...
dependent header files.
2001-01-20 18:56:41 +00:00
manu
94785018b1
Fixed a typo
2001-01-20 10:36:05 +00:00
manu
d932075a0e
Fixed a typo (two instructions dupliated at the end of code that were not reached)
2001-01-19 12:49:22 +00:00
manu
d5329fdce7
Cosmetic fix to move powerpc from "guesses" to "know values"
2001-01-19 12:35:47 +00:00
manu
e20b81421d
Added Linux errno mapping for powerpc
2001-01-19 12:27:13 +00:00
manu
3c98a504b9
Added previously created files for powerpc Linux compatibility to the kernel
...
config system
2001-01-19 01:51:16 +00:00
manu
083ffa3b67
Added support for powerpc Linux compatibility
2001-01-19 01:44:46 +00:00
manu
ac10cf6946
Added a linux_atexit_signature to match Linux statically linked ELF binaries. It
...
searches for a __libc_atexit ELF section, which is specific to Linux
2001-01-19 01:43:31 +00:00
manu
cac0b39302
Added Linux compatibility support for powerpc ports
2001-01-19 01:40:38 +00:00
manu
5472427809
Added powerpc specific code for Linux compatibility on powerpc ports
2001-01-19 01:36:47 +00:00
manu
3ec1257260
Added various header files for initial Linux compatibility on powerpc ports
2001-01-19 01:31:23 +00:00
jdolecek
34c8ae80da
constify
2001-01-18 20:28:15 +00:00
jdolecek
e912e655e1
kill local declaration of native_to_linux_errno[], one in common/linux_errno.h suffices
2001-01-18 18:41:20 +00:00
tv
e58532a4bf
No-op commit to force update to a non-"-kk" revision.
2001-01-18 17:47:58 +00:00
fvdl
6784825249
EINVAL -> ENOTTY
2001-01-18 13:56:32 +00:00
thorpej
009d2d725c
Grok __HAVE_MINIMAL_EMUL and __HAVE_SYSCALL_INTERN.
2001-01-15 21:33:52 +00:00
oki
880b841888
Add support to mmap .bss section.
...
Use vmcmd_map_pagedvn if possible.
2001-01-15 17:05:32 +00:00
fvdl
07ca2a03bf
Correct copyright year.
2001-01-10 02:33:47 +00:00
fvdl
8c4bd70cda
Add linux_blkio.c
2001-01-10 02:29:29 +00:00
fvdl
d772be168f
Declare linux_ioctl_blkio and call it from the main routine.
2001-01-10 02:28:38 +00:00
fvdl
da9e8a988d
Add some BLK* ioctl calls. Currently only the easy and useful ones
...
are implemented.
2001-01-10 02:28:01 +00:00
fvdl
c99aee0084
Add emulation of KIOCSOUND.
2001-01-09 13:01:03 +00:00
simonb
f514e805ed
Move prototypes for mips_user_cachectl() and mips_user_cacheflush()
...
to <mips/cachectl.h>.
2001-01-07 04:13:16 +00:00
fvdl
3950869204
Set Linux version to 2.0.38 for now, until the clone + "real time signal"
...
problems are fixed.
2001-01-05 15:31:15 +00:00
fvdl
bcac62574c
Implement KDGETMODE ioctl.
2000-12-29 22:06:58 +00:00
fvdl
2d53941bd4
Hardcode what the linux uname() calls return (Linux 2.2.5 is the current
...
value). A few major applications check for this (like VMware), and
there is no other way to trick them. Needs a more generic solution
eventually.
2000-12-29 21:07:16 +00:00
fvdl
1b9256990d
Regen.
2000-12-29 20:11:52 +00:00
fvdl
17f991c744
Don't pass through link(2) directly, as we need to do altpath checks.
2000-12-29 20:11:32 +00:00
fvdl
1575b3e35a
Regen.
2000-12-29 20:10:46 +00:00
fvdl
cc449a70ed
Don't pass through link(2) directly, as we need to do altpath checks.
2000-12-29 20:10:17 +00:00
fvdl
e8e363d309
Regen.
2000-12-29 20:09:57 +00:00
fvdl
54450b21c0
Don't pass through link(2) directly, as we need to do altpath checks.
2000-12-29 20:09:39 +00:00
fvdl
f90b2fc517
Avoid sign extension problem in offset.
2000-12-29 20:08:54 +00:00
fvdl
77765cf28f
Do alternate path checks for link(2).
2000-12-29 20:08:31 +00:00
fvdl
6f552a029f
Allow the EJUSTRETURN hack for PTIOCLINUX-passed through ioctl calls.
2000-12-29 20:07:53 +00:00
fvdl
b930296d07
Under Linux it's possible to return values through the ioctl system
...
call directly (i.e. not a reference argument, but a direct return
value). So far I have only seen this with binaries that talk
to their own device modules, using non-standard ioctl calls.
Hence, allow for a pass-through ioctl call using PTIOCLINUX to
return EJUSTRETURN, signalling that the return value is in
the 'data' field of the structure, which can then be put in 'retval'.
2000-12-29 20:07:25 +00:00
jdolecek
1e46d6c702
use NetBSD utrace(2) facilities for FreeBSD utrace(2) emulation;
...
use id 'FreeBSD utrace'
2000-12-28 11:18:01 +00:00
sommerfeld
5217f6335b
Let COMPAT_LINUX build with DEBUG
2000-12-27 23:47:58 +00:00
fvdl
7fbbc11d9c
Regen.
2000-12-27 22:04:35 +00:00
fvdl
7cd004ead8
Add all uid and gid calls, and do the right thing for the older 16 bit
...
ones.
2000-12-27 22:04:05 +00:00
fvdl
41e840d9c7
Regen.
2000-12-27 22:03:10 +00:00
fvdl
11156e7e47
Add all uid and gid calls, and do the right thing for the older 16 bit
...
ones.
2000-12-27 22:02:41 +00:00
fvdl
62af6738b1
Use CHECK_ALT_* for chown and lchown, missed in my previous commit.
...
Get *id16 calls right; most can be passed through directly, but
some need the 16->32 check for -1 values.
2000-12-27 22:01:42 +00:00
jdolecek
c6a69abc26
adapt to recent changes of signal structures
2000-12-27 21:58:52 +00:00
itohy
811fede455
Regen.
2000-12-26 01:57:57 +00:00
itohy
4aee4579ba
Declare linux_sys_setgid16() (NOARGS -> STD).
...
Change syscall #182 from linux_sys_lchown() to linux_sys_lchown16().
2000-12-26 01:57:10 +00:00
fvdl
e60e785474
Don't do the syscall with modified ioctl command if we've successfully
...
done a 'passthrough' ioctl.
2000-12-22 23:41:16 +00:00
jdolecek
e9e91a0fb5
split off thread specific stuff from struct sigacts to struct sigctx, leaving
...
only signal handler array sharable between threads
move other random signal stuff from struct proc to struct sigctx
This addresses kern/10981 by Matthew Orgass.
2000-12-22 22:58:52 +00:00
fvdl
1a09a359eb
Add SIOCGIFBR and SIOCSIFBR (more for reference than anything, currently).
2000-12-22 11:24:43 +00:00
thorpej
7027166972
Regen.
2000-12-21 20:42:42 +00:00
thorpej
c0b556f767
Make an Alpha kernel with COMPAT_LINUX compile again.
2000-12-21 20:42:15 +00:00
thorpej
f7a4dd48fd
Only include the 16-bit uid/gid stuff if on i386 or m68k. This is a
...
little ugly, but hey, so is Linux.
2000-12-21 20:19:22 +00:00
thorpej
e57273c82e
Only include the 16-bit chown/fchown/lchown stuff if on i386 or m68k.
...
This is a little ugly, but hey, so is Linux.
2000-12-21 20:15:53 +00:00
jdolecek
0d8b0305c5
don't define SYSVMSG if it's already defined
2000-12-21 19:30:26 +00:00
fvdl
b542c20c5b
Fix yet another typo.
2000-12-21 13:37:02 +00:00
fvdl
b76b718303
Fix another pasto.
2000-12-19 22:24:03 +00:00
jdolecek
2db538c869
separate the freebsd syscall code similarily to other emulations
2000-12-18 20:38:27 +00:00
fvdl
b7ffc98bf8
Fix pasto in previous.
2000-12-18 16:27:20 +00:00
mrg
272c549ab2
copy exec_aout.c:exec_aout_setup_stack to netbsd32_exec_aout_setup_stack,
...
but use USRSTACK32 not USRSTACK, so that we get 32-bit stack addresses.
now 32 bit a.out binaries work on sparc64.
2000-12-18 14:50:04 +00:00
fvdl
3259cebc4c
For unknown ioctls, pass them through to a device using PTIOCLINUX,
...
so that it may deal with them if it knows them (i.e. LKMs which
deal with Linux binaries).
2000-12-18 14:47:38 +00:00
fvdl
865e7b1375
Pass SIOC* calls that are done on devices (not sockets) through
...
without trying to interpret done, as is done on Linux. The device
will get them as PTIOCLINUX, with command and arg in the structure
passed in.
2000-12-18 14:46:36 +00:00
fvdl
8578d458e5
Define LINUX_SIOCDEVPRIVATE (currently not emulated for sockets).
2000-12-18 14:44:44 +00:00
fvdl
4d193ccde8
Add seperate entries for 16 bit uid/gid calls, so that border cases
...
like 0xffff can be handled better (not done yet).
2000-12-18 14:40:02 +00:00
fvdl
0bda0568cf
Regen.
2000-12-18 14:37:36 +00:00
fvdl
41623d32a2
Update for Linux calls with 32 bit uids/gids.
2000-12-18 14:37:17 +00:00
fvdl
8839755950
Update for 32 bit Linux uid/gid calls.
2000-12-18 14:36:35 +00:00
jdolecek
f66ae436e9
make compilable without KTRACE, too
2000-12-18 08:53:39 +00:00
jdolecek
29fd738f28
make LKM safe
2000-12-17 16:15:54 +00:00
jdolecek
cec7e3ceca
regen
2000-12-17 16:14:40 +00:00
jdolecek
b436e7bba3
add emulation of FreeBSD utrace(2)
2000-12-17 16:11:38 +00:00
jdolecek
df68499f38
make LKM safe
2000-12-17 15:55:47 +00:00
scw
7fb03460dc
Sprinkle some register prefixes in the asm() statements.
2000-12-16 22:59:32 +00:00
jdolecek
72014988d6
adapt to recent struct emul changes
2000-12-16 13:30:08 +00:00
mycroft
b29180b2ff
Tighten up the ELF signature checks, and actually look for the ABI tag added
...
in newer glibc versions.
2000-12-15 06:14:21 +00:00
simonb
6ec588df0d
Correctly order the contents of the emul_hpux struct so this compiles.
2000-12-14 22:55:36 +00:00
jdolecek
5f0114a837
regen
2000-12-14 20:39:36 +00:00
jdolecek
14b2acc126
add sysinfo()
2000-12-14 20:37:57 +00:00
mycroft
bdf4af93a3
Some namespace hiding I forgot before.
2000-12-14 18:10:35 +00:00
mycroft
ccaa88d980
Declare linux_syscall_intern().
2000-12-14 18:10:14 +00:00
mycroft
b8d0fc574a
Regen.
2000-12-14 18:08:09 +00:00
mycroft
52e8ecc51c
Round up sysent[] table size.
2000-12-14 18:07:54 +00:00
augustss
8dab2a36e1
Regen.
2000-12-13 21:42:21 +00:00
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