[netstack] Simplify DHCP address pool structs

This CL makes the following changes to the AddressPool and
ManagedAddresses structs:

1) Remove the `broadcast` and `network_id` members, which were unused in
the DHCP server.

2) Replace the subnet mask Ipv4Address with the equivalent u8
`prefix_len` in the AddressPool struct. The ManagedAddresses struct
uses a SubnetMask type so we can avoid adding the error handling logic
for converting from a u8 => SubnetMask at the point of use. Instead,
we handle that error when converting from AddressPool =>
ManagedAddresses.

Fixed: 73076
Change-Id: I7a9b979efb9bef25b86dd100fe7e47ccb62a8b17
Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/510758
Commit-Queue: Nick Brown <nickbrow@google.com>
API-Review: Marie Janssen 💖 <jamuraa@google.com>
Reviewed-by: Tamir Duberstein <tamird@google.com>
Reviewed-by: Amanda Tait <atait@google.com>
13 files changed
tree: 54387f866572254e95d8e7a29aff4f7d1d264b98
  1. boards/
  2. build/
  3. buildtools/
  4. bundles/
  5. docs/
  6. examples/
  7. garnet/
  8. products/
  9. scripts/
  10. sdk/
  11. src/
  12. third_party/
  13. tools/
  14. zircon/
  15. .clang-format
  16. .clang-tidy
  17. .git-blame-ignore-revs
  18. .gitattributes
  19. .gitignore
  20. .gn
  21. .style.yapf
  22. AUTHORS
  23. BUILD.gn
  24. CODE_OF_CONDUCT.md
  25. CONTRIBUTING.md
  26. LICENSE
  27. OWNERS
  28. PATENTS
  29. README.md
  30. rustfmt.toml
README.md

Fuchsia

Pink + Purple == Fuchsia (a new operating system)

What is Fuchsia?

Fuchsia is a modular, capability-based operating system. Fuchsia runs on modern 64-bit Intel and ARM processors.

Fuchsia is an open source project with a code of conduct that we expect everyone who interacts with the project to respect.

Read more about Fuchsia's principles.

How can I build and run Fuchsia?

See Getting Started.

Where can I learn more about Fuchsia?

See fuchsia.dev.