Searched hist:f8ab18d2d987a59ccbf0495032b2aef05b730037 (Results 1 – 3 of 3) sorted by relevance
/linux/net/ipv6/ |
H A D | tcp_ipv6.c | diff f8ab18d2d987a59ccbf0495032b2aef05b730037 Sat Sep 29 00:18:35 CEST 2007 David S. Miller <davem@sunset.davemloft.net> [TCP]: Fix MD5 signature handling on big-endian.
Based upon a report and initial patch by Peter Lieven.
tcp4_md5sig_key and tcp6_md5sig_key need to start with the exact same members as tcp_md5sig_key. Because they are both cast to that type by tcp_v{4,6}_md5_do_lookup().
Unfortunately tcp{4,6}_md5sig_key use a u16 for the key length instead of a u8, which is what tcp_md5sig_key uses. This just so happens to work by accident on little-endian, but on big-endian it doesn't.
Instead of casting, just place tcp_md5sig_key as the first member of the address-family specific structures, adjust the access sites, and kill off the ugly casts.
Signed-off-by: David S. Miller <davem@davemloft.net>
|
/linux/include/net/ |
H A D | tcp.h | diff f8ab18d2d987a59ccbf0495032b2aef05b730037 Sat Sep 29 00:18:35 CEST 2007 David S. Miller <davem@sunset.davemloft.net> [TCP]: Fix MD5 signature handling on big-endian.
Based upon a report and initial patch by Peter Lieven.
tcp4_md5sig_key and tcp6_md5sig_key need to start with the exact same members as tcp_md5sig_key. Because they are both cast to that type by tcp_v{4,6}_md5_do_lookup().
Unfortunately tcp{4,6}_md5sig_key use a u16 for the key length instead of a u8, which is what tcp_md5sig_key uses. This just so happens to work by accident on little-endian, but on big-endian it doesn't.
Instead of casting, just place tcp_md5sig_key as the first member of the address-family specific structures, adjust the access sites, and kill off the ugly casts.
Signed-off-by: David S. Miller <davem@davemloft.net>
|
/linux/net/ipv4/ |
H A D | tcp_ipv4.c | diff f8ab18d2d987a59ccbf0495032b2aef05b730037 Sat Sep 29 00:18:35 CEST 2007 David S. Miller <davem@sunset.davemloft.net> [TCP]: Fix MD5 signature handling on big-endian.
Based upon a report and initial patch by Peter Lieven.
tcp4_md5sig_key and tcp6_md5sig_key need to start with the exact same members as tcp_md5sig_key. Because they are both cast to that type by tcp_v{4,6}_md5_do_lookup().
Unfortunately tcp{4,6}_md5sig_key use a u16 for the key length instead of a u8, which is what tcp_md5sig_key uses. This just so happens to work by accident on little-endian, but on big-endian it doesn't.
Instead of casting, just place tcp_md5sig_key as the first member of the address-family specific structures, adjust the access sites, and kill off the ugly casts.
Signed-off-by: David S. Miller <davem@davemloft.net>
|