syncookies.c (eed29f17f09ad7f400bc245f209acad6a8214fac) | syncookies.c (f930103421f6579719b8252285c94c1195f6e032) |
---|---|
1/* 2 * IPv6 Syncookies implementation for the Linux kernel 3 * 4 * Authors: 5 * Glenn Griffin <ggriffin.kernel@gmail.com> 6 * 7 * Based on IPv4 implementation by Andi Kleen 8 * linux/net/ipv4/syncookies.c --- 156 unchanged lines hidden (view full) --- 165 tcp_parse_options(sock_net(sk), skb, &tcp_opt, 0, NULL); 166 167 if (tcp_opt.saw_tstamp && tcp_opt.rcv_tsecr) { 168 tsoff = secure_tcpv6_ts_off(ipv6_hdr(skb)->daddr.s6_addr32, 169 ipv6_hdr(skb)->saddr.s6_addr32); 170 tcp_opt.rcv_tsecr -= tsoff; 171 } 172 | 1/* 2 * IPv6 Syncookies implementation for the Linux kernel 3 * 4 * Authors: 5 * Glenn Griffin <ggriffin.kernel@gmail.com> 6 * 7 * Based on IPv4 implementation by Andi Kleen 8 * linux/net/ipv4/syncookies.c --- 156 unchanged lines hidden (view full) --- 165 tcp_parse_options(sock_net(sk), skb, &tcp_opt, 0, NULL); 166 167 if (tcp_opt.saw_tstamp && tcp_opt.rcv_tsecr) { 168 tsoff = secure_tcpv6_ts_off(ipv6_hdr(skb)->daddr.s6_addr32, 169 ipv6_hdr(skb)->saddr.s6_addr32); 170 tcp_opt.rcv_tsecr -= tsoff; 171 } 172 |
173 if (!cookie_timestamp_decode(&tcp_opt)) | 173 if (!cookie_timestamp_decode(sock_net(sk), &tcp_opt)) |
174 goto out; 175 176 ret = NULL; 177 req = inet_reqsk_alloc(&tcp6_request_sock_ops, sk, false); 178 if (!req) 179 goto out; 180 181 ireq = inet_rsk(req); --- 78 unchanged lines hidden --- | 174 goto out; 175 176 ret = NULL; 177 req = inet_reqsk_alloc(&tcp6_request_sock_ops, sk, false); 178 if (!req) 179 goto out; 180 181 ireq = inet_rsk(req); --- 78 unchanged lines hidden --- |