Commit a3c1e451 authored by Jens Emil Schulz Østergaard's avatar Jens Emil Schulz Østergaard Committed by David S. Miller
Browse files

net: microchip: vcap: Fix use-after-free error in kunit test



This is a clear use-after-free error. We remove it, and rely on checking
the return code of vcap_del_rule.

Reported-by: default avatarDan Carpenter <error27@gmail.com>
Closes: https://lore.kernel.org/kernel-janitors/7bffefc6-219a-4f71-baa0-ad4526e5c198@kili.mountain/


Fixes: c956b9b3 ("net: microchip: sparx5: Adding KUNIT tests of key/action values in VCAP API")
Signed-off-by: default avatarJens Emil Schulz Østergaard <jensemil.schulzostergaard@microchip.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 9b087428
Loading
Loading
Loading
Loading
+2 −12
Original line number Diff line number Diff line
@@ -1442,18 +1442,8 @@ static void vcap_api_encode_rule_test(struct kunit *test)
	vcap_enable_lookups(&test_vctrl, &test_netdev, 0, 0,
			    rule->cookie, false);

	vcap_free_rule(rule);

	/* Check that the rule has been freed: tricky to access since this
	 * memory should not be accessible anymore
	 */
	KUNIT_EXPECT_PTR_NE(test, NULL, rule);
	ret = list_empty(&rule->keyfields);
	KUNIT_EXPECT_EQ(test, true, ret);
	ret = list_empty(&rule->actionfields);
	KUNIT_EXPECT_EQ(test, true, ret);

	vcap_del_rule(&test_vctrl, &test_netdev, id);
	ret = vcap_del_rule(&test_vctrl, &test_netdev, id);
	KUNIT_EXPECT_EQ(test, 0, ret);
}

static void vcap_api_set_rule_counter_test(struct kunit *test)