[PATCHv2 2/7] android/tester: Make generic_data structure const void pointer

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Andrei Emeltchenko <andrei.emeltchenko@xxxxxxxxx>

This allows us to have different types of generic data, like socket
data, bluetooth data, etc.
---
 android/android-tester.c | 29 ++++++++++++++++++-----------
 1 file changed, 18 insertions(+), 11 deletions(-)

diff --git a/android/android-tester.c b/android/android-tester.c
index 7ecc80d..800c14d 100644
--- a/android/android-tester.c
+++ b/android/android-tester.c
@@ -74,7 +74,7 @@ struct test_data {
 	unsigned int mgmt_settings_id;
 	struct hciemu *hciemu;
 	enum hciemu_type hciemu_type;
-	const struct generic_data *test_data;
+	const void *test_data;
 	pid_t bluetoothd_pid;
 	const bt_interface_t *if_bluetooth;
 
@@ -111,6 +111,7 @@ static void command_generic_new_settings(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 = data->test_data;
 	uint32_t settings;
 
 	if (length != 4) {
@@ -121,8 +122,8 @@ static void command_generic_new_settings(uint16_t index, uint16_t length,
 
 	settings = bt_get_le32(param);
 
-	if ((settings & data->test_data->expect_settings_set) !=
-					data->test_data->expect_settings_set)
+	if ((settings & test_data->expect_settings_set) !=
+					test_data->expect_settings_set)
 		return;
 
 	test_mgmt_settings_set(data);
@@ -131,29 +132,34 @@ static void command_generic_new_settings(uint16_t index, uint16_t length,
 
 static void hal_cb_init(struct test_data *data)
 {
+	const struct generic_data *test_data = data->test_data;
 	unsigned int i = 0;
 
-	while (data->test_data->expected_hal_callbacks[i]) {
-						data->expected_callbacks =
-				g_slist_append(data->expected_callbacks,
-		GINT_TO_POINTER(data->test_data->expected_hal_callbacks[i]));
+	while (test_data->expected_hal_callbacks[i]) {
+		data->expected_callbacks =
+			g_slist_append(data->expected_callbacks,
+		GINT_TO_POINTER(test_data->expected_hal_callbacks[i]));
 		i++;
 	}
 }
 
 static void mgmt_cb_init(struct test_data *data)
 {
-	if (!data->test_data->expect_settings_set)
+	const struct generic_data *test_data = data->test_data;
+
+	if (!test_data->expect_settings_set)
 		test_mgmt_settings_set(data);
 	else
 		data->mgmt_settings_id = mgmt_register(data->mgmt,
-					MGMT_EV_NEW_SETTINGS, data->mgmt_index,
+				MGMT_EV_NEW_SETTINGS, data->mgmt_index,
 				command_generic_new_settings, NULL, NULL);
 }
 
 static void expected_status_init(struct test_data *data)
 {
-	if (!(data->test_data->expected_adapter_status))
+	const struct generic_data *test_data = data->test_data;
+
+	if (!(test_data->expected_adapter_status))
 		data->status_checked = true;
 }
 
@@ -167,8 +173,9 @@ static void init_test_conditions(struct test_data *data)
 static void check_expected_status(uint8_t status)
 {
 	struct test_data *data = tester_get_data();
+	const struct generic_data *test_data = data->test_data;
 
-	if (data->test_data->expected_adapter_status == status)
+	if (test_data->expected_adapter_status == status)
 		data->status_checked = true;
 	else
 		tester_test_failed();
-- 
1.8.3.2

--
To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux