diff options
author | Eric Dumazet <edumazet@google.com> | 2022-07-26 11:57:43 +0000 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2022-07-27 10:18:21 -0700 |
commit | e62d2e110356093c034998e093675df83057e511 (patch) | |
tree | 1f814c250ba21d175b77c33f04156427a2ef22d1 /net/psample | |
parent | 5a159128faff151b7fe5f4eb0f310b1e0a2d56bf (diff) | |
download | linux-e62d2e110356093c034998e093675df83057e511.tar.gz linux-e62d2e110356093c034998e093675df83057e511.tar.bz2 linux-e62d2e110356093c034998e093675df83057e511.zip |
tcp: md5: fix IPv4-mapped support
After the blamed commit, IPv4 SYN packets handled
by a dual stack IPv6 socket are dropped, even if
perfectly valid.
$ nstat | grep MD5
TcpExtTCPMD5Failure 5 0.0
For a dual stack listener, an incoming IPv4 SYN packet
would call tcp_inbound_md5_hash() with @family == AF_INET,
while tp->af_specific is pointing to tcp_sock_ipv6_specific.
Only later when an IPv4-mapped child is created, tp->af_specific
is changed to tcp_sock_ipv6_mapped_specific.
Fixes: 7bbb765b7349 ("net/tcp: Merge TCP-MD5 inbound callbacks")
Reported-by: Brian Vazquez <brianvv@google.com>
Signed-off-by: Eric Dumazet <edumazet@google.com>
Reviewed-by: David Ahern <dsahern@kernel.org>
Reviewed-by: Dmitry Safonov <dima@arista.com>
Tested-by: Leonard Crestez <cdleonard@gmail.com>
Link: https://lore.kernel.org/r/20220726115743.2759832-1-edumazet@google.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'net/psample')
0 files changed, 0 insertions, 0 deletions