Merge branch 'coverity-fixes'

http://lists.infradead.org/pipermail/libnl/2014-June/001475.html

Signed-off-by: Thomas Haller <thaller@redhat.com>
This commit is contained in:
Thomas Haller 2014-06-10 21:46:49 +02:00
commit cfc57ce359
13 changed files with 26 additions and 25 deletions

View file

@ -1154,7 +1154,7 @@ void nl_cache_dump_filter(struct nl_cache *cache,
if (!ops->oo_dump[type])
return;
if (params->dp_buf)
if (params && params->dp_buf)
memset(params->dp_buf, 0, params->dp_buflen);
nl_list_for_each_entry(obj, &cache->c_items, ce_list) {

View file

@ -515,9 +515,10 @@ void nl_cache_mngr_free(struct nl_cache_mngr *mngr)
}
free(mngr->cm_assocs);
free(mngr);
NL_DBG(1, "Cache manager %p freed\n", mngr);
free(mngr);
}
/** @} */

View file

@ -569,8 +569,8 @@ void nlmsg_free(struct nl_msg *msg)
if (msg->nm_refcnt <= 0) {
free(msg->nm_nlh);
free(msg);
NL_DBG(2, "msg %p: Freed\n", msg);
free(msg);
}
}

View file

@ -414,10 +414,9 @@ static int ct_msg_parser(struct nl_cache_ops *ops, struct sockaddr_nl *who,
int err;
if ((err = nfnlmsg_ct_parse(nlh, &ct)) < 0)
goto errout;
return err;
err = pp->pp_cb((struct nl_object *) ct, pp);
errout:
nfnl_ct_put(ct);
return err;
}

View file

@ -298,10 +298,9 @@ static int exp_msg_parser(struct nl_cache_ops *ops, struct sockaddr_nl *who,
int err;
if ((err = nfnlmsg_exp_parse(nlh, &exp)) < 0)
goto errout;
return err;
err = pp->pp_cb((struct nl_object *) exp, pp);
errout:
nfnl_exp_put(exp);
return err;
}

View file

@ -174,10 +174,9 @@ static int log_msg_parser(struct nl_cache_ops *ops, struct sockaddr_nl *who,
int err;
if ((err = nfnlmsg_log_msg_parse(nlh, &msg)) < 0)
goto errout;
return err;
err = pp->pp_cb((struct nl_object *) msg, pp);
errout:
nfnl_log_msg_put(msg);
return err;
}

View file

@ -153,10 +153,9 @@ static int queue_msg_parser(struct nl_cache_ops *ops, struct sockaddr_nl *who,
int err;
if ((err = nfnlmsg_queue_msg_parse(nlh, &msg)) < 0)
goto errout;
return err;
err = pp->pp_cb((struct nl_object *) msg, pp);
errout:
nfnl_queue_msg_put(msg);
return err;
}

View file

@ -185,9 +185,9 @@ void nl_object_free(struct nl_object *obj)
if (ops->oo_free_data)
ops->oo_free_data(obj);
free(obj);
NL_DBG(4, "Freed object %p\n", obj);
free(obj);
}
/** @} */

View file

@ -282,9 +282,10 @@ void rtnl_ematch_tree_free(struct rtnl_ematch_tree *tree)
return;
free_ematch_list(&tree->et_list);
free(tree);
NL_DBG(2, "Freed ematch tree %p\n", tree);
free(tree);
}
/**
@ -653,9 +654,7 @@ int rtnl_ematch_parse_expr(const char *expr, char **errp,
goto errout;
}
if (scanner)
ematch_lex_destroy(scanner);
ematch_lex_destroy(scanner);
*result = tree;
return 0;
@ -693,7 +692,7 @@ static const char *operand_txt[] = {
char *rtnl_ematch_opnd2txt(uint8_t opnd, char *buf, size_t len)
{
snprintf(buf, len, "%s",
opnd <= ARRAY_SIZE(operand_txt) ? operand_txt[opnd] : "?");
opnd < ARRAY_SIZE(operand_txt) ? operand_txt[opnd] : "?");
return buf;
}

View file

@ -2102,11 +2102,13 @@ const char *rtnl_link_get_ifalias(struct rtnl_link *link)
void rtnl_link_set_ifalias(struct rtnl_link *link, const char *alias)
{
free(link->l_ifalias);
link->ce_mask &= ~LINK_ATTR_IFALIAS;
if (alias) {
link->l_ifalias = strdup(alias);
link->ce_mask |= LINK_ATTR_IFALIAS;
} else {
link->l_ifalias = NULL;
link->ce_mask &= ~LINK_ATTR_IFALIAS;
}
}

View file

@ -145,7 +145,7 @@ static int vlan_parse(struct rtnl_link *link, struct nlattr *data,
/* align to have a little reserve */
vi->vi_egress_size = (i + 32) & ~31;
vi->vi_egress_qos = calloc(vi->vi_egress_size, sizeof(*map));
vi->vi_egress_qos = calloc(vi->vi_egress_size, sizeof(*vi->vi_egress_qos));
if (vi->vi_egress_qos == NULL)
return -NLE_NOMEM;

View file

@ -138,14 +138,13 @@ static int read_pktlocs(void)
last_read = st.st_mtime;
errout_scanner:
if (scanner)
pktloc_lex_destroy(scanner);
pktloc_lex_destroy(scanner);
errout_close:
fclose(fd);
errout:
free(path);
return 0;
return err;
}
/** @endcond */

View file

@ -65,8 +65,12 @@ int main(int argc, char *argv[])
};
m = nlmsg_alloc_simple(RTM_GETROUTE, 0);
nlmsg_append(m, &rmsg, sizeof(rmsg), NLMSG_ALIGNTO);
nla_put_addr(m, RTA_DST, dst);
if (!m)
nl_cli_fatal(ENOMEM, "out of memory");
if (nlmsg_append(m, &rmsg, sizeof(rmsg), NLMSG_ALIGNTO) < 0)
nl_cli_fatal(ENOMEM, "out of memory");
if (nla_put_addr(m, RTA_DST, dst) < 0)
nl_cli_fatal(ENOMEM, "out of memory");
err = nl_send_auto_complete(sock, m);
nlmsg_free(m);