Rollup merge of #135745 - bardiharborow:std/net/rfc9602, r=cuviper
Recognise new IPv6 non-global range from IETF RFC 9602 This PR adds the `5f00::/16` range defined by [IETF RFC 9602](https://datatracker.ietf.org/doc/rfc9602/) to those ranges which `Ipv6Addr::is_global` recognises as a non-global IP. This range is used for Segment Routing (SRv6) SIDs. See also: https://www.iana.org/assignments/iana-ipv6-special-registry/iana-ipv6-special-registry.xhtml Unstable tracking issue: #27709
This commit is contained in:
commit
5f6c1a9f57
2 changed files with 4 additions and 0 deletions
|
@ -1623,6 +1623,8 @@ impl Ipv6Addr {
|
|||
// IANA says N/A.
|
||||
|| matches!(self.segments(), [0x2002, _, _, _, _, _, _, _])
|
||||
|| self.is_documentation()
|
||||
// Segment Routing (SRv6) SIDs (`5f00::/16`)
|
||||
|| matches!(self.segments(), [0x5f00, ..])
|
||||
|| self.is_unique_local()
|
||||
|| self.is_unicast_link_local())
|
||||
}
|
||||
|
|
|
@ -689,6 +689,8 @@ fn ipv6_properties() {
|
|||
|
||||
check!("2002::", &[0x20, 0x02, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], unicast_global);
|
||||
|
||||
check!("5f00::", &[0x5f, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], unicast_global);
|
||||
|
||||
check!("fc00::", &[0xfc, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], unique_local);
|
||||
|
||||
check!(
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue