diff options
author | Beniamino Galvani <bgalvani@redhat.com> | 2021-06-16 09:56:25 (GMT) |
---|---|---|
committer | Beniamino Galvani <bgalvani@redhat.com> | 2021-06-16 09:58:33 (GMT) |
commit | 26f342d09947d5884014ec4a0553c094e41c60bc (patch) | |
tree | d3fede8c4bf4cf5f038efedc83848f8ee1d46c70 /lib/route | |
parent | d1a151eb6fe603365d93526796b3fa7e64e1c0fd (diff) | |
download | libnl-26f342d09947d5884014ec4a0553c094e41c60bc.zip libnl-26f342d09947d5884014ec4a0553c094e41c60bc.tar.gz libnl-26f342d09947d5884014ec4a0553c094e41c60bc.tar.bz2 |
route/qdisc: handle error of calloc()
Diffstat (limited to 'lib/route')
-rw-r--r-- | lib/route/qdisc/netem.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/lib/route/qdisc/netem.c b/lib/route/qdisc/netem.c index a3066eb..50122b8 100644 --- a/lib/route/qdisc/netem.c +++ b/lib/route/qdisc/netem.c @@ -936,9 +936,12 @@ int rtnl_netem_set_delay_distribution(struct rtnl_qdisc *qdisc, const char *dist if (f == NULL) return -nl_syserr2nlerr(errno); - data = (int16_t *) calloc (MAXDIST, sizeof(int16_t)); - - line = (char *) calloc (sizeof(char), len + 1); + data = (int16_t *) calloc(MAXDIST, sizeof(int16_t)); + line = (char *) calloc(sizeof(char), len + 1); + if (!data || !line) { + fclose(f); + return -NLE_NOMEM; + } while (getline(&line, &len, f) != -1) { char *p, *endp; |