DragonFlyBSD Kernel Audit
DF-0961 / fix.diff
← back to finding ↓ download raw
diff --git a/sys/vm/vm_unix.c b/sys/vm/vm_unix.c
--- a/sys/vm/vm_unix.c
+++ b/sys/vm/vm_unix.c
@@ -119,6 +119,11 @@
 		error = ENOMEM;
 		goto done;
 	}
+	if (vm->vm_map.size + incr >
+	    p->p_rlimit[RLIMIT_VMEM].rlim_cur) {
+		error = ENOMEM;
+		goto done;
+	}
 
 	/*
 	 * Same-page optimization (protected by token)