diff options
Diffstat (limited to 'include/net/inet_sock.h')
| -rw-r--r-- | include/net/inet_sock.h | 9 | 
1 files changed, 9 insertions, 0 deletions
| diff --git a/include/net/inet_sock.h b/include/net/inet_sock.h index 7235ae73a1e..9528e10fa0b 100644 --- a/include/net/inet_sock.h +++ b/include/net/inet_sock.h @@ -88,6 +88,7 @@ struct inet_request_sock {  				acked	   : 1,  				no_srccheck: 1;  	kmemcheck_bitfield_end(flags); +	u32                     ir_mark;  	struct ip_options_rcu	*opt;  }; @@ -96,6 +97,14 @@ static inline struct inet_request_sock *inet_rsk(const struct request_sock *sk)  	return (struct inet_request_sock *)sk;  } +static inline u32 inet_request_mark(struct sock *sk, struct sk_buff *skb) +{ +	if (!sk->sk_mark && sock_net(sk)->ipv4.sysctl_tcp_fwmark_accept) +		return skb->mark; + +	return sk->sk_mark; +} +  struct inet_cork {  	unsigned int		flags;  	__be32			addr; |