diff options
author | /C=EU/ST=EU/CN=Pablo Neira Ayuso/emailAddress=pablo@netfilter.org </C=EU/ST=EU/CN=Pablo Neira Ayuso/emailAddress=pablo@netfilter.org> | 2008-04-09 15:25:59 +0000 |
---|---|---|
committer | /C=EU/ST=EU/CN=Pablo Neira Ayuso/emailAddress=pablo@netfilter.org </C=EU/ST=EU/CN=Pablo Neira Ayuso/emailAddress=pablo@netfilter.org> | 2008-04-09 15:25:59 +0000 |
commit | 5e5d8cdb3cfed98f1af3f3e265220c90df684674 (patch) | |
tree | 7515c853a8462a4ed13b788c20c231c53c0e651c /include/conntrackd.h | |
parent | 92701a6b224c533346f233061226bee5bb29a5dd (diff) | |
download | conntrack-tools-5e5d8cdb3cfed98f1af3f3e265220c90df684674.tar.gz conntrack-tools-5e5d8cdb3cfed98f1af3f3e265220c90df684674.zip |
improve netlink overrun handling
Diffstat (limited to 'include/conntrackd.h')
-rw-r--r-- | include/conntrackd.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/include/conntrackd.h b/include/conntrackd.h index 69c1303..57ac7e4 100644 --- a/include/conntrackd.h +++ b/include/conntrackd.h @@ -3,6 +3,7 @@ #include "mcast.h" #include "local.h" +#include "alarm.h" #include <stdint.h> #include <stdio.h> @@ -104,6 +105,8 @@ struct ct_general_state { struct nfct_handle *event; /* event handler */ struct nfct_handle *dump; /* dump handler */ + struct nfct_handle *overrun; /* overrun handler */ + struct alarm_block overrun_alarm; struct fds *fds; @@ -158,7 +161,10 @@ struct ct_mode { int (*local)(int fd, int type, void *data); void (*kill)(void); void (*dump)(struct nf_conntrack *ct); - void (*overrun)(void); + int (*overrun)(enum nf_conntrack_msg_type type, + struct nf_conntrack *ct, + void *data); + int (*purge)(void); void (*event_new)(struct nf_conntrack *ct); void (*event_upd)(struct nf_conntrack *ct); int (*event_dst)(struct nf_conntrack *ct); |