diff options
| author | Tobias Bucher <tobiasbucher5991@gmail.com> | 2022-05-02 23:20:51 +0200 |
|---|---|---|
| committer | Tobias Bucher <tobiasbucher5991@gmail.com> | 2022-05-05 00:45:55 +0200 |
| commit | ed95d502c66b26e3d991dd32f849819c6252385e (patch) | |
| tree | 70c60bf2247c3ce1015e7a9b28baf66b5c978a48 | |
| parent | 24c898504379252fafedc218074af49126da41ec (diff) | |
| download | rust-ed95d502c66b26e3d991dd32f849819c6252385e.tar.gz rust-ed95d502c66b26e3d991dd32f849819c6252385e.zip | |
Make it clear that `to_ipv4` returns an IPv4 address for the IPv6 loopback
| -rw-r--r-- | library/std/src/net/ip.rs | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/library/std/src/net/ip.rs b/library/std/src/net/ip.rs index 036f2919976..f629a1a0f99 100644 --- a/library/std/src/net/ip.rs +++ b/library/std/src/net/ip.rs @@ -138,6 +138,7 @@ pub struct Ipv4Addr { /// /// To convert from an IPv4 address to an IPv4-mapped IPv6 address, use [`Ipv4Addr::to_ipv6_mapped`]. /// Use [`Ipv6Addr::to_ipv4`] to convert an IPv4-mapped IPv6 address to the canonical IPv4 address. +/// Note that this will also convert the IPv6 loopback address `::1` to `0.0.0.1`. /// /// [IETF RFC 4291 Section 2.5.5.2]: https://datatracker.ietf.org/doc/html/rfc4291#section-2.5.5.2 /// @@ -1673,7 +1674,9 @@ impl Ipv6Addr { /// or an [IPv4-mapped] address as defined in [IETF RFC 4291 section 2.5.5.2], /// otherwise returns [`None`]. /// - /// `::a.b.c.d` and `::ffff:a.b.c.d` become `a.b.c.d` + /// Note that this will return an [`IPv4` address] for the IPv6 loopback address `::1`. + /// + /// `::a.b.c.d` and `::ffff:a.b.c.d` become `a.b.c.d`. `::1` becomes `0.0.0.1`. /// All addresses *not* starting with either all zeroes or `::ffff` will return `None`. /// /// [`IPv4` address]: Ipv4Addr |
