commit | ca79013f2be0bae4ad2572fc9e1694c41fe6acee | [log] [tgz] |
---|---|---|
author | Amanda Tait <atait@fuchsia.infra.roller.google.com> | Thu May 06 21:48:05 2021 +0000 |
committer | Copybara-Service <copybara-worker@google.com> | Thu May 06 14:48:49 2021 -0700 |
tree | bb851bb8d7b59e25453dd82133d14f4d52a885c0 | |
parent | 51abf12039e61f1632f299ffa721b073d727dccd [diff] |
[roll] Roll fuchsia [netstack] Change Watcher API to watch DHCP renew The DHCP netemul integration test case for DHCP client renewal formerly did not actually test renewal, something only recently revealed by a test flake. DHCP renewal implies that the client's leased address does not change upon renewal. But the fuchsia.net.interfaces/Watcher API will only emit an event in response to a diff in fuchsia.net.interfaces/Properties. Since DHCP renewal doesn't change the address, no event was being emitted. But DHCP renewal SHOULD emit an event: the address may not change but the address validity time, i.e. the lease expiration time, does change. In order to emit an event under these circumstances, the fuchsia.net.interfaces/Address must be updated to include a valid_until field. This CL makes the appropriate API change and implements it in netstack, thereby allowing the flakey DHCP test that instigated this work to be deflaked and fixed. Specifically: - add `valid_until` field to fuchsia.net.interfaces/Address - update fidl_fuchsia_net_interfaces_ext to use this new field - update clients of fidl_fuchsia_net_interfaces_ext to use field - from the DHCP client add a OfferedAt field to dhcp.Config so that it can be propagated back to netstack - in netstack, derive a value for ValidUntil and pipe it to onPropertiesChange in a []addressPatch so that it may emitted as part of fuchsia.net.interfaces/Properties events - update the DHCP netemul integration test to use a long lease and short renewal time so that the client promptly enters the renewing state but cannot have its lease expire within the test suite timeout - update dhcpd to properly issue custom renewal and rebinding time options in response to configuration Tested: * fx test netstack-gotests * fx test netstack-dhcp-gotests * fx test dhcp-tests * fx test netstack_dhcp_integration_test Original-Fixed: 74365, 75083 Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/520301 Original-Revision: 391dd7211441c1dd6b40042b34e4dadad51c128f GitOrigin-RevId: 02287e4cc0ed9baddc07f62c4e562eb73f06e8e8 Change-Id: I629afa59304f646759e3ca61d737a96f1f669289
This repository contains Fuchsia's Global Integration manifest files.
All changes should be made to the internal version of this repository. Our infrastructure automatically updates this version when the internal one changes.
Currently all changes must be made by a Google employee. Non-Google employees wishing to make a change can ask for assistance via the IRC channel #fuchsia
on Freenode.
First install Jiri.
Next run:
$ jiri init $ jiri import minimal https://fuchsia.googlesource.com/integration $ jiri update
Third party projects should have their own subdirectory in ./third_party
.