diff options
author | Alexis Ballier <aballier@gentoo.org> | 2009-10-16 13:05:28 +0000 |
---|---|---|
committer | Alexis Ballier <aballier@gentoo.org> | 2009-10-16 13:05:28 +0000 |
commit | 5b68b6dbf8090934a2ef2c0c5af0dca1d5d0b89d (patch) | |
tree | f89348e5d389be672377bd67dde23e8b010b5494 /sys-freebsd/freebsd-sources/files | |
parent | Fix building with JDK 1.5. Fixes bug #289078. (diff) | |
download | gentoo-2-5b68b6dbf8090934a2ef2c0c5af0dca1d5d0b89d.tar.gz gentoo-2-5b68b6dbf8090934a2ef2c0c5af0dca1d5d0b89d.tar.bz2 gentoo-2-5b68b6dbf8090934a2ef2c0c5af0dca1d5d0b89d.zip |
Add patches for latest fbsd sec. advisory and errata.
(Portage version: 2.2_rc46/cvs/Linux x86_64)
Diffstat (limited to 'sys-freebsd/freebsd-sources/files')
-rw-r--r-- | sys-freebsd/freebsd-sources/files/freebsd-sources-7.2-devfs7.patch | 15 | ||||
-rw-r--r-- | sys-freebsd/freebsd-sources/files/freebsd-sources-7.2-null.patch | 47 |
2 files changed, 62 insertions, 0 deletions
diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-7.2-devfs7.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.2-devfs7.patch new file mode 100644 index 000000000000..e1fcefb028ce --- /dev/null +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.2-devfs7.patch @@ -0,0 +1,15 @@ +http://security.freebsd.org/advisories/FreeBSD-SA-09:14.devfs.asc + +Index: sys/fs/devfs/devfs_vnops.c +=================================================================== +--- sys/fs/devfs/devfs_vnops.c (revision 192300) ++++ sys/fs/devfs/devfs_vnops.c (revision 192301) +@@ -890,6 +890,7 @@ + if (fp != NULL) { + FILE_LOCK(fp); + fp->f_data = dev; ++ fp->f_vnode = vp; + FILE_UNLOCK(fp); + } + fpop = td->td_fpop; + diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-7.2-null.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.2-null.patch new file mode 100644 index 000000000000..16e5023806eb --- /dev/null +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.2-null.patch @@ -0,0 +1,47 @@ +http://security.freebsd.org/advisories/FreeBSD-EN-09:05.null.asc + +Index: sys/kern/kern_exec.c +=================================================================== +--- sys/kern/kern_exec.c (revision 197682) ++++ sys/kern/kern_exec.c (working copy) +@@ -122,6 +122,11 @@ + SYSCTL_ULONG(_kern, OID_AUTO, ps_arg_cache_limit, CTLFLAG_RW, + &ps_arg_cache_limit, 0, ""); + ++static int map_at_zero = 1; ++TUNABLE_INT("security.bsd.map_at_zero", &map_at_zero); ++SYSCTL_INT(_security_bsd, OID_AUTO, map_at_zero, CTLFLAG_RW, &map_at_zero, 0, ++ "Permit processes to map an object at virtual address 0."); ++ + static int + sysctl_kern_ps_strings(SYSCTL_HANDLER_ARGS) + { +@@ -939,7 +944,7 @@ + int error; + struct proc *p = imgp->proc; + struct vmspace *vmspace = p->p_vmspace; +- vm_offset_t stack_addr; ++ vm_offset_t sv_minuser, stack_addr; + vm_map_t map; + u_long ssiz; + +@@ -955,13 +960,17 @@ + * not disrupted + */ + map = &vmspace->vm_map; +- if (vmspace->vm_refcnt == 1 && vm_map_min(map) == sv->sv_minuser && ++ if (map_at_zero) ++ sv_minuser = sv->sv_minuser; ++ else ++ sv_minuser = MAX(sv->sv_minuser, PAGE_SIZE); ++ if (vmspace->vm_refcnt == 1 && vm_map_min(map) == sv_minuser && + vm_map_max(map) == sv->sv_maxuser) { + shmexit(vmspace); + pmap_remove_pages(vmspace_pmap(vmspace)); + vm_map_remove(map, vm_map_min(map), vm_map_max(map)); + } else { +- error = vmspace_exec(p, sv->sv_minuser, sv->sv_maxuser); ++ error = vmspace_exec(p, sv_minuser, sv->sv_maxuser); + if (error) + return (error); + vmspace = p->p_vmspace; |