Hi,

On 09/09/2020 14:22, Gert Doering wrote:
> When a SOCKS5 server sends back a reply, it encodes an "address",
> which can be IPv4 (4 bytes), IPv6 (16 bytes) or "a domain name",
> which has a lenght (1 byte) and "a string of length <length>" - so
> when copying bytes, we need to hande "length +1" bytes.
> 
> Our code totally doesn't use this variant of addresses on reception,
> but since this has been pointed out by "tpw_rules" in Trac, fix it,
> so if/when someone works on this again, the foundation is correct.
> 
> While at it, increase buffer size used for sending to handle domain
> names longer than 122 characters (length was already checked, so a
> longer name would not overflow but just "not work").
> 
> v2: increase buf[] len in recv_socks_reply() from 22 to 270 so it
>     is large enough to actually copy a domain name
> 
> v3: increase buf[] len in establish_socks_proxy_passthru() from 128 to
>     270, to handle long domain names in queries
> 
> Reported-By: tpw_rules in Trac
> Trac: #848
> 
> Signed-off-by: Gert Doering <g...@greenie.muc.de>

After a quick discussion on IRC I am fine with this patch, assuming the
whitespace is added after the '+' operator.

Further refactoring of this code will be carried on in later patches.

Regards,

-- 
Antonio Quartulli


_______________________________________________
Openvpn-devel mailing list
Openvpn-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openvpn-devel

Reply via email to