| Age | Commit message (Collapse) | Author | Lines |
|
|
|
|
|
|
|
The existing description was incorrect for socket addresses, and
misleading: users would see “invalid IP address syntax” and suppose they
were supposed to provide an IP address rather than a socket address.
I contemplated making it two variants (IP, socket), but realised we can
do still better for the IPv4 and IPv6 types, so here it is as six.
I contemplated more precise error descriptions (e.g. “invalid IPv6
socket address syntax: expected a decimal scope ID after %”), but that’s
a more invasive change, and probably not worthwhile anyway.
|
|
Co-authored-by: Cheng XU <3105373+xu-cheng@users.noreply.github.com>
|
|
|
|
Now that there can't be a bunch of leading zeros, parsing can be
optimized a bit.
|
|
|
|
In its original specification, leading zero in Ipv4 string is interpreted
as octal literals. So a IP address 0127.0.0.1 actually means 87.0.0.1.
This confusion can lead to many security vulnerabilities. Therefore, in
[IETF RFC 6943], it suggests to disallow octal/hexadecimal format in Ipv4
string all together.
Existing implementation already disallows hexadecimal numbers. This commit
makes Parser reject octal numbers.
Fixes #83648.
[IETF RFC 6943]: https://tools.ietf.org/html/rfc6943#section-3.1.1
|
|
Also add some missing punctuation in doc and code comments.
|
|
|
|
|
|
|
|
|
|
Also doing fmt inplace as requested.
|
|
|
|
|