From 6bcc6a45573f387fa6c1682069da7ee9036cabe2 Mon Sep 17 00:00:00 2001 From: Neale Ranns Date: Tue, 15 Oct 2019 15:47:55 +0000 Subject: dhcp: fix crash on unicast renewal send Type: fix - when the addresses were learnt a copy of the client was sent to the main thread, this meant the unicast adjacecny was saved on the copy not on the original. - Add logging. - Improve the proxy-node that hands the clint packets so the DHCP packets are traced. - allow a renewal to configure new address data Change-Id: I6ab0afcccbc4a1cdefdd1b8beeda8fc7ba20ec1f Signed-off-by: Neale Ranns --- src/plugins/dhcp/dhcp_api.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'src/plugins/dhcp/dhcp_api.c') diff --git a/src/plugins/dhcp/dhcp_api.c b/src/plugins/dhcp/dhcp_api.c index 61efaba09b0..744d8386d44 100644 --- a/src/plugins/dhcp/dhcp_api.c +++ b/src/plugins/dhcp/dhcp_api.c @@ -269,10 +269,12 @@ dhcp_client_lease_encode (vl_api_dhcp_lease_t * lease, clib_memcpy (&lease->hostname, client->hostname, len); lease->hostname[len] = 0; - lease->mask_width = client->subnet_mask_width; - clib_memcpy (&lease->host_address.un, (u8 *) & client->leased_address, + lease->mask_width = client->installed.subnet_mask_width; + clib_memcpy (&lease->host_address.un, + (u8 *) & client->installed.leased_address, sizeof (ip4_address_t)); - clib_memcpy (&lease->router_address.un, (u8 *) & client->router_address, + clib_memcpy (&lease->router_address.un, + (u8 *) & client->installed.router_address, sizeof (ip4_address_t)); lease->count = vec_len (client->domain_server_address); -- cgit 1.2.3-korg