diff options
Diffstat (limited to 'include/net/udp.h')
-rw-r--r-- | include/net/udp.h | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/include/net/udp.h b/include/net/udp.h index 70f941368ace..07f9b70962f6 100644 --- a/include/net/udp.h +++ b/include/net/udp.h | |||
@@ -158,6 +158,24 @@ static inline __sum16 udp_v4_check(int len, __be32 saddr, | |||
158 | void udp_set_csum(bool nocheck, struct sk_buff *skb, | 158 | void udp_set_csum(bool nocheck, struct sk_buff *skb, |
159 | __be32 saddr, __be32 daddr, int len); | 159 | __be32 saddr, __be32 daddr, int len); |
160 | 160 | ||
161 | struct sk_buff **udp_gro_receive(struct sk_buff **head, struct sk_buff *skb, | ||
162 | struct udphdr *uh); | ||
163 | int udp_gro_complete(struct sk_buff *skb, int nhoff); | ||
164 | |||
165 | static inline struct udphdr *udp_gro_udphdr(struct sk_buff *skb) | ||
166 | { | ||
167 | struct udphdr *uh; | ||
168 | unsigned int hlen, off; | ||
169 | |||
170 | off = skb_gro_offset(skb); | ||
171 | hlen = off + sizeof(*uh); | ||
172 | uh = skb_gro_header_fast(skb, off); | ||
173 | if (skb_gro_header_hard(skb, hlen)) | ||
174 | uh = skb_gro_header_slow(skb, hlen, off); | ||
175 | |||
176 | return uh; | ||
177 | } | ||
178 | |||
161 | /* hash routines shared between UDPv4/6 and UDP-Litev4/6 */ | 179 | /* hash routines shared between UDPv4/6 and UDP-Litev4/6 */ |
162 | static inline void udp_lib_hash(struct sock *sk) | 180 | static inline void udp_lib_hash(struct sock *sk) |
163 | { | 181 | { |
@@ -221,7 +239,8 @@ int udp_ioctl(struct sock *sk, int cmd, unsigned long arg); | |||
221 | int udp_disconnect(struct sock *sk, int flags); | 239 | int udp_disconnect(struct sock *sk, int flags); |
222 | unsigned int udp_poll(struct file *file, struct socket *sock, poll_table *wait); | 240 | unsigned int udp_poll(struct file *file, struct socket *sock, poll_table *wait); |
223 | struct sk_buff *skb_udp_tunnel_segment(struct sk_buff *skb, | 241 | struct sk_buff *skb_udp_tunnel_segment(struct sk_buff *skb, |
224 | netdev_features_t features); | 242 | netdev_features_t features, |
243 | bool is_ipv6); | ||
225 | int udp_lib_getsockopt(struct sock *sk, int level, int optname, | 244 | int udp_lib_getsockopt(struct sock *sk, int level, int optname, |
226 | char __user *optval, int __user *optlen); | 245 | char __user *optval, int __user *optlen); |
227 | int udp_lib_setsockopt(struct sock *sk, int level, int optname, | 246 | int udp_lib_setsockopt(struct sock *sk, int level, int optname, |