git: 81eb7baa69e9 - main - freebsd32: Report errors when copying out oldlenp in __sysctl
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 26 Dec 2023 02:04:12 UTC
The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=81eb7baa69e983fe159d254a4ed47d9c00396801 commit 81eb7baa69e983fe159d254a4ed47d9c00396801 Author: Mark Johnston <markj@FreeBSD.org> AuthorDate: 2023-12-26 01:37:32 +0000 Commit: Mark Johnston <markj@FreeBSD.org> CommitDate: 2023-12-26 02:04:00 +0000 freebsd32: Report errors when copying out oldlenp in __sysctl This matches the native implementation's behaviour. Reviewed by: kib MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D43101 --- sys/compat/freebsd32/freebsd32_misc.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/compat/freebsd32/freebsd32_misc.c b/sys/compat/freebsd32/freebsd32_misc.c index 5aafc459d60a..41f456d67e5b 100644 --- a/sys/compat/freebsd32/freebsd32_misc.c +++ b/sys/compat/freebsd32/freebsd32_misc.c @@ -2675,9 +2675,9 @@ freebsd32___sysctl(struct thread *td, struct freebsd32___sysctl_args *uap) uap->new, uap->newlen, &j, SCTL_MASK32); if (error) return (error); - if (uap->oldlenp) - suword32(uap->oldlenp, j); - return (0); + if (uap->oldlenp != NULL && suword32(uap->oldlenp, j) != 0) + error = EFAULT; + return (error); } int