Diff between 3de8d68402ef5522f3b6bb0fc9f0f12acd6d468c and 60092ba350aac5fdb1991ab68383ebe77a972e91

Changed Files

File Additions Deletions Status
tools/mgmt-tester.c +21 -30 modified

Full Patch

diff --git a/tools/mgmt-tester.c b/tools/mgmt-tester.c
index 067ec48..2d9e971 100644
--- a/tools/mgmt-tester.c
+++ b/tools/mgmt-tester.c
@@ -3884,49 +3884,40 @@ done:
 	test_condition_complete(data);
 }
 
-static bool verify_alt_ev(const void *param, uint16_t length)
+static void command_generic_event_alt(uint16_t index, uint16_t length,
+							const void *param,
+							void *user_data)
 {
 	struct test_data *data = tester_get_data();
 	const struct generic_data *test = data->test_data;
 
 	if (length != test->expect_alt_ev_len) {
-		tester_warn("Invalid length %u != %u", length,
-						test->expect_alt_ev_len);
-		return false;
+		tester_warn("Invalid length %s event",
+					mgmt_evstr(test->expect_alt_ev));
+		mgmt_unregister(data->mgmt_alt, data->mgmt_alt_ev_id);
+		tester_test_failed();
+		return;
 	}
 
-	if (test->expect_alt_ev_param &&
-			memcmp(test->expect_alt_ev_param, param, length)) {
-		tester_warn("Event parameters do not match");
-		return false;
+	if (test->verify_alt_ev_func &&
+				!test->verify_alt_ev_func(param, length)) {
+		tester_warn("Incorrect event parameters");
+		mgmt_unregister(data->mgmt_alt, data->mgmt_alt_ev_id);
+		tester_test_failed();
+		return;
 	}
 
-	return true;
-}
-
-static void command_generic_event_alt(uint16_t index, uint16_t length,
-							const void *param,
-							void *user_data)
-{
-	struct test_data *data = tester_get_data();
-	const struct generic_data *test = data->test_data;
-	bool (*verify)(const void *param, uint16_t length);
-
 	tester_print("New %s event received", mgmt_evstr(test->expect_alt_ev));
 
-	mgmt_unregister(data->mgmt_alt, data->mgmt_alt_ev_id);
-
-	if (test->verify_alt_ev_func)
-		verify = test->verify_alt_ev_func;
-	else
-		verify = verify_alt_ev;
+	if (test->expect_alt_ev_param &&
+			memcmp(param, test->expect_alt_ev_param,
+						test->expect_alt_ev_len) != 0)
+		return;
 
-	if (!verify(param, length)) {
-		tester_warn("Incorrect %s event parameters",
+	tester_print("Unregistering %s notification",
 					mgmt_evstr(test->expect_alt_ev));
-		tester_test_failed();
-		return;
-	}
+
+	mgmt_unregister(data->mgmt_alt, data->mgmt_alt_ev_id);
 
 	test_condition_complete(data);
 }