[netfilter-cvslog] r7516 - trunk/libnetfilter_conntrack/src/conntrack

pablo at netfilter.org pablo at netfilter.org
Tue Apr 29 14:56:23 CEST 2008


Author: pablo at netfilter.org
Date: 2008-04-29 14:56:23 +0200 (Tue, 29 Apr 2008)
New Revision: 7516

Modified:
   trunk/libnetfilter_conntrack/src/conntrack/api.c
   trunk/libnetfilter_conntrack/src/conntrack/getter.c
Log:
Add missing master tuple getters (reported by Max Wilhelm)


Modified: trunk/libnetfilter_conntrack/src/conntrack/api.c
===================================================================
--- trunk/libnetfilter_conntrack/src/conntrack/api.c	2008-04-27 08:01:48 UTC (rev 7515)
+++ trunk/libnetfilter_conntrack/src/conntrack/api.c	2008-04-29 12:56:23 UTC (rev 7516)
@@ -289,6 +289,8 @@
 		return NULL;
 	}
 
+	assert(get_attr_array[type]);
+
 	return get_attr_array[type](ct);
 }
 

Modified: trunk/libnetfilter_conntrack/src/conntrack/getter.c
===================================================================
--- trunk/libnetfilter_conntrack/src/conntrack/getter.c	2008-04-27 08:01:48 UTC (rev 7515)
+++ trunk/libnetfilter_conntrack/src/conntrack/getter.c	2008-04-29 12:56:23 UTC (rev 7516)
@@ -102,6 +102,46 @@
 	return &ct->tuple[__DIR_REPL].protonum;
 }
 
+static const void *get_attr_master_ipv4_src(const struct nf_conntrack *ct)
+{
+	return &ct->tuple[__DIR_MASTER].src.v4;
+}
+
+static const void *get_attr_master_ipv4_dst(const struct nf_conntrack *ct)
+{
+	return &ct->tuple[__DIR_MASTER].dst.v4;
+}
+
+static const void *get_attr_master_ipv6_src(const struct nf_conntrack *ct)
+{
+	return &ct->tuple[__DIR_MASTER].src.v6;
+}
+
+static const void *get_attr_master_ipv6_dst(const struct nf_conntrack *ct)
+{
+	return &ct->tuple[__DIR_MASTER].dst.v6;
+}
+
+static const void *get_attr_master_port_src(const struct nf_conntrack *ct)
+{
+	return &ct->tuple[__DIR_MASTER].l4src.all; 
+}
+
+static const void *get_attr_master_port_dst(const struct nf_conntrack *ct)
+{
+	return &ct->tuple[__DIR_MASTER].l4dst.all; 
+}
+
+static const void *get_attr_master_l3proto(const struct nf_conntrack *ct)
+{
+	return &ct->tuple[__DIR_MASTER].l3protonum;
+}
+
+static const void *get_attr_master_l4proto(const struct nf_conntrack *ct)
+{
+	return &ct->tuple[__DIR_MASTER].protonum;
+}
+
 static const void *get_attr_tcp_state(const struct nf_conntrack *ct)
 {
 	return &ct->protoinfo.tcp.state;
@@ -265,6 +305,14 @@
 	[ATTR_TCP_FLAGS_REPL]		= get_attr_tcp_flags_repl,
 	[ATTR_TCP_MASK_ORIG]		= get_attr_tcp_mask_orig,
 	[ATTR_TCP_MASK_REPL]		= get_attr_tcp_mask_repl,
+	[ATTR_MASTER_IPV4_SRC]		= get_attr_master_ipv4_src,
+	[ATTR_MASTER_IPV4_DST] 		= get_attr_master_ipv4_dst,
+	[ATTR_MASTER_IPV6_SRC]		= get_attr_master_ipv6_src,
+	[ATTR_MASTER_IPV6_DST]		= get_attr_master_ipv6_dst,
+	[ATTR_MASTER_PORT_SRC]		= get_attr_master_port_src,
+	[ATTR_MASTER_PORT_DST]		= get_attr_master_port_dst,
+	[ATTR_MASTER_L3PROTO]		= get_attr_master_l3proto,
+	[ATTR_MASTER_L4PROTO]		= get_attr_master_l4proto,
 	[ATTR_SECMARK]			= get_attr_secmark,
 	[ATTR_ORIG_NAT_SEQ_CORRECTION_POS]	= get_attr_orig_cor_pos,
 	[ATTR_ORIG_NAT_SEQ_OFFSET_BEFORE]	= get_attr_orig_off_bfr,




More information about the netfilter-cvslog mailing list