diff options
author | Brooks Davis <brooks@FreeBSD.org> | 2020-04-16 21:53:17 +0000 |
---|---|---|
committer | Brooks Davis <brooks@FreeBSD.org> | 2020-04-16 21:53:17 +0000 |
commit | b24e6ac8b78ebf628872c821b7eb4f7ed008498c (patch) | |
tree | c688e1c69b9359fd8758a8c19684939857c31055 /sys/amd64/linux32/linux32_sysvec.c | |
parent | d3920c5b121cce2e549da58fbba69ffd26c3e9f0 (diff) | |
download | src-b24e6ac8b78ebf628872c821b7eb4f7ed008498c.tar.gz src-b24e6ac8b78ebf628872c821b7eb4f7ed008498c.zip |
Convert canary, execpathp, and pagesizes to pointers.
Use AUXARGS_ENTRY_PTR to export these pointers. This is a followup to
r359987 and r359988.
Reviewed by: jhb
Obtained from: CheriBSD
Sponsored by: DARPA
Differential Revision: https://reviews.freebsd.org/D24446
Notes
Notes:
svn path=/head/; revision=360024
Diffstat (limited to 'sys/amd64/linux32/linux32_sysvec.c')
-rw-r--r-- | sys/amd64/linux32/linux32_sysvec.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/sys/amd64/linux32/linux32_sysvec.c b/sys/amd64/linux32/linux32_sysvec.c index 2f0865c8e890..8bd1e2800730 100644 --- a/sys/amd64/linux32/linux32_sysvec.c +++ b/sys/amd64/linux32/linux32_sysvec.c @@ -742,8 +742,8 @@ linux_copyout_strings(struct image_params *imgp, uintptr_t *stack_base) if (execpath_len != 0) { destp -= execpath_len; destp = rounddown2(destp, sizeof(uint32_t)); - imgp->execpathp = destp; - error = copyout(imgp->execpath, (void *)destp, execpath_len); + imgp->execpathp = (void *)destp; + error = copyout(imgp->execpath, imgp->execpathp, execpath_len); if (error != 0) return (error); } @@ -751,8 +751,8 @@ linux_copyout_strings(struct image_params *imgp, uintptr_t *stack_base) /* Prepare the canary for SSP. */ arc4rand(canary, sizeof(canary), 0); destp -= roundup(sizeof(canary), sizeof(uint32_t)); - imgp->canary = destp; - error = copyout(canary, (void *)destp, sizeof(canary)); + imgp->canary = (void *)destp; + error = copyout(canary, imgp->canary, sizeof(canary)); if (error != 0) return (error); |