at v4.18 58 lines 1.6 kB view raw
1/* IPv4-specific defines for netfilter. 2 * (C)1998 Rusty Russell -- This code is GPL. 3 */ 4#ifndef __LINUX_IP_NETFILTER_H 5#define __LINUX_IP_NETFILTER_H 6 7#include <uapi/linux/netfilter_ipv4.h> 8 9/* Extra routing may needed on local out, as the QUEUE target never returns 10 * control to the table. 11 */ 12struct ip_rt_info { 13 __be32 daddr; 14 __be32 saddr; 15 u_int8_t tos; 16 u_int32_t mark; 17}; 18 19int ip_route_me_harder(struct net *net, struct sk_buff *skb, unsigned addr_type); 20 21struct nf_queue_entry; 22 23#ifdef CONFIG_INET 24__sum16 nf_ip_checksum(struct sk_buff *skb, unsigned int hook, 25 unsigned int dataoff, u_int8_t protocol); 26__sum16 nf_ip_checksum_partial(struct sk_buff *skb, unsigned int hook, 27 unsigned int dataoff, unsigned int len, 28 u_int8_t protocol); 29int nf_ip_route(struct net *net, struct dst_entry **dst, struct flowi *fl, 30 bool strict); 31int nf_ip_reroute(struct sk_buff *skb, const struct nf_queue_entry *entry); 32#else 33static inline __sum16 nf_ip_checksum(struct sk_buff *skb, unsigned int hook, 34 unsigned int dataoff, u_int8_t protocol) 35{ 36 return 0; 37} 38static inline __sum16 nf_ip_checksum_partial(struct sk_buff *skb, 39 unsigned int hook, 40 unsigned int dataoff, 41 unsigned int len, 42 u_int8_t protocol) 43{ 44 return 0; 45} 46static inline int nf_ip_route(struct net *net, struct dst_entry **dst, 47 struct flowi *fl, bool strict) 48{ 49 return -EOPNOTSUPP; 50} 51static inline int nf_ip_reroute(struct sk_buff *skb, 52 const struct nf_queue_entry *entry) 53{ 54 return -EOPNOTSUPP; 55} 56#endif /* CONFIG_INET */ 57 58#endif /*__LINUX_IP_NETFILTER_H*/