Module Name: src Committed By: christos Date: Tue May 17 00:38:50 UTC 2016
Modified Files: src/sys/kern: kern_pax.c Log Message: Hook to clamp the random value for mmap for machies that don't have enough VA bits. To generate a diff of this commit: cvs rdiff -u -r1.45 -r1.46 src/sys/kern/kern_pax.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_pax.c diff -u src/sys/kern/kern_pax.c:1.45 src/sys/kern/kern_pax.c:1.46 --- src/sys/kern/kern_pax.c:1.45 Sat May 14 13:04:09 2016 +++ src/sys/kern/kern_pax.c Mon May 16 20:38:50 2016 @@ -1,4 +1,4 @@ -/* $NetBSD: kern_pax.c,v 1.45 2016/05/14 17:04:09 christos Exp $ */ +/* $NetBSD: kern_pax.c,v 1.46 2016/05/17 00:38:50 christos Exp $ */ /* * Copyright (c) 2015 The NetBSD Foundation, Inc. @@ -57,7 +57,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: kern_pax.c,v 1.45 2016/05/14 17:04:09 christos Exp $"); +__KERNEL_RCSID(0, "$NetBSD: kern_pax.c,v 1.46 2016/05/17 00:38:50 christos Exp $"); #include "opt_pax.h" @@ -482,6 +482,9 @@ pax_aslr_init_vm(struct lwp *l, struct v if (pax_aslr_flags & PAX_ASLR_FIXED) rand = pax_aslr_rand; #endif +#ifdef PAX_ASLR_RAND_MMAP_MAX + rand &= PAX_ASLR_RAND_MMAP_MAX - 1; +#endif vm->vm_aslr_delta_mmap = PAX_ASLR_DELTA(rand, PAX_ASLR_DELTA_MMAP_LSB, len);