aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexey Kodanev <alexey.kodanev@oracle.com>2017-03-09 05:53:55 -0500
committerDavid S. Miller <davem@davemloft.net>2017-03-09 21:25:34 -0500
commita30aad50c26cac63026e5dfcc2e055ae63fe6ef7 (patch)
treeb805ec64727ce857ebde0ef9694bd50cca74ba1a
parent9efd3831d5ae3babb45a37ae7d6b18642a0745de (diff)
tcp: rename *_sequence_number() to *_seq_and_tsoff()
The functions that are returning tcp sequence number also setup TS offset value, so rename them to better describe their purpose. No functional changes in this patch. Suggested-by: Eric Dumazet <edumazet@google.com> Signed-off-by: Alexey Kodanev <alexey.kodanev@oracle.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--include/net/secure_seq.h6
-rw-r--r--include/net/tcp.h2
-rw-r--r--net/core/secure_seq.c13
-rw-r--r--net/ipv4/tcp_input.c4
-rw-r--r--net/ipv4/tcp_ipv4.c22
-rw-r--r--net/ipv6/tcp_ipv6.c22
6 files changed, 34 insertions, 35 deletions
diff --git a/include/net/secure_seq.h b/include/net/secure_seq.h
index 0caee631a836..fe236b3429f0 100644
--- a/include/net/secure_seq.h
+++ b/include/net/secure_seq.h
@@ -6,10 +6,10 @@
6u32 secure_ipv4_port_ephemeral(__be32 saddr, __be32 daddr, __be16 dport); 6u32 secure_ipv4_port_ephemeral(__be32 saddr, __be32 daddr, __be16 dport);
7u32 secure_ipv6_port_ephemeral(const __be32 *saddr, const __be32 *daddr, 7u32 secure_ipv6_port_ephemeral(const __be32 *saddr, const __be32 *daddr,
8 __be16 dport); 8 __be16 dport);
9u32 secure_tcp_sequence_number(__be32 saddr, __be32 daddr, 9u32 secure_tcp_seq_and_tsoff(__be32 saddr, __be32 daddr,
10 __be16 sport, __be16 dport, u32 *tsoff);
11u32 secure_tcpv6_seq_and_tsoff(const __be32 *saddr, const __be32 *daddr,
10 __be16 sport, __be16 dport, u32 *tsoff); 12 __be16 sport, __be16 dport, u32 *tsoff);
11u32 secure_tcpv6_sequence_number(const __be32 *saddr, const __be32 *daddr,
12 __be16 sport, __be16 dport, u32 *tsoff);
13u64 secure_dccp_sequence_number(__be32 saddr, __be32 daddr, 13u64 secure_dccp_sequence_number(__be32 saddr, __be32 daddr,
14 __be16 sport, __be16 dport); 14 __be16 sport, __be16 dport);
15u64 secure_dccpv6_sequence_number(__be32 *saddr, __be32 *daddr, 15u64 secure_dccpv6_sequence_number(__be32 *saddr, __be32 *daddr,
diff --git a/include/net/tcp.h b/include/net/tcp.h
index 6ec4ea652f3f..bede8f7fa742 100644
--- a/include/net/tcp.h
+++ b/include/net/tcp.h
@@ -1816,7 +1816,7 @@ struct tcp_request_sock_ops {
1816 struct dst_entry *(*route_req)(const struct sock *sk, struct flowi *fl, 1816 struct dst_entry *(*route_req)(const struct sock *sk, struct flowi *fl,
1817 const struct request_sock *req, 1817 const struct request_sock *req,
1818 bool *strict); 1818 bool *strict);
1819 __u32 (*init_seq)(const struct sk_buff *skb, u32 *tsoff); 1819 __u32 (*init_seq_tsoff)(const struct sk_buff *skb, u32 *tsoff);
1820 int (*send_synack)(const struct sock *sk, struct dst_entry *dst, 1820 int (*send_synack)(const struct sock *sk, struct dst_entry *dst,
1821 struct flowi *fl, struct request_sock *req, 1821 struct flowi *fl, struct request_sock *req,
1822 struct tcp_fastopen_cookie *foc, 1822 struct tcp_fastopen_cookie *foc,
diff --git a/net/core/secure_seq.c b/net/core/secure_seq.c
index 758f140b6bed..fb87e78a2cc7 100644
--- a/net/core/secure_seq.c
+++ b/net/core/secure_seq.c
@@ -45,8 +45,8 @@ static u32 seq_scale(u32 seq)
45#endif 45#endif
46 46
47#if IS_ENABLED(CONFIG_IPV6) 47#if IS_ENABLED(CONFIG_IPV6)
48u32 secure_tcpv6_sequence_number(const __be32 *saddr, const __be32 *daddr, 48u32 secure_tcpv6_seq_and_tsoff(const __be32 *saddr, const __be32 *daddr,
49 __be16 sport, __be16 dport, u32 *tsoff) 49 __be16 sport, __be16 dport, u32 *tsoff)
50{ 50{
51 const struct { 51 const struct {
52 struct in6_addr saddr; 52 struct in6_addr saddr;
@@ -66,7 +66,7 @@ u32 secure_tcpv6_sequence_number(const __be32 *saddr, const __be32 *daddr,
66 *tsoff = sysctl_tcp_timestamps == 1 ? (hash >> 32) : 0; 66 *tsoff = sysctl_tcp_timestamps == 1 ? (hash >> 32) : 0;
67 return seq_scale(hash); 67 return seq_scale(hash);
68} 68}
69EXPORT_SYMBOL(secure_tcpv6_sequence_number); 69EXPORT_SYMBOL(secure_tcpv6_seq_and_tsoff);
70 70
71u32 secure_ipv6_port_ephemeral(const __be32 *saddr, const __be32 *daddr, 71u32 secure_ipv6_port_ephemeral(const __be32 *saddr, const __be32 *daddr,
72 __be16 dport) 72 __be16 dport)
@@ -89,14 +89,13 @@ EXPORT_SYMBOL(secure_ipv6_port_ephemeral);
89 89
90#ifdef CONFIG_INET 90#ifdef CONFIG_INET
91 91
92/* secure_tcp_sequence_number(a, b, 0, d) == secure_ipv4_port_ephemeral(a, b, d), 92/* secure_tcp_seq_and_tsoff(a, b, 0, d) == secure_ipv4_port_ephemeral(a, b, d),
93 * but fortunately, `sport' cannot be 0 in any circumstances. If this changes, 93 * but fortunately, `sport' cannot be 0 in any circumstances. If this changes,
94 * it would be easy enough to have the former function use siphash_4u32, passing 94 * it would be easy enough to have the former function use siphash_4u32, passing
95 * the arguments as separate u32. 95 * the arguments as separate u32.
96 */ 96 */
97 97u32 secure_tcp_seq_and_tsoff(__be32 saddr, __be32 daddr,
98u32 secure_tcp_sequence_number(__be32 saddr, __be32 daddr, 98 __be16 sport, __be16 dport, u32 *tsoff)
99 __be16 sport, __be16 dport, u32 *tsoff)
100{ 99{
101 u64 hash; 100 u64 hash;
102 net_secret_init(); 101 net_secret_init();
diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c
index 39c393cc0fd3..96b67a8b18c3 100644
--- a/net/ipv4/tcp_input.c
+++ b/net/ipv4/tcp_input.c
@@ -6324,7 +6324,7 @@ int tcp_conn_request(struct request_sock_ops *rsk_ops,
6324 goto drop_and_free; 6324 goto drop_and_free;
6325 6325
6326 if (isn && tmp_opt.tstamp_ok) 6326 if (isn && tmp_opt.tstamp_ok)
6327 af_ops->init_seq(skb, &tcp_rsk(req)->ts_off); 6327 af_ops->init_seq_tsoff(skb, &tcp_rsk(req)->ts_off);
6328 6328
6329 if (!want_cookie && !isn) { 6329 if (!want_cookie && !isn) {
6330 /* VJ's idea. We save last timestamp seen 6330 /* VJ's idea. We save last timestamp seen
@@ -6366,7 +6366,7 @@ int tcp_conn_request(struct request_sock_ops *rsk_ops,
6366 goto drop_and_release; 6366 goto drop_and_release;
6367 } 6367 }
6368 6368
6369 isn = af_ops->init_seq(skb, &tcp_rsk(req)->ts_off); 6369 isn = af_ops->init_seq_tsoff(skb, &tcp_rsk(req)->ts_off);
6370 } 6370 }
6371 if (!dst) { 6371 if (!dst) {
6372 dst = af_ops->route_req(sk, &fl, req, NULL); 6372 dst = af_ops->route_req(sk, &fl, req, NULL);
diff --git a/net/ipv4/tcp_ipv4.c b/net/ipv4/tcp_ipv4.c
index 9a89b8deafae..7b332ed66488 100644
--- a/net/ipv4/tcp_ipv4.c
+++ b/net/ipv4/tcp_ipv4.c
@@ -94,12 +94,12 @@ static int tcp_v4_md5_hash_hdr(char *md5_hash, const struct tcp_md5sig_key *key,
94struct inet_hashinfo tcp_hashinfo; 94struct inet_hashinfo tcp_hashinfo;
95EXPORT_SYMBOL(tcp_hashinfo); 95EXPORT_SYMBOL(tcp_hashinfo);
96 96
97static u32 tcp_v4_init_sequence(const struct sk_buff *skb, u32 *tsoff) 97static u32 tcp_v4_init_seq_and_tsoff(const struct sk_buff *skb, u32 *tsoff)
98{ 98{
99 return secure_tcp_sequence_number(ip_hdr(skb)->daddr, 99 return secure_tcp_seq_and_tsoff(ip_hdr(skb)->daddr,
100 ip_hdr(skb)->saddr, 100 ip_hdr(skb)->saddr,
101 tcp_hdr(skb)->dest, 101 tcp_hdr(skb)->dest,
102 tcp_hdr(skb)->source, tsoff); 102 tcp_hdr(skb)->source, tsoff);
103} 103}
104 104
105int tcp_twsk_unique(struct sock *sk, struct sock *sktw, void *twp) 105int tcp_twsk_unique(struct sock *sk, struct sock *sktw, void *twp)
@@ -236,11 +236,11 @@ int tcp_v4_connect(struct sock *sk, struct sockaddr *uaddr, int addr_len)
236 rt = NULL; 236 rt = NULL;
237 237
238 if (likely(!tp->repair)) { 238 if (likely(!tp->repair)) {
239 seq = secure_tcp_sequence_number(inet->inet_saddr, 239 seq = secure_tcp_seq_and_tsoff(inet->inet_saddr,
240 inet->inet_daddr, 240 inet->inet_daddr,
241 inet->inet_sport, 241 inet->inet_sport,
242 usin->sin_port, 242 usin->sin_port,
243 &tp->tsoffset); 243 &tp->tsoffset);
244 if (!tp->write_seq) 244 if (!tp->write_seq)
245 tp->write_seq = seq; 245 tp->write_seq = seq;
246 } 246 }
@@ -1249,7 +1249,7 @@ static const struct tcp_request_sock_ops tcp_request_sock_ipv4_ops = {
1249 .cookie_init_seq = cookie_v4_init_sequence, 1249 .cookie_init_seq = cookie_v4_init_sequence,
1250#endif 1250#endif
1251 .route_req = tcp_v4_route_req, 1251 .route_req = tcp_v4_route_req,
1252 .init_seq = tcp_v4_init_sequence, 1252 .init_seq_tsoff = tcp_v4_init_seq_and_tsoff,
1253 .send_synack = tcp_v4_send_synack, 1253 .send_synack = tcp_v4_send_synack,
1254}; 1254};
1255 1255
diff --git a/net/ipv6/tcp_ipv6.c b/net/ipv6/tcp_ipv6.c
index 60a5295a7de6..56f742fff967 100644
--- a/net/ipv6/tcp_ipv6.c
+++ b/net/ipv6/tcp_ipv6.c
@@ -101,12 +101,12 @@ static void inet6_sk_rx_dst_set(struct sock *sk, const struct sk_buff *skb)
101 } 101 }
102} 102}
103 103
104static u32 tcp_v6_init_sequence(const struct sk_buff *skb, u32 *tsoff) 104static u32 tcp_v6_init_seq_and_tsoff(const struct sk_buff *skb, u32 *tsoff)
105{ 105{
106 return secure_tcpv6_sequence_number(ipv6_hdr(skb)->daddr.s6_addr32, 106 return secure_tcpv6_seq_and_tsoff(ipv6_hdr(skb)->daddr.s6_addr32,
107 ipv6_hdr(skb)->saddr.s6_addr32, 107 ipv6_hdr(skb)->saddr.s6_addr32,
108 tcp_hdr(skb)->dest, 108 tcp_hdr(skb)->dest,
109 tcp_hdr(skb)->source, tsoff); 109 tcp_hdr(skb)->source, tsoff);
110} 110}
111 111
112static int tcp_v6_connect(struct sock *sk, struct sockaddr *uaddr, 112static int tcp_v6_connect(struct sock *sk, struct sockaddr *uaddr,
@@ -287,11 +287,11 @@ static int tcp_v6_connect(struct sock *sk, struct sockaddr *uaddr,
287 sk_set_txhash(sk); 287 sk_set_txhash(sk);
288 288
289 if (likely(!tp->repair)) { 289 if (likely(!tp->repair)) {
290 seq = secure_tcpv6_sequence_number(np->saddr.s6_addr32, 290 seq = secure_tcpv6_seq_and_tsoff(np->saddr.s6_addr32,
291 sk->sk_v6_daddr.s6_addr32, 291 sk->sk_v6_daddr.s6_addr32,
292 inet->inet_sport, 292 inet->inet_sport,
293 inet->inet_dport, 293 inet->inet_dport,
294 &tp->tsoffset); 294 &tp->tsoffset);
295 if (!tp->write_seq) 295 if (!tp->write_seq)
296 tp->write_seq = seq; 296 tp->write_seq = seq;
297 } 297 }
@@ -755,7 +755,7 @@ static const struct tcp_request_sock_ops tcp_request_sock_ipv6_ops = {
755 .cookie_init_seq = cookie_v6_init_sequence, 755 .cookie_init_seq = cookie_v6_init_sequence,
756#endif 756#endif
757 .route_req = tcp_v6_route_req, 757 .route_req = tcp_v6_route_req,
758 .init_seq = tcp_v6_init_sequence, 758 .init_seq_tsoff = tcp_v6_init_seq_and_tsoff,
759 .send_synack = tcp_v6_send_synack, 759 .send_synack = tcp_v6_send_synack,
760}; 760};
761 761