From: Pablo Neira Ayuso <pablo@netfilter.org>
To: Thomas Mader <thezema@gmail.com>
Cc: netfilter-devel@lists.netfilter.org
Subject: Re: remove connections notification by conntrack?
Date: Sun, 24 Sep 2006 17:34:15 +0200 [thread overview]
Message-ID: <4516A577.7080802@netfilter.org> (raw)
In-Reply-To: <200609241151.31689.thezema@gmail.com>
[-- Attachment #1: Type: text/plain, Size: 1491 bytes --]
Thomas Mader wrote:
> On Sunday 24 September 2006 05:10, Pablo Neira Ayuso wrote:
>> events & IPCT_DESTROY
>>
>>> printk("We have been notified that connection %d was deleted!\n",
>>> ct->id); }
>>>
>>> return 0;
>>> }
>>>
>>>
>>> static struct notifier_block ctnl_notifier = {
>>> .notifier_call = ipaddr_conntrack_event,
>>> };
>>>
>>>
>>> static int __init init(void)
>>> {
>>> int ret;
>>> need_conntrack();
>>> ret = ip_conntrack_register_notifier(&ctnl_notifier);
>>> if (ret < 0) {
>>> printk("ipaddr_init: cannot register notifier.\n");
>>> goto err_unreg_notifier;
>>> }
>>> //ip_conntrack_destroyed = destroyed_connect;
>>>
>>> printk(KERN_CRIT "init!\n");
>>> return ipt_register_match(&ipaddr_match);
>>>
>>> err_unreg_notifier:
>>> ip_conntrack_unregister_notifier(&ctnl_notifier);
>>> return 1;
>>> }
>>>
>>> But the problem remains the same. It works for TCP and I get properly
>>> notified about those but not about UDP.
>> Try with what I told you above and let me know if it works
>
> No it doesn't. I tried "events & IPCT_DESTROY" already and it didn't work. Now
> I tested it once again with same result.
Works fine here with the toy module attached:
Sep 24 17:30:52 Decadence kernel: protonum=17
Sep 24 17:31:26 Decadence last message repeated 2 times
Sep 24 17:31:47 Decadence kernel: protonum=6
--
The dawn of the fourth age of Linux firewalling is coming; a time of
great struggle and heroic deeds -- J.Kadlecsik got inspired by J.Morris
[-- Attachment #2: modulo.c --]
[-- Type: text/x-csrc, Size: 781 bytes --]
#include <linux/init.h>
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/netfilter.h>
#include <linux/netfilter_ipv4/ip_conntrack.h>
static int conntrack_event(struct notifier_block *this,
unsigned long events,
void *ptr)
{
struct ip_conntrack *ct = (struct ip_conntrack *)ptr;
if (events & IPCT_DESTROY)
printk("protonum=%d\n", ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.dst.protonum);
return 0;
}
static struct notifier_block ctnl_notifier = {
.notifier_call = conntrack_event,
};
static int __init hello_init(void)
{
int ret;
need_conntrack();
ret = ip_conntrack_register_notifier(&ctnl_notifier);
if (ret < 0)
printk("ipaddr_init: cannot register notifier.\n");
return ret;
}
module_init(hello_init);
MODULE_LICENSE("GPL");
next prev parent reply other threads:[~2006-09-24 15:34 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-09-22 11:59 remove connections notification by conntrack? Thomas Mader
2006-09-22 12:58 ` Pablo Neira Ayuso
2006-09-22 13:19 ` Thomas Mader
2006-09-22 15:00 ` Pablo Neira Ayuso
2006-09-23 9:23 ` Thomas Mader
2006-09-24 3:10 ` Pablo Neira Ayuso
2006-09-24 9:51 ` Thomas Mader
2006-09-24 15:34 ` Pablo Neira Ayuso [this message]
2006-10-15 13:01 ` Thomas Mader
2006-10-15 16:11 ` Pablo Neira Ayuso
2006-10-15 17:03 ` Thomas Mader
2006-09-25 17:12 ` Alan Ezust
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4516A577.7080802@netfilter.org \
--to=pablo@netfilter.org \
--cc=netfilter-devel@lists.netfilter.org \
--cc=thezema@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.