#include <linux/module.h>
#include <net/ip.h>
#include <net/tcp.h>
#include <net/route.h>
#include <net/dst.h>
#include <net/netfilter/ipv4/nf_reject.h>
#include <linux/netfilter_ipv4.h>
#include <linux/netfilter_bridge.h>
static int nf_reject_iphdr_validate(struct sk_buff *skb)
{ … }
struct sk_buff *nf_reject_skb_v4_tcp_reset(struct net *net,
struct sk_buff *oldskb,
const struct net_device *dev,
int hook)
{ … }
EXPORT_SYMBOL_GPL(…);
struct sk_buff *nf_reject_skb_v4_unreach(struct net *net,
struct sk_buff *oldskb,
const struct net_device *dev,
int hook, u8 code)
{ … }
EXPORT_SYMBOL_GPL(…);
const struct tcphdr *nf_reject_ip_tcphdr_get(struct sk_buff *oldskb,
struct tcphdr *_oth, int hook)
{ … }
EXPORT_SYMBOL_GPL(…);
struct iphdr *nf_reject_iphdr_put(struct sk_buff *nskb,
const struct sk_buff *oldskb,
__u8 protocol, int ttl)
{ … }
EXPORT_SYMBOL_GPL(…);
void nf_reject_ip_tcphdr_put(struct sk_buff *nskb, const struct sk_buff *oldskb,
const struct tcphdr *oth)
{ … }
EXPORT_SYMBOL_GPL(…);
static int nf_reject_fill_skb_dst(struct sk_buff *skb_in)
{ … }
void nf_send_reset(struct net *net, struct sock *sk, struct sk_buff *oldskb,
int hook)
{ … }
EXPORT_SYMBOL_GPL(…);
void nf_send_unreach(struct sk_buff *skb_in, int code, int hook)
{ … }
EXPORT_SYMBOL_GPL(…);
MODULE_LICENSE(…) …;
MODULE_DESCRIPTION(…) …;