[netfilter-cvslog] r6865 - in trunk/libnetfilter_conntrack: include/libnetfilter_conntrack src/conntrack

pablo at netfilter.org pablo at netfilter.org
Thu Jun 7 20:45:47 CEST 2007


Author: pablo at netfilter.org
Date: 2007-06-07 20:45:47 +0200 (Thu, 07 Jun 2007)
New Revision: 6865

Modified:
   trunk/libnetfilter_conntrack/include/libnetfilter_conntrack/libnetfilter_conntrack.h
   trunk/libnetfilter_conntrack/src/conntrack/api.c
Log:
Introduce NFCT_Q_CREATE_UPDATE: create conntrack, if it exists, update it


Modified: trunk/libnetfilter_conntrack/include/libnetfilter_conntrack/libnetfilter_conntrack.h
===================================================================
--- trunk/libnetfilter_conntrack/include/libnetfilter_conntrack/libnetfilter_conntrack.h	2007-06-07 17:05:46 UTC (rev 6864)
+++ trunk/libnetfilter_conntrack/include/libnetfilter_conntrack/libnetfilter_conntrack.h	2007-06-07 18:45:47 UTC (rev 6865)
@@ -249,6 +249,7 @@
 	NFCT_Q_FLUSH,
 	NFCT_Q_DUMP,
 	NFCT_Q_DUMP_RESET,
+	NFCT_Q_CREATE_UPDATE,
 };
 
 extern int nfct_query(struct nfct_handle *h,

Modified: trunk/libnetfilter_conntrack/src/conntrack/api.c
===================================================================
--- trunk/libnetfilter_conntrack/src/conntrack/api.c	2007-06-07 17:05:46 UTC (rev 6864)
+++ trunk/libnetfilter_conntrack/src/conntrack/api.c	2007-06-07 18:45:47 UTC (rev 6865)
@@ -428,17 +428,18 @@
  * depending on the request.
  *
  * For query types:
- * 	NFCT_Q_CREATE
- * 	NFCT_Q_UPDATE
- * 	NFCT_Q_DESTROY
- * 	NFCT_Q_GET
+ * 	NFCT_Q_CREATE: add a new conntrack, if it exists, fail
+ * 	NFCT_O_CREATE_UPDATE: add a new conntrack, if it exists, update it
+ * 	NFCT_Q_UPDATE: update a conntrack
+ * 	NFCT_Q_DESTROY: destroy a conntrack
+ * 	NFCT_Q_GET: get a conntrack
  *
  * Pass a valid pointer to a conntrack object.
  *
  * For query types:
- * 	NFCT_Q_FLUSH
- * 	NFCT_Q_DUMP
- * 	NFCT_Q_DUMP_RESET
+ * 	NFCT_Q_FLUSH: flush the conntrack table
+ * 	NFCT_Q_DUMP: dump the conntrack table
+ * 	NFCT_Q_DUMP_RESET: dump the conntrack table and reset counters
  *
  * Pass a valid pointer to the protocol family (u_int8_t)
  *
@@ -482,6 +483,10 @@
 	case NFCT_Q_DUMP_RESET:
 		nfnl_fill_hdr(ssh, &req->nlh, 0, *family, 0, IPCTNL_MSG_CT_GET_CTRZERO, NLM_F_ROOT|NLM_F_MATCH|NLM_F_REQUEST|NLM_F_DUMP);
 		break;
+	case NFCT_Q_CREATE_UPDATE:
+		nfct_build_conntrack(ssh, req, size, IPCTNL_MSG_CT_NEW, NLM_F_REQUEST|NLM_F_CREATE|NLM_F_ACK, data);
+		break;
+
 	default:
 		errno = ENOTSUP;
 		return -1;




More information about the netfilter-cvslog mailing list