diff options
author | /C=DE/ST=Berlin/L=Berlin/O=Netfilter Project/OU=Development/CN=pablo/emailAddress=pablo@netfilter.org </C=DE/ST=Berlin/L=Berlin/O=Netfilter Project/OU=Development/CN=pablo/emailAddress=pablo@netfilter.org> | 2005-12-03 22:50:27 +0000 |
---|---|---|
committer | /C=DE/ST=Berlin/L=Berlin/O=Netfilter Project/OU=Development/CN=pablo/emailAddress=pablo@netfilter.org </C=DE/ST=Berlin/L=Berlin/O=Netfilter Project/OU=Development/CN=pablo/emailAddress=pablo@netfilter.org> | 2005-12-03 22:50:27 +0000 |
commit | 25b2d74cebc9680dde4028f2f50aec396b29559e (patch) | |
tree | 30c9403c402cc6c4184e8546f1d2b876e84886df /include/libnetfilter_conntrack/libnetfilter_conntrack.h | |
parent | ade771be804b64a5d5a5aede5d1a6d4fe6e6a43b (diff) |
o Fixed bugs in UDP and SCTP protocol handlers (parse_proto)
o Added the comparison infrastructure for layer-4 protocols
o Added libnetfilter_conntrack_[tcp|udp|icmp|sctp].h that contains the protocol flags used by the comparison infrastructure
o Added nfct_conntrack_compare to compare two conntracks based on flags
o Killed nfct_event_netlink_handler
o nfct_event_[conntrack|expect] requires ROOT privileges (reason: netlink multicast)
o Bumped version to 0.29
Diffstat (limited to 'include/libnetfilter_conntrack/libnetfilter_conntrack.h')
-rw-r--r-- | include/libnetfilter_conntrack/libnetfilter_conntrack.h | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/include/libnetfilter_conntrack/libnetfilter_conntrack.h b/include/libnetfilter_conntrack/libnetfilter_conntrack.h index 9fbb969..a93e246 100644 --- a/include/libnetfilter_conntrack/libnetfilter_conntrack.h +++ b/include/libnetfilter_conntrack/libnetfilter_conntrack.h @@ -108,6 +108,11 @@ struct nfct_expect { u_int32_t id; }; +struct nfct_conntrack_compare { + struct nfct_conntrack *ct; + unsigned int flag; + unsigned int protoflag; +}; enum { NFCT_STATUS_BIT = 0, @@ -234,10 +239,12 @@ extern void nfct_unregister_callback(struct nfct_handle *cth); /* * callback displayers */ -extern int nfct_default_conntrack_display(void *arg, unsigned int, int, void *); -extern int nfct_default_conntrack_display_id(void *arg, unsigned int, int, void *); -extern int nfct_default_expect_display(void *arg, unsigned int, int, void *); -extern int nfct_default_expect_display_id(void *arg, unsigned int, int, void *); +extern int nfct_default_conntrack_display(void *, unsigned int, int, void *); +extern int nfct_default_conntrack_display_id(void *, unsigned int, int, void *); +extern int nfct_default_expect_display(void *, unsigned int, int, void *); +extern int nfct_default_expect_display_id(void *, unsigned int, int, void *); +extern int nfct_default_conntrack_event_display(void *, unsigned int, int, + void *); /* * [Create|update|get|destroy] conntracks @@ -282,6 +289,14 @@ extern int nfct_sprintf_mark(char *buf, struct nfct_conntrack *ct); extern int nfct_sprintf_use(char *buf, struct nfct_conntrack *ct); extern int nfct_sprintf_id(char *buf, u_int32_t id); +/* + * Conntrack comparison + */ +extern int nfct_conntrack_compare(struct nfct_conntrack *ct1, + struct nfct_conntrack *ct2, + unsigned int cmp_flag, + unsigned int cmp_protoflag); + /* * Expectations */ |