aboutsummaryrefslogtreecommitdiff
path: root/lib/libkvm/kvm_arm.c
diff options
context:
space:
mode:
authorEnji Cooper <ngie@FreeBSD.org>2016-04-22 18:05:34 +0000
committerEnji Cooper <ngie@FreeBSD.org>2016-04-22 18:05:34 +0000
commitfb0e1892d9e31cdba013c27b24c47c86838924a8 (patch)
treebb4bdeb74de817bae84cb2140465d0699d8249d8 /lib/libkvm/kvm_arm.c
parent4c26ac696ca202c0aa1976f08e527adca4f9c946 (diff)
downloadsrc-fb0e1892d9e31cdba013c27b24c47c86838924a8.tar.gz
src-fb0e1892d9e31cdba013c27b24c47c86838924a8.zip
Fix up pointer issues with lib/libkvm
In particular, - avoid dereferencing NULL pointers - test pointers against NULL, not 0 - test for errout == NULL in the top-level functions (kvm_open, kvm_openfiles, kvm_open2, etc) - Replace a realloc and free on failure with reallocf Found with: devel/cocchinelle Differential Revision: https://reviews.freebsd.org/D5954 MFC after: 1 week Reviewed by: jhb Sponsored by: EMC / Isilon Storage Division
Notes
Notes: svn path=/head/; revision=298485
Diffstat (limited to 'lib/libkvm/kvm_arm.c')
-rw-r--r--lib/libkvm/kvm_arm.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/libkvm/kvm_arm.c b/lib/libkvm/kvm_arm.c
index ae5fb5bc8646..eeda900063f2 100644
--- a/lib/libkvm/kvm_arm.c
+++ b/lib/libkvm/kvm_arm.c
@@ -117,7 +117,7 @@ _arm_initvtop(kvm_t *kd)
}
vm = _kvm_malloc(kd, sizeof(*vm));
- if (vm == 0) {
+ if (vm == NULL) {
_kvm_err(kd, kd->program, "cannot allocate vm");
return (-1);
}
@@ -168,6 +168,10 @@ _arm_initvtop(kvm_t *kd)
return (-1);
}
l1pt = _kvm_malloc(kd, ARM_L1_TABLE_SIZE);
+ if (l1pt == NULL) {
+ _kvm_err(kd, kd->program, "cannot allocate l1pt");
+ return (-1);
+ }
if (kvm_read2(kd, pa, l1pt, ARM_L1_TABLE_SIZE) != ARM_L1_TABLE_SIZE) {
_kvm_err(kd, kd->program, "cannot read l1pt");
free(l1pt);