From 7736631fef63efde9c0fd68af89c3e2900286428 Mon Sep 17 00:00:00 2001 From: "/C=EU/ST=EU/CN=Pablo Neira Ayuso/emailAddress=pablo@netfilter.org" Date: Tue, 24 Apr 2007 18:39:51 +0000 Subject: - fix compilation warning in snprintf.c - introduce the new compare infrastructure: much simple than previous - introduce nfct_maxsize for nf_conntrack object allocated in the stack - more strict checkings in nfct_set_attr: third parameter is const --- include/internal.h | 3 +++ include/libnetfilter_conntrack/libnetfilter_conntrack.h | 8 +++++++- 2 files changed, 10 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/internal.h b/include/internal.h index 56f6962..78020f3 100644 --- a/include/internal.h +++ b/include/internal.h @@ -148,11 +148,14 @@ int __build_conntrack(struct nfnl_subsys_handle *ssh, struct nfnlhdr *req, size_ int __parse_message_type(const struct nlmsghdr *nlh); void __parse_conntrack(const struct nlmsghdr *nlh, const struct nfattr *cda[], struct nf_conntrack *ct); int __snprintf_conntrack(char *buf, unsigned int len, const struct nf_conntrack *ct, unsigned int type, unsigned int msg_output, unsigned int flags); +int __snprintf_conntrack_default(char *buf, unsigned int len, const struct nf_conntrack *ct, const unsigned int msg_type, const unsigned int flags); +int __snprintf_conntrack_xml(char *buf, unsigned int len, const struct nf_conntrack *ct, const unsigned int msg_type, const unsigned int flags); int __callback(struct nlmsghdr *nlh, struct nfattr *nfa[], void *data); int __setobjopt(struct nf_conntrack *ct, unsigned int option); int __getobjopt(const struct nf_conntrack *ct, unsigned int option); +int __compare(const struct nf_conntrack *ct1, const struct nf_conntrack *ct2); #endif diff --git a/include/libnetfilter_conntrack/libnetfilter_conntrack.h b/include/libnetfilter_conntrack/libnetfilter_conntrack.h index 6a26577..e35e626 100644 --- a/include/libnetfilter_conntrack/libnetfilter_conntrack.h +++ b/include/libnetfilter_conntrack/libnetfilter_conntrack.h @@ -414,6 +414,9 @@ struct nf_conntrack *nfct_clone(const struct nf_conntrack *ct); /* object size */ extern size_t nfct_sizeof(const struct nf_conntrack *ct); +/* maximum object size */ +extern size_t nfct_maxsize(void); + /* set option */ enum { NFCT_SOPT_UNDO_SNAT, @@ -459,7 +462,7 @@ enum { /* setter */ extern void nfct_set_attr(struct nf_conntrack *ct, const enum nf_conntrack_attr type, - void *value); + const void *value); extern void nfct_set_attr_u8(struct nf_conntrack *ct, const enum nf_conntrack_attr type, @@ -517,6 +520,9 @@ extern int nfct_snprintf(char *buf, const unsigned int out_type, const unsigned int out_flags); +extern int nfct_compare(const struct nf_conntrack *ct1, + const struct nf_conntrack *ct2); + /* query */ enum nf_conntrack_query { NFCT_Q_CREATE, -- cgit v1.2.3