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 */
12 struct ip_rt_info {
13 __be32 daddr;
14 __be32 saddr;
15 u_int8_t tos;
16 u_int32_t mark;
17 };
18
19 int ip_route_me_harder(struct net *net, struct sk_buff *skb, unsigned addr_type);
20
21 struct 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 int nf_ip_route(struct net *net, struct dst_entry **dst, struct flowi *fl,
27 bool strict);
28 int nf_ip_reroute(struct sk_buff *skb, const struct nf_queue_entry *entry);
29 #else
nf_ip_checksum(struct sk_buff * skb,unsigned int hook,unsigned int dataoff,u_int8_t protocol)30 static inline __sum16 nf_ip_checksum(struct sk_buff *skb, unsigned int hook,
31 unsigned int dataoff, u_int8_t protocol)
32 {
33 return 0;
34 }
nf_ip_route(struct net * net,struct dst_entry ** dst,struct flowi * fl,bool strict)35 static inline int nf_ip_route(struct net *net, struct dst_entry **dst,
36 struct flowi *fl, bool strict)
37 {
38 return -EOPNOTSUPP;
39 }
nf_ip_reroute(struct sk_buff * skb,const struct nf_queue_entry * entry)40 static inline int nf_ip_reroute(struct sk_buff *skb,
41 const struct nf_queue_entry *entry)
42 {
43 return -EOPNOTSUPP;
44 }
45 #endif /* CONFIG_INET */
46
47 #endif /*__LINUX_IP_NETFILTER_H*/
48