Coverity detected that ifaceGetNthParent had already dereferenced
'nth' prior to the conditional; all callers already complied with
passing a non-NULL pointer so make this part of the contract.
* src/util/interface.h (ifaceGetNthParent): Add annotations.
* src/util/interface.c (ifaceGetNthParent): Drop useless null check.
---
src/util/interface.c | 3 +--
src/util/interface.h | 5 ++++-
2 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/src/util/interface.c b/src/util/interface.c
index f5eecfb..8b4522b 100644
--- a/src/util/interface.c
+++ b/src/util/interface.c
@@ -1060,8 +1060,7 @@ ifaceGetNthParent(int ifindex, const char *ifname, unsigned int
nthParent,
i++;
}
- if (nth)
- *nth = i - 1;
+ *nth = i - 1;
return rc;
}
diff --git a/src/util/interface.h b/src/util/interface.h
index 9647653..47c0eb0 100644
--- a/src/util/interface.h
+++ b/src/util/interface.h
@@ -1,6 +1,7 @@
/*
* interface.h: interface helper APIs for libvirt
*
+ * Copyright (C) 2011 Red Hat, Inc.
* Copyright (C) 2010 IBM Corporation, Inc.
*
* See COPYING.LIB for the License of this software
@@ -67,7 +68,9 @@ int ifaceMacvtapLinkDump(bool nltarget_kernel, const char *ifname, int
ifindex,
int ifaceGetNthParent(int ifindex, const char *ifname, unsigned int nthParent,
int *parent_ifindex, char *parent_ifname,
- unsigned int *nth);
+ unsigned int *nth)
+ ATTRIBUTE_NONNULL(2) ATTRIBUTE_NONNULL(4) ATTRIBUTE_NONNULL(5)
+ ATTRIBUTE_NONNULL(6);
int ifaceReplaceMacAddress(const unsigned char *macaddress,
const char *linkdev,
--
1.7.4.4