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:
		
					parent
					
						
							
								8f9f4668b3
							
						
					
				
			
			
				commit
				
					
						318cf7aaa0
					
				
			
		
					 3 changed files with 22 additions and 20 deletions
				
			
		| 
						 | 
					@ -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
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -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
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -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];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue