Module Name: src Committed By: riastradh Date: Tue Oct 30 14:43:39 UTC 2018
Modified Files: src/sys/compat/common: kern_time_30.c src/sys/compat/netbsd32: netbsd32_time.c Log Message: Paranoia: zero COMPAT_30 ntptimeval and 32-bit ntptimeval too. These structs don't have padding but safer to keep the code structured the same way between the various ntp_gettimes in case anyone makes more copypasta of it for future updates. To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 src/sys/compat/common/kern_time_30.c cvs rdiff -u -r1.49 -r1.50 src/sys/compat/netbsd32/netbsd32_time.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/compat/common/kern_time_30.c diff -u src/sys/compat/common/kern_time_30.c:1.5 src/sys/compat/common/kern_time_30.c:1.6 --- src/sys/compat/common/kern_time_30.c:1.5 Thu Nov 3 03:37:06 2016 +++ src/sys/compat/common/kern_time_30.c Tue Oct 30 14:43:38 2018 @@ -1,4 +1,4 @@ -/* $NetBSD: kern_time_30.c,v 1.5 2016/11/03 03:37:06 riastradh Exp $ */ +/* $NetBSD: kern_time_30.c,v 1.6 2018/10/30 14:43:38 riastradh Exp $ */ /*- * Copyright (c) 2008 The NetBSD Foundation, Inc. @@ -36,7 +36,7 @@ * POSSIBILITY OF SUCH DAMAGE. */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: kern_time_30.c,v 1.5 2016/11/03 03:37:06 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: kern_time_30.c,v 1.6 2018/10/30 14:43:38 riastradh Exp $"); #ifdef _KERNEL_OPT #include "opt_ntp.h" @@ -68,6 +68,7 @@ compat_30_sys_ntp_gettime(struct lwp *l, if (SCARG(uap, ntvp)) { ntp_gettime(&ntv); + memset(&ntv30, 0, sizeof(ntv30)); TIMESPEC_TO_TIMEVAL(&tv, &ntv.time); timeval_to_timeval50(&tv, &ntv30.time); ntv30.maxerror = ntv.maxerror; Index: src/sys/compat/netbsd32/netbsd32_time.c diff -u src/sys/compat/netbsd32/netbsd32_time.c:1.49 src/sys/compat/netbsd32/netbsd32_time.c:1.50 --- src/sys/compat/netbsd32/netbsd32_time.c:1.49 Sun Feb 26 10:26:19 2017 +++ src/sys/compat/netbsd32/netbsd32_time.c Tue Oct 30 14:43:38 2018 @@ -1,4 +1,4 @@ -/* $NetBSD: netbsd32_time.c,v 1.49 2017/02/26 10:26:19 njoly Exp $ */ +/* $NetBSD: netbsd32_time.c,v 1.50 2018/10/30 14:43:38 riastradh Exp $ */ /* * Copyright (c) 1998, 2001 Matthew R. Green @@ -27,7 +27,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: netbsd32_time.c,v 1.49 2017/02/26 10:26:19 njoly Exp $"); +__KERNEL_RCSID(0, "$NetBSD: netbsd32_time.c,v 1.50 2018/10/30 14:43:38 riastradh Exp $"); #if defined(_KERNEL_OPT) #include "opt_ntp.h" @@ -66,6 +66,7 @@ netbsd32___ntp_gettime50(struct lwp *l, if (SCARG_P32(uap, ntvp)) { ntp_gettime(&ntv); + memset(&ntv32, 0, sizeof(ntv32)); ntv32.time.tv_sec = ntv.time.tv_sec; ntv32.time.tv_nsec = ntv.time.tv_nsec; ntv32.maxerror = (netbsd32_long)ntv.maxerror; @@ -96,6 +97,7 @@ compat_50_netbsd32_ntp_gettime(struct lw if (SCARG_P32(uap, ntvp)) { ntp_gettime(&ntv); + memset(&ntv32, 0, sizeof(ntv32)); ntv32.time.tv_sec = (int32_t)ntv.time.tv_sec; ntv32.time.tv_nsec = ntv.time.tv_nsec; ntv32.maxerror = (netbsd32_long)ntv.maxerror; @@ -126,6 +128,7 @@ compat_30_netbsd32_ntp_gettime(struct lw if (SCARG_P32(uap, ntvp)) { ntp_gettime(&ntv); + memset(&ntv32, 0, sizeof(ntv32)); ntv32.time.tv_sec = ntv.time.tv_sec; ntv32.time.tv_usec = ntv.time.tv_nsec / 1000; ntv32.maxerror = (netbsd32_long)ntv.maxerror;