@@ -24,6 +24,8 @@ MODULE_DESCRIPTION("Amanda NAT helper");
MODULE_LICENSE("GPL");
MODULE_ALIAS_NFCT_HELPER_NAT("amanda");
+static struct nf_conntrack_helper_nat helper_nat_amanda;
+
static unsigned int help(struct sk_buff *skb,
enum ip_conntrack_info ctinfo,
unsigned int protoff,
@@ -74,6 +76,7 @@ static unsigned int help(struct sk_buff *skb,
static void __exit nf_nat_amanda_fini(void)
{
+ nf_conntrack_helper_nat_unregister(&helper_nat_amanda);
RCU_INIT_POINTER(nf_nat_amanda_hook, NULL);
synchronize_rcu();
}
@@ -81,6 +84,10 @@ static void __exit nf_nat_amanda_fini(void)
static int __init nf_nat_amanda_init(void)
{
BUG_ON(nf_nat_amanda_hook != NULL);
+ nf_ct_helper_nat_init(&helper_nat_amanda,
+ NF_CT_NAT_HELPER_MOD_NAME("amanda"),
+ THIS_MODULE);
+ nf_conntrack_helper_nat_register(&helper_nat_amanda);
RCU_INIT_POINTER(nf_nat_amanda_hook, help);
return 0;
}
Signed-off-by: Flavio Leitner <fbl@sysclose.org> --- net/netfilter/nf_nat_amanda.c | 7 +++++++ 1 file changed, 7 insertions(+)