X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Flibsystemd-network%2Fnetwork-internal.c;h=7a7a4eac9d505cb0605b6c9f64e16cbfe8a10a0c;hp=a5db0c53530282f1ba291cae6a731298a3d01964;hb=69f08c8338560d5d8192e7d49d21cfe93656385e;hpb=e1ea665edac17d75fce01b72dadfa3211b60df2c diff --git a/src/libsystemd-network/network-internal.c b/src/libsystemd-network/network-internal.c index a5db0c535..7a7a4eac9 100644 --- a/src/libsystemd-network/network-internal.c +++ b/src/libsystemd-network/network-internal.c @@ -465,7 +465,7 @@ int deserialize_dhcp_routes(struct sd_dhcp_route **ret, size_t *ret_size, size_t FOREACH_WORD(word, len, string, state) { /* WORD FORMAT: dst_ip/dst_prefixlen,gw_ip */ - _cleanup_free_ char* entry; + _cleanup_free_ char* entry = NULL; char *tok, *tok_end; unsigned n; int r; @@ -474,6 +474,8 @@ int deserialize_dhcp_routes(struct sd_dhcp_route **ret, size_t *ret_size, size_t return -ENOMEM; entry = strndup(word, len); + if(!entry) + return -ENOMEM; tok = entry;