sd-dhcp6: do not update serverid when ENOMEM

(cherry picked from commit 33d367589581a9f46fe291181ef2b30b812e5cb3)
This commit is contained in:
Yu Watanabe 2018-10-19 03:40:30 +09:00 committed by Thomas Haller
parent a7137ce0ce
commit 1990a3efab

View file

@ -54,15 +54,16 @@ DHCP6IA *dhcp6_lease_free_ia(DHCP6IA *ia) {
int dhcp6_lease_set_serverid(sd_dhcp6_lease *lease, const uint8_t *id,
size_t len) {
uint8_t *serverid;
assert_return(lease, -EINVAL);
assert_return(id, -EINVAL);
free(lease->serverid);
lease->serverid = memdup(id, len);
if (!lease->serverid)
return -EINVAL;
serverid = memdup(id, len);
if (!serverid)
return -ENOMEM;
free_and_replace(lease->serverid, serverid);
lease->serverid_len = len;
return 0;