tcp: md5: add more const attributes

Now tcp_md5_hash_header() has a const tcphdr argument, we can add more
const attributes to callers.

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Eric Dumazet 2011-10-24 02:46:04 -04:00 committed by David S. Miller
parent 8f9f4668b3
commit 318cf7aaa0
3 changed files with 22 additions and 20 deletions

View File

@ -1185,8 +1185,9 @@ struct tcp_md5sig_pool {
/* - functions */ /* - functions */
extern int tcp_v4_md5_hash_skb(char *md5_hash, struct tcp_md5sig_key *key, extern int tcp_v4_md5_hash_skb(char *md5_hash, struct tcp_md5sig_key *key,
struct sock *sk, struct request_sock *req, const struct sock *sk,
struct sk_buff *skb); const struct request_sock *req,
const struct sk_buff *skb);
extern struct tcp_md5sig_key * tcp_v4_md5_lookup(struct sock *sk, extern struct tcp_md5sig_key * tcp_v4_md5_lookup(struct sock *sk,
struct sock *addr_sk); struct sock *addr_sk);
extern int tcp_v4_md5_do_add(struct sock *sk, __be32 addr, u8 *newkey, extern int tcp_v4_md5_do_add(struct sock *sk, __be32 addr, u8 *newkey,
@ -1448,9 +1449,9 @@ struct tcp_sock_af_ops {
struct sock *addr_sk); struct sock *addr_sk);
int (*calc_md5_hash) (char *location, int (*calc_md5_hash) (char *location,
struct tcp_md5sig_key *md5, struct tcp_md5sig_key *md5,
struct sock *sk, const struct sock *sk,
struct request_sock *req, const struct request_sock *req,
struct sk_buff *skb); const struct sk_buff *skb);
int (*md5_add) (struct sock *sk, int (*md5_add) (struct sock *sk,
struct sock *addr_sk, struct sock *addr_sk,
u8 *newkey, u8 *newkey,
@ -1467,9 +1468,9 @@ struct tcp_request_sock_ops {
struct request_sock *req); struct request_sock *req);
int (*calc_md5_hash) (char *location, int (*calc_md5_hash) (char *location,
struct tcp_md5sig_key *md5, struct tcp_md5sig_key *md5,
struct sock *sk, const struct sock *sk,
struct request_sock *req, const struct request_sock *req,
struct sk_buff *skb); const struct sk_buff *skb);
#endif #endif
}; };

View File

@ -92,7 +92,7 @@ EXPORT_SYMBOL(sysctl_tcp_low_latency);
static struct tcp_md5sig_key *tcp_v4_md5_do_lookup(struct sock *sk, static struct tcp_md5sig_key *tcp_v4_md5_do_lookup(struct sock *sk,
__be32 addr); __be32 addr);
static int tcp_v4_md5_hash_hdr(char *md5_hash, struct tcp_md5sig_key *key, static int tcp_v4_md5_hash_hdr(char *md5_hash, struct tcp_md5sig_key *key,
__be32 daddr, __be32 saddr, struct tcphdr *th); __be32 daddr, __be32 saddr, const struct tcphdr *th);
#else #else
static inline static inline
struct tcp_md5sig_key *tcp_v4_md5_do_lookup(struct sock *sk, __be32 addr) struct tcp_md5sig_key *tcp_v4_md5_do_lookup(struct sock *sk, __be32 addr)
@ -1090,7 +1090,7 @@ static int tcp_v4_md5_hash_pseudoheader(struct tcp_md5sig_pool *hp,
} }
static int tcp_v4_md5_hash_hdr(char *md5_hash, struct tcp_md5sig_key *key, static int tcp_v4_md5_hash_hdr(char *md5_hash, struct tcp_md5sig_key *key,
__be32 daddr, __be32 saddr, struct tcphdr *th) __be32 daddr, __be32 saddr, const struct tcphdr *th)
{ {
struct tcp_md5sig_pool *hp; struct tcp_md5sig_pool *hp;
struct hash_desc *desc; struct hash_desc *desc;
@ -1122,12 +1122,12 @@ clear_hash_noput:
} }
int tcp_v4_md5_hash_skb(char *md5_hash, struct tcp_md5sig_key *key, int tcp_v4_md5_hash_skb(char *md5_hash, struct tcp_md5sig_key *key,
struct sock *sk, struct request_sock *req, const struct sock *sk, const struct request_sock *req,
struct sk_buff *skb) const struct sk_buff *skb)
{ {
struct tcp_md5sig_pool *hp; struct tcp_md5sig_pool *hp;
struct hash_desc *desc; struct hash_desc *desc;
struct tcphdr *th = tcp_hdr(skb); const struct tcphdr *th = tcp_hdr(skb);
__be32 saddr, daddr; __be32 saddr, daddr;
if (sk) { if (sk) {
@ -1172,7 +1172,7 @@ clear_hash_noput:
} }
EXPORT_SYMBOL(tcp_v4_md5_hash_skb); EXPORT_SYMBOL(tcp_v4_md5_hash_skb);
static int tcp_v4_inbound_md5_hash(struct sock *sk, struct sk_buff *skb) static int tcp_v4_inbound_md5_hash(struct sock *sk, const struct sk_buff *skb)
{ {
/* /*
* This gets called for each TCP segment that arrives * This gets called for each TCP segment that arrives

View File

@ -761,7 +761,7 @@ static int tcp_v6_md5_hash_pseudoheader(struct tcp_md5sig_pool *hp,
static int tcp_v6_md5_hash_hdr(char *md5_hash, struct tcp_md5sig_key *key, static int tcp_v6_md5_hash_hdr(char *md5_hash, struct tcp_md5sig_key *key,
const struct in6_addr *daddr, struct in6_addr *saddr, const struct in6_addr *daddr, struct in6_addr *saddr,
struct tcphdr *th) const struct tcphdr *th)
{ {
struct tcp_md5sig_pool *hp; struct tcp_md5sig_pool *hp;
struct hash_desc *desc; struct hash_desc *desc;
@ -793,13 +793,14 @@ clear_hash_noput:
} }
static int tcp_v6_md5_hash_skb(char *md5_hash, struct tcp_md5sig_key *key, static int tcp_v6_md5_hash_skb(char *md5_hash, struct tcp_md5sig_key *key,
struct sock *sk, struct request_sock *req, const struct sock *sk,
struct sk_buff *skb) const struct request_sock *req,
const struct sk_buff *skb)
{ {
const struct in6_addr *saddr, *daddr; const struct in6_addr *saddr, *daddr;
struct tcp_md5sig_pool *hp; struct tcp_md5sig_pool *hp;
struct hash_desc *desc; struct hash_desc *desc;
struct tcphdr *th = tcp_hdr(skb); const struct tcphdr *th = tcp_hdr(skb);
if (sk) { if (sk) {
saddr = &inet6_sk(sk)->saddr; saddr = &inet6_sk(sk)->saddr;
@ -842,12 +843,12 @@ clear_hash_noput:
return 1; return 1;
} }
static int tcp_v6_inbound_md5_hash (struct sock *sk, struct sk_buff *skb) static int tcp_v6_inbound_md5_hash(struct sock *sk, const struct sk_buff *skb)
{ {
const __u8 *hash_location = NULL; const __u8 *hash_location = NULL;
struct tcp_md5sig_key *hash_expected; struct tcp_md5sig_key *hash_expected;
const struct ipv6hdr *ip6h = ipv6_hdr(skb); const struct ipv6hdr *ip6h = ipv6_hdr(skb);
struct tcphdr *th = tcp_hdr(skb); const struct tcphdr *th = tcp_hdr(skb);
int genhash; int genhash;
u8 newhash[16]; u8 newhash[16];