diff options
Diffstat (limited to 'src/libsystemd-network/sd-dhcp-server.c')
-rw-r--r-- | src/libsystemd-network/sd-dhcp-server.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/libsystemd-network/sd-dhcp-server.c b/src/libsystemd-network/sd-dhcp-server.c index 663fd0e41d..63fb355e85 100644 --- a/src/libsystemd-network/sd-dhcp-server.c +++ b/src/libsystemd-network/sd-dhcp-server.c @@ -1,3 +1,4 @@ +/* SPDX-License-Identifier: LGPL-2.1+ */ /*** This file is part of systemd. @@ -86,7 +87,6 @@ int sd_dhcp_server_configure_pool(sd_dhcp_server *server, struct in_addr *addres size = size_max; if (server->address != address->s_addr || server->netmask != netmask || server->pool_size != size || server->pool_offset != offset) { - DHCPLease *lease; free(server->bound_leases); server->bound_leases = new0(DHCPLease*, size); @@ -104,8 +104,7 @@ int sd_dhcp_server_configure_pool(sd_dhcp_server *server, struct in_addr *addres server->bound_leases[server_off - offset] = &server->invalid_lease; /* Drop any leases associated with the old address range */ - while ((lease = hashmap_steal_first(server->leases_by_client_id))) - dhcp_lease_free(lease); + hashmap_clear_with_destructor(server->leases_by_client_id, dhcp_lease_free); } return 0; |