mirror of
https://github.com/systemd/systemd.git
synced 2025-03-25 18:50:18 +03:00
dhcp-server: add two missing OOM checks
This commit is contained in:
parent
1d450bda70
commit
357e1b17b9
@ -197,7 +197,11 @@ int sd_dhcp_server_new(sd_dhcp_server **ret, int ifindex) {
|
||||
server->address = htobe32(INADDR_ANY);
|
||||
server->netmask = htobe32(INADDR_ANY);
|
||||
server->ifindex = ifindex;
|
||||
|
||||
server->leases_by_client_id = hashmap_new(&client_id_hash_ops);
|
||||
if (!server->leases_by_client_id)
|
||||
return -ENOMEM;
|
||||
|
||||
server->default_lease_time = DIV_ROUND_UP(DHCP_DEFAULT_LEASE_TIME_USEC, USEC_PER_SEC);
|
||||
server->max_lease_time = DIV_ROUND_UP(DHCP_MAX_LEASE_TIME_USEC, USEC_PER_SEC);
|
||||
|
||||
@ -857,6 +861,8 @@ int dhcp_server_handle_message(sd_dhcp_server *server, DHCPMessage *message,
|
||||
|
||||
if (!existing_lease) {
|
||||
lease = new0(DHCPLease, 1);
|
||||
if (!lease)
|
||||
return -ENOMEM;
|
||||
lease->address = address;
|
||||
lease->client_id.data = memdup(req->client_id.data,
|
||||
req->client_id.length);
|
||||
|
Loading…
x
Reference in New Issue
Block a user