Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 35832402 authored by Patrick McHardy's avatar Patrick McHardy Committed by David S. Miller
Browse files

[NETFILTER]: nf_conntrack_expect: kill unique ID



Similar to the conntrack ID, the per-expectation ID is not needed
anymore, kill it.

Signed-off-by: default avatarPatrick McHardy <kaber@trash.net>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 7f85f914
Loading
Loading
Loading
Loading
+0 −3
Original line number Original line Diff line number Diff line
@@ -38,9 +38,6 @@ struct nf_conntrack_expect
	/* Usage count. */
	/* Usage count. */
	atomic_t use;
	atomic_t use;


	/* Unique ID */
	unsigned int id;

	/* Flags */
	/* Flags */
	unsigned int flags;
	unsigned int flags;


+0 −2
Original line number Original line Diff line number Diff line
@@ -41,7 +41,6 @@ static int nf_ct_expect_hash_rnd_initted __read_mostly;
static int nf_ct_expect_vmalloc;
static int nf_ct_expect_vmalloc;


static struct kmem_cache *nf_ct_expect_cachep __read_mostly;
static struct kmem_cache *nf_ct_expect_cachep __read_mostly;
static unsigned int nf_ct_expect_next_id;


/* nf_conntrack_expect helper functions */
/* nf_conntrack_expect helper functions */
void nf_ct_unlink_expect(struct nf_conntrack_expect *exp)
void nf_ct_unlink_expect(struct nf_conntrack_expect *exp)
@@ -302,7 +301,6 @@ static void nf_ct_expect_insert(struct nf_conntrack_expect *exp)
	exp->timeout.expires = jiffies + master_help->helper->timeout * HZ;
	exp->timeout.expires = jiffies + master_help->helper->timeout * HZ;
	add_timer(&exp->timeout);
	add_timer(&exp->timeout);


	exp->id = ++nf_ct_expect_next_id;
	atomic_inc(&exp->use);
	atomic_inc(&exp->use);
	NF_CT_STAT_INC(expect_create);
	NF_CT_STAT_INC(expect_create);
}
}
+3 −3
Original line number Original line Diff line number Diff line
@@ -1160,7 +1160,7 @@ ctnetlink_exp_dump_expect(struct sk_buff *skb,
{
{
	struct nf_conn *master = exp->master;
	struct nf_conn *master = exp->master;
	__be32 timeout = htonl((exp->timeout.expires - jiffies) / HZ);
	__be32 timeout = htonl((exp->timeout.expires - jiffies) / HZ);
	__be32 id = htonl(exp->id);
	__be32 id = htonl((unsigned long)exp);


	if (ctnetlink_exp_dump_tuple(skb, &exp->tuple, CTA_EXPECT_TUPLE) < 0)
	if (ctnetlink_exp_dump_tuple(skb, &exp->tuple, CTA_EXPECT_TUPLE) < 0)
		goto nla_put_failure;
		goto nla_put_failure;
@@ -1346,7 +1346,7 @@ ctnetlink_get_expect(struct sock *ctnl, struct sk_buff *skb,


	if (cda[CTA_EXPECT_ID]) {
	if (cda[CTA_EXPECT_ID]) {
		__be32 id = *(__be32 *)nla_data(cda[CTA_EXPECT_ID]);
		__be32 id = *(__be32 *)nla_data(cda[CTA_EXPECT_ID]);
		if (exp->id != ntohl(id)) {
		if (ntohl(id) != (u32)(unsigned long)exp) {
			nf_ct_expect_put(exp);
			nf_ct_expect_put(exp);
			return -ENOENT;
			return -ENOENT;
		}
		}
@@ -1400,7 +1400,7 @@ ctnetlink_del_expect(struct sock *ctnl, struct sk_buff *skb,


		if (cda[CTA_EXPECT_ID]) {
		if (cda[CTA_EXPECT_ID]) {
			__be32 id = *(__be32 *)nla_data(cda[CTA_EXPECT_ID]);
			__be32 id = *(__be32 *)nla_data(cda[CTA_EXPECT_ID]);
			if (exp->id != ntohl(id)) {
			if (ntohl(id) != (u32)(unsigned long)exp) {
				nf_ct_expect_put(exp);
				nf_ct_expect_put(exp);
				return -ENOENT;
				return -ENOENT;
			}
			}