diff options
author | Denis Kirjanov <kirjanov@gmail.com> | 2024-03-18 05:15:41 -0400 |
---|---|---|
committer | Stephen Hemminger <stephen@networkplumber.org> | 2024-03-19 21:17:55 -0700 |
commit | b22a3430bd17c4f75e6f113ecfeb8ea386d6b408 (patch) | |
tree | fbcd0fecc040cefb06902e9cd87e562651a932eb | |
parent | 4b3b5375a7829c348a762da3172b8973bd86396e (diff) | |
download | iproute2-b22a3430bd17c4f75e6f113ecfeb8ea386d6b408.tar.gz |
ifstat: handle strdup return value
get_nlmsg_extended is missing the check as
it's done in get_nlmsg
v2: don't set the errno value explicitly
Signed-off-by: Denis Kirjanov <dkirjanov@suse.de>
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
-rw-r--r-- | misc/ifstat.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/misc/ifstat.c b/misc/ifstat.c index 685e66c9c..352e5622c 100644 --- a/misc/ifstat.c +++ b/misc/ifstat.c @@ -140,6 +140,10 @@ static int get_nlmsg_extended(struct nlmsghdr *m, void *arg) n->ifindex = ifsm->ifindex; n->name = strdup(ll_index_to_name(ifsm->ifindex)); + if (!n->name) { + free(n); + return -1; + } if (sub_type == NO_SUB_TYPE) { memcpy(&n->val, RTA_DATA(tb[filter_type]), sizeof(n->val)); |