summaryrefslogtreecommitdiff
path: root/src/libsystemd-network/dhcp6-option.c
diff options
context:
space:
mode:
authorDavid Herrmann <dh.herrmann@gmail.com>2015-08-26 12:37:56 +0200
committerDavid Herrmann <dh.herrmann@gmail.com>2015-08-26 12:37:56 +0200
commita00458421dd4b6fcb9b4cdc433ba0c13970907f1 (patch)
tree849c50e46e2cb96fe71e3430da6983e20e031f34 /src/libsystemd-network/dhcp6-option.c
parente6b18ffaea7d557eec3028a37c043da67a78550c (diff)
sd-dhcp6: fix domainname memleak
strv_extend() does not consume the passed entry, hence, we must properly free it. Furthermore, we should *not* use strv_consume() as we do greedy allocations on 'ret'; and greedy-allocations should only be used for short lived objects or caches. Fix the domainname parser to properly free temporary storage when done.
Diffstat (limited to 'src/libsystemd-network/dhcp6-option.c')
-rw-r--r--src/libsystemd-network/dhcp6-option.c1
1 files changed, 0 insertions, 1 deletions
diff --git a/src/libsystemd-network/dhcp6-option.c b/src/libsystemd-network/dhcp6-option.c
index 6da7ea7e27..2fa4d5fac8 100644
--- a/src/libsystemd-network/dhcp6-option.c
+++ b/src/libsystemd-network/dhcp6-option.c
@@ -405,7 +405,6 @@ int dhcp6_option_parse_domainname(const uint8_t *optval, uint16_t optlen,
if (r < 0)
goto fail;
- ret = NULL;
idx++;
}