summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2014-06-25 07:26:49 (GMT)
committerThomas Haller <thaller@redhat.com>2014-06-25 07:26:49 (GMT)
commitbaaf82d6d6e023d422809b16865bda2e39c589b5 (patch)
treeeb64b518726993ae3466c34a57bc9d5e0def2bdc
parente4c94ea9ed1c391db4619c04512666bc099b3aba (diff)
parenta8b352a4c50b0e44d53c5a74388f942523224171 (diff)
downloadlibnl-baaf82d6d6e023d422809b16865bda2e39c589b5.zip
libnl-baaf82d6d6e023d422809b16865bda2e39c589b5.tar.gz
libnl-baaf82d6d6e023d422809b16865bda2e39c589b5.tar.bz2
Merge branch 'coverity-fixes-2'
http://lists.infradead.org/pipermail/libnl/2014-June/001507.html Signed-off-by: Thomas Haller <thaller@redhat.com>
-rw-r--r--include/netlink/attr.h2
-rw-r--r--lib/attr.c2
-rw-r--r--lib/route/cls/u32.c9
3 files changed, 8 insertions, 5 deletions
diff --git a/include/netlink/attr.h b/include/netlink/attr.h
index 0ed3da3..82e4c38 100644
--- a/include/netlink/attr.h
+++ b/include/netlink/attr.h
@@ -205,7 +205,7 @@ extern int nla_is_nested(struct nlattr *);
* @arg value NUL terminated character string.
*/
#define NLA_PUT_STRING(msg, attrtype, value) \
- NLA_PUT(msg, attrtype, strlen(value) + 1, value)
+ NLA_PUT(msg, attrtype, (int) strlen(value) + 1, value)
/**
* Add flag attribute to netlink message.
diff --git a/lib/attr.c b/lib/attr.c
index 66c029c..d3de399 100644
--- a/lib/attr.c
+++ b/lib/attr.c
@@ -648,7 +648,7 @@ int nla_put_u64(struct nl_msg *msg, int attrtype, uint64_t value)
*/
uint64_t nla_get_u64(struct nlattr *nla)
{
- uint64_t tmp;
+ uint64_t tmp = 0;
nla_memcpy(&tmp, nla, sizeof(tmp));
diff --git a/lib/route/cls/u32.c b/lib/route/cls/u32.c
index e91c39a..0a4e83c 100644
--- a/lib/route/cls/u32.c
+++ b/lib/route/cls/u32.c
@@ -170,9 +170,12 @@ static int u32_clone(void *_dst, void *_src)
!(dst->cu_selector = nl_data_clone(src->cu_selector)))
return -NLE_NOMEM;
- if (src->cu_act && !(dst->cu_act = rtnl_act_alloc()))
- return -NLE_NOMEM;
- memcpy(dst->cu_act, src->cu_act, sizeof(struct rtnl_act));
+ if (src->cu_act) {
+ if (!(dst->cu_act = rtnl_act_alloc()))
+ return -NLE_NOMEM;
+
+ memcpy(dst->cu_act, src->cu_act, sizeof(struct rtnl_act));
+ }
if (src->cu_police && !(dst->cu_police = nl_data_clone(src->cu_police)))
return -NLE_NOMEM;