View | Details | Raw Unified | Return to bug 100428
Collapse All | Expand All

(-)linux-2.6.5/net/ipv4/netfilter/ip_conntrack_core.c (-3 / +1 lines)
Lines 937-943 int ip_conntrack_expect_related(struct i Link Here
937
				struct ip_conntrack_expect *expect)
937
				struct ip_conntrack_expect *expect)
938
{
938
{
939
	struct ip_conntrack_expect *old, *new;
939
	struct ip_conntrack_expect *old, *new;
940
	int ret = 0;
941
940
942
	WRITE_LOCK(&ip_conntrack_lock);
941
	WRITE_LOCK(&ip_conntrack_lock);
943
	/* Because of the write lock, no reader can walk the lists,
942
	/* Because of the write lock, no reader can walk the lists,
Lines 1019-1025 int ip_conntrack_expect_related(struct i Link Here
1019
		 * related_to->expecting. 
1018
		 * related_to->expecting. 
1020
		 */
1019
		 */
1021
		unexpect_related(old);
1020
		unexpect_related(old);
1022
		ret = -EPERM;
1023
	} else if (LIST_FIND(&ip_conntrack_expect_list, expect_clash,
1021
	} else if (LIST_FIND(&ip_conntrack_expect_list, expect_clash,
1024
			     struct ip_conntrack_expect *, &expect->tuple, 
1022
			     struct ip_conntrack_expect *, &expect->tuple, 
1025
			     &expect->mask)) {
1023
			     &expect->mask)) {
Lines 1059-1065 int ip_conntrack_expect_related(struct i Link Here
1059
1057
1060
	WRITE_UNLOCK(&ip_conntrack_lock);
1058
	WRITE_UNLOCK(&ip_conntrack_lock);
1061
1059
1062
	return ret;
1060
	return 0;
1063
}
1061
}
1064
1062
1065
/* Change tuple in an existing expectation */
1063
/* Change tuple in an existing expectation */

Return to bug 100428