Module Name: src Committed By: kamil Date: Tue Jul 3 22:49:51 UTC 2018
Modified Files: src/sys/kern: kern_descrip.c Log Message: Avoid unportable signed integer left shift in fd_isused() Detected with Kernel Undefined Behavior Sanitizer. sys/kern/kern_descrip.c:188:34, left shift of 1 by 31 places cannot be represented in type 'int' Reported by <Harry Pantazis> To generate a diff of this commit: cvs rdiff -u -r1.232 -r1.233 src/sys/kern/kern_descrip.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/kern/kern_descrip.c diff -u src/sys/kern/kern_descrip.c:1.232 src/sys/kern/kern_descrip.c:1.233 --- src/sys/kern/kern_descrip.c:1.232 Tue Jul 3 12:17:54 2018 +++ src/sys/kern/kern_descrip.c Tue Jul 3 22:49:51 2018 @@ -1,4 +1,4 @@ -/* $NetBSD: kern_descrip.c,v 1.232 2018/07/03 12:17:54 kamil Exp $ */ +/* $NetBSD: kern_descrip.c,v 1.233 2018/07/03 22:49:51 kamil Exp $ */ /*- * Copyright (c) 2008, 2009 The NetBSD Foundation, Inc. @@ -70,7 +70,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: kern_descrip.c,v 1.232 2018/07/03 12:17:54 kamil Exp $"); +__KERNEL_RCSID(0, "$NetBSD: kern_descrip.c,v 1.233 2018/07/03 22:49:51 kamil Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -185,7 +185,7 @@ fd_isused(filedesc_t *fdp, unsigned fd) KASSERT(fd < fdp->fd_dt->dt_nfiles); - return (fdp->fd_lomap[off] & (1 << (fd & NDENTRYMASK))) != 0; + return (fdp->fd_lomap[off] & (1U << (fd & NDENTRYMASK))) != 0; } /*