diff options
author | jake <jake@FreeBSD.org> | 2002-09-01 21:41:24 +0000 |
---|---|---|
committer | jake <jake@FreeBSD.org> | 2002-09-01 21:41:24 +0000 |
commit | ce650f8c333de3130e1beb1e3caa213af385e085 (patch) | |
tree | d075a9970497c96d66b9507960a9e101b7f40fb7 /sys/compat | |
parent | ae4b45674cf31dbfe2ca333e6d3b5faf3f214ff4 (diff) | |
download | FreeBSD-src-ce650f8c333de3130e1beb1e3caa213af385e085.zip FreeBSD-src-ce650f8c333de3130e1beb1e3caa213af385e085.tar.gz |
Added fields for VM_MIN_ADDRESS, PS_STRINGS and stack protections to
sysentvec. Initialized all fields of all sysentvecs, which will allow
them to be used instead of constants in more places. Provided stack
fixup routines for emulations that previously used the default.
Diffstat (limited to 'sys/compat')
-rw-r--r-- | sys/compat/ia32/ia32_sysvec.c | 11 | ||||
-rw-r--r-- | sys/compat/pecoff/imgact_pecoff.c | 16 | ||||
-rw-r--r-- | sys/compat/svr4/svr4_sysvec.c | 12 |
3 files changed, 29 insertions, 10 deletions
diff --git a/sys/compat/ia32/ia32_sysvec.c b/sys/compat/ia32/ia32_sysvec.c index 06e6505..18f4ee2 100644 --- a/sys/compat/ia32/ia32_sysvec.c +++ b/sys/compat/ia32/ia32_sysvec.c @@ -93,22 +93,25 @@ struct sysentvec ia32_freebsd_sysvec = { ia32_sysent, 0, 0, + NULL, 0, - 0, - 0, - 0, + NULL, + NULL, elf32_freebsd_fixup, sendsig, ia32_sigcode, &ia32_szsigcode, - 0, + NULL, "FreeBSD ELF", elf32_coredump, NULL, MINSIGSTKSZ, 4096, + 0, IA32_USRSTACK, IA32_USRSTACK, + IA32_PS_STRINGS, + VM_PROT_ALL, ia32_copyout_strings, ia32_setregs }; diff --git a/sys/compat/pecoff/imgact_pecoff.c b/sys/compat/pecoff/imgact_pecoff.c index da9a76a..9b09632 100644 --- a/sys/compat/pecoff/imgact_pecoff.c +++ b/sys/compat/pecoff/imgact_pecoff.c @@ -95,10 +95,10 @@ static struct sysentvec pecoff_sysvec = { sysent, 0, 0, + NULL, 0, - 0, - 0, - 0, + NULL, + NULL, pecoff_fixup, sendsig, sigcode, @@ -107,7 +107,15 @@ static struct sysentvec pecoff_sysvec = { "FreeBSD PECoff", pecoff_coredump, NULL, - MINSIGSTKSZ + MINSIGSTKSZ, + PAGE_SIZE, + VM_MIN_ADDRESS, + VM_MAXUSER_ADDRESS, + USRSTACK, + PS_STRINGS, + VM_PROT_ALL, + exec_copyout_strings, + exec_setregs }; diff --git a/sys/compat/svr4/svr4_sysvec.c b/sys/compat/svr4/svr4_sysvec.c index c7d67ff..1d4ad6e 100644 --- a/sys/compat/svr4/svr4_sysvec.c +++ b/sys/compat/svr4/svr4_sysvec.c @@ -172,7 +172,7 @@ struct sysentvec svr4_sysvec = { bsd_to_svr4_sig, ELAST, /* ELAST */ bsd_to_svr4_errno, - 0, + NULL, svr4_fixup, svr4_sendsig, svr4_sigcode, @@ -181,7 +181,15 @@ struct sysentvec svr4_sysvec = { "SVR4", elf32_coredump, NULL, - SVR4_MINSIGSTKSZ + SVR4_MINSIGSTKSZ, + PAGE_SIZE, + VM_MIN_ADDRESS, + VM_MAXUSER_ADDRESS, + USRSTACK, + PS_STRINGS, + VM_PROT_ALL, + exec_copyout_strings, + exec_setregs }; Elf32_Brandinfo svr4_brand = { |