From 20ed81b10714dfe78e31e9721e2d4f42b4beabb2 Mon Sep 17 00:00:00 2001 From: Pablo Neira Ayuso Date: Sat, 23 May 2009 11:52:20 +0200 Subject: api: add new callback interface while keeping backward compatibility This patch adds nfct_callback_register2() and nfct_callback_unregister2() that allows to register a callback function with a new callback interface that includes the Netlink message. This fixes an early design error. This is not nice but it is the only way to resolve this problem without breaking backward (I don't like function versioning, it is messy). Signed-off-by: Pablo Neira Ayuso --- include/libnetfilter_conntrack/libnetfilter_conntrack.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'include/libnetfilter_conntrack/libnetfilter_conntrack.h') diff --git a/include/libnetfilter_conntrack/libnetfilter_conntrack.h b/include/libnetfilter_conntrack/libnetfilter_conntrack.h index 1e23b0b..ec85066 100644 --- a/include/libnetfilter_conntrack/libnetfilter_conntrack.h +++ b/include/libnetfilter_conntrack/libnetfilter_conntrack.h @@ -233,6 +233,18 @@ extern int nfct_callback_register(struct nfct_handle *h, extern void nfct_callback_unregister(struct nfct_handle *h); +/* register / unregister callback: extended version including netlink header */ + +extern int nfct_callback_register2(struct nfct_handle *h, + enum nf_conntrack_msg_type type, + int (*cb)(const struct nlmsghdr *nlh, + enum nf_conntrack_msg_type type, + struct nf_conntrack *ct, + void *data), + void *data); + +extern void nfct_callback_unregister2(struct nfct_handle *h); + /* callback verdict */ enum { NFCT_CB_FAILURE = -1, /* failure */ -- cgit v1.2.3