mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 14:37:45 +00:00
AK: Serialize URL hosts with 'concept-host-serializer'
In order to follow spec text to achieve this, we need to change the underlying representation of a host in AK::URL to deserialized format. Before this, we were parsing the host and then immediately serializing it again. Making that change resulted in a whole bunch of fallout. After this change, callers can access the serialized data through this concept-host-serializer. The functional end result of this change is that IPv6 hosts are now correctly serialized to be surrounded with '[' and ']'.
This commit is contained in:
parent
768f070b86
commit
8751be09f9
36 changed files with 175 additions and 143 deletions
|
@ -36,10 +36,9 @@ struct ProxyData {
|
|||
|
||||
proxy_data.type = ProxyData::Type::SOCKS5;
|
||||
|
||||
auto host_ipv4 = IPv4Address::from_string(url.host());
|
||||
if (!host_ipv4.has_value())
|
||||
if (!url.host().has<URL::IPv4Address>())
|
||||
return Error::from_string_literal("Invalid proxy host, must be an IPv4 address");
|
||||
proxy_data.host_ipv4 = host_ipv4->to_u32();
|
||||
proxy_data.host_ipv4 = url.host().get<URL::IPv4Address>();
|
||||
|
||||
auto port = url.port();
|
||||
if (!port.has_value())
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue