From: Yu Watanabe Date: Mon, 24 Jan 2022 10:26:25 +0000 (+0900) Subject: fuzz-dhcp-server: also set new lease elements correctly X-Git-Tag: v251-rc1~462^2~2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=c3da2e4732a89bceecde57e15a86948a34ed8b79;p=thirdparty%2Fsystemd.git fuzz-dhcp-server: also set new lease elements correctly The fuzzer does not send anything to the address, so it should be not necessary, but just for safety. --- diff --git a/src/libsystemd-network/fuzz-dhcp-server.c b/src/libsystemd-network/fuzz-dhcp-server.c index e90284f6f2e..87add43270b 100644 --- a/src/libsystemd-network/fuzz-dhcp-server.c +++ b/src/libsystemd-network/fuzz-dhcp-server.c @@ -44,7 +44,9 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) { lease->address = htobe32(UINT32_C(10) << 24 | UINT32_C(2)); lease->gateway = htobe32(UINT32_C(10) << 24 | UINT32_C(1)); lease->expiration = UINT64_MAX; - memcpy(lease->chaddr, chaddr, 16); + lease->htype = ARPHRD_ETHER; + lease->hlen = ETH_ALEN; + memcpy(lease->chaddr, chaddr, ETH_ALEN); assert_se(hashmap_ensure_put(&server->bound_leases_by_client_id, &dhcp_lease_hash_ops, &lease->client_id, lease) >= 0); assert_se(hashmap_ensure_put(&server->bound_leases_by_address, NULL, UINT32_TO_PTR(lease->address), lease) >= 0); lease->server = server;