mirror of
https://git.hardenedbsd.org/hardenedbsd/HardenedBSD.git
synced 2024-12-04 07:01:52 +01:00
HBSD: Revert "Add AT_USRSTACK{BASE, LIM} AT vectors, and ELF_BSDF_VMNOOVERCOMMIT flag"
This reverts commit 05c462f16a
.
Signed-off-by: Shawn Webb <shawn.webb@hardenedbsd.org>
This commit is contained in:
parent
8a3d8c5bed
commit
8f4aa92b9d
@ -1439,15 +1439,11 @@ __elfN(freebsd_copyout_auxargs)(struct image_params *imgp, uintptr_t base)
|
||||
{
|
||||
Elf_Auxargs *args = (Elf_Auxargs *)imgp->auxargs;
|
||||
Elf_Auxinfo *argarray, *pos;
|
||||
struct vmspace *vmspace;
|
||||
rlim_t stacksz;
|
||||
int error, bsdflags, oc;
|
||||
int error;
|
||||
|
||||
argarray = pos = malloc(AT_COUNT * sizeof(*pos), M_TEMP,
|
||||
M_WAITOK | M_ZERO);
|
||||
|
||||
vmspace = imgp->proc->p_vmspace;
|
||||
|
||||
if (args->execfd != -1)
|
||||
AUXARGS_ENTRY(pos, AT_EXECFD, args->execfd);
|
||||
AUXARGS_ENTRY(pos, AT_PHDR, args->phdr);
|
||||
@ -1482,12 +1478,8 @@ __elfN(freebsd_copyout_auxargs)(struct image_params *imgp, uintptr_t base)
|
||||
AUXARGS_ENTRY(pos, AT_HWCAP, *imgp->sysent->sv_hwcap);
|
||||
if (imgp->sysent->sv_hwcap2 != NULL)
|
||||
AUXARGS_ENTRY(pos, AT_HWCAP2, *imgp->sysent->sv_hwcap2);
|
||||
bsdflags = 0;
|
||||
bsdflags |= __elfN(sigfastblock) ? ELF_BSDF_SIGFASTBLK : 0;
|
||||
oc = atomic_load_int(&vm_overcommit);
|
||||
bsdflags |= (oc & (SWAP_RESERVE_FORCE_ON | SWAP_RESERVE_RLIMIT_ON)) !=
|
||||
0 ? ELF_BSDF_VMNOOVERCOMMIT : 0;
|
||||
AUXARGS_ENTRY(pos, AT_BSDFLAGS, bsdflags);
|
||||
AUXARGS_ENTRY(pos, AT_BSDFLAGS, __elfN(sigfastblock) ?
|
||||
ELF_BSDF_SIGFASTBLK : 0);
|
||||
AUXARGS_ENTRY(pos, AT_ARGC, imgp->args->argc);
|
||||
AUXARGS_ENTRY_PTR(pos, AT_ARGV, imgp->argv);
|
||||
AUXARGS_ENTRY(pos, AT_ENVC, imgp->args->envc);
|
||||
@ -1497,9 +1489,6 @@ __elfN(freebsd_copyout_auxargs)(struct image_params *imgp, uintptr_t base)
|
||||
AUXARGS_ENTRY(pos, AT_FXRNG, imgp->sysent->sv_fxrng_gen_base);
|
||||
if (imgp->sysent->sv_vdso_base != 0 && __elfN(vdso) != 0)
|
||||
AUXARGS_ENTRY(pos, AT_KPRELOAD, imgp->sysent->sv_vdso_base);
|
||||
AUXARGS_ENTRY(pos, AT_USRSTACKBASE, round_page(vmspace->vm_stacktop));
|
||||
stacksz = imgp->proc->p_limit->pl_rlimit[RLIMIT_STACK].rlim_cur;
|
||||
AUXARGS_ENTRY(pos, AT_USRSTACKLIM, stacksz);
|
||||
AUXARGS_ENTRY(pos, AT_NULL, 0);
|
||||
|
||||
free(imgp->auxargs, M_TEMP);
|
||||
|
@ -985,10 +985,8 @@ typedef struct {
|
||||
#define AT_PS_STRINGS 32 /* struct ps_strings */
|
||||
#define AT_FXRNG 33 /* Pointer to root RNG seed version. */
|
||||
#define AT_KPRELOAD 34 /* Base of vdso, preloaded by rtld */
|
||||
#define AT_USRSTACKBASE 35 /* Top of user stack */
|
||||
#define AT_USRSTACKLIM 36 /* Grow limit of user stack */
|
||||
|
||||
#define AT_COUNT 37 /* Count of defined aux entry types. */
|
||||
#define AT_COUNT 35 /* Count of defined aux entry types. */
|
||||
|
||||
/*
|
||||
* Relocation types.
|
||||
@ -1506,6 +1504,5 @@ typedef struct {
|
||||
#define R_X86_64_REX_GOTPCRELX 42
|
||||
|
||||
#define ELF_BSDF_SIGFASTBLK 0x0001 /* Kernel supports fast sigblock */
|
||||
#define ELF_BSDF_VMNOOVERCOMMIT 0x0002
|
||||
|
||||
#endif /* !_SYS_ELF_COMMON_H_ */
|
||||
|
Loading…
Reference in New Issue
Block a user