Fix parameter configurations for PMK/PSK
authorCheoleun Moon <chleun.moon@samsung.com>
Wed, 11 Mar 2020 10:44:45 +0000 (19:44 +0900)
committerCheoleun Moon <chleun.moon@samsung.com>
Wed, 11 Mar 2020 10:44:45 +0000 (19:44 +0900)
src/include/wifi-aware-gdbus.h
src/wifi-aware-data-path.c
src/wifi-aware-gdbus.c

index e5b81d6..9676277 100644 (file)
@@ -49,7 +49,7 @@ extern "C" {
 typedef enum {
        SERVICE_DISCOVERED_SIGNAL = 0,
        MESSAGE_RECEIVED_SIGNAL,
-       DATA_PATH_CONFIRMED_SIGNAL,
+       DATA_PATH_OPEN_RESULT,
 } wifi_aware_signal_e;
 
 int wifi_aware_gdbus_init();
index 509e517..80e86d0 100644 (file)
@@ -292,7 +292,7 @@ static void __data_path_set_data_path_confirmed_cb(wifi_aware_data_path_h data_p
 {
        wifi_aware_data_path_s *ndp = (wifi_aware_data_path_s *)data_path;
        ndp->ndp_confirmed_signal_id =
-               wifi_aware_gdbus_register_signal(DATA_PATH_CONFIRMED_SIGNAL,
+               wifi_aware_gdbus_register_signal(DATA_PATH_OPEN_RESULT,
                                __ndp_confirmed_cb, data_path);
 }
 
index 63c41f5..886b18e 100644 (file)
@@ -56,9 +56,9 @@ static struct {
                WIFI_AWARE_DISCOVERY_INTERFACE,
                "MessageReceived",
        },
-       [DATA_PATH_CONFIRMED_SIGNAL] = {
+       [DATA_PATH_OPEN_RESULT] = {
                WIFI_AWARE_DISCOVERY_INTERFACE,
-               "DataPathConfirmed",
+               "DataPathOpenResult",
        },
 };
 
@@ -377,20 +377,25 @@ static GVariant *__create_ndp_open_request_param(int client_id, uint16_t pub_sub
        return g_variant_new("(iqusii)", client_id, pub_sub_id, peer_id, service_name, role, port);
 }
 
-static GVariant *__append_param_psk(GVariant *params, const char *psk)
+static GVariant *__create_ndp_open_request_psk_param(int client_id, uint16_t pub_sub_id,
+               unsigned int peer_id, const char *service_name,
+               wifi_aware_data_path_role_e role, int port, const char *psk)
 {
-       return g_variant_new("vs", params, psk);
+       return g_variant_new("(iqusiis)", client_id, pub_sub_id, peer_id,
+                       service_name, role, port, psk);
 }
 
-static GVariant *__append_param_pmk(GVariant *params, const unsigned char *pmk, size_t pmk_len)
+static GVariant *__create_ndp_open_request_pmk_param(int client_id, uint16_t pub_sub_id,
+               unsigned int peer_id, const char *service_name,
+               wifi_aware_data_path_role_e role, int port, const unsigned char *pmk, size_t pmk_len)
 {
-       return g_variant_new("uvv", pmk_len, params, __pack_byte_array(pmk, pmk_len));
+       return g_variant_new("(iqusiiuv)", client_id, pub_sub_id, peer_id,
+                       service_name, role, port, pmk_len, __pack_byte_array(pmk, pmk_len));
 }
-
 static GVariant *__create_ndp_close_request_param(int client_id, unsigned int ndp_id,
                uint16_t pub_sub_id, unsigned int peer_id)
 {
-       return g_variant_new("iquu", client_id, pub_sub_id, peer_id, ndp_id);
+       return g_variant_new("(iquu)", client_id, pub_sub_id, peer_id, ndp_id);
 }
 
 int wifi_aware_gdbus_enable(wifi_aware_enable_request_s *req, GAsyncReadyCallback cb)
@@ -706,21 +711,18 @@ int wifi_aware_gdbus_open_ndp_psk(wifi_aware_data_path_h data_path,
 {
        __WIFI_AWARE_FUNC_ENTER__;
        GVariant *params = NULL;
-       GVariant *params_psk = NULL;
        GVariant *reply = NULL;
        int ret = WIFI_AWARE_ERROR_NONE;
 
-       params = __create_ndp_open_request_param(client_id, pub_sub_id, peer_id,
-                       service_name, role, port);
-       params_psk = __append_param_psk(params, psk);
-       g_variant_unref(params);
+       params = __create_ndp_open_request_psk_param(client_id, pub_sub_id, peer_id,
+                       service_name, role, port, psk);
        WIFI_AWARE_LOGD("created parameters");
-       DBUS_DEBUG_VARIANT(params_psk);
+       DBUS_DEBUG_VARIANT(params);
 
        ret = __wifi_aware_dbus_method_call_sync(
                WIFI_AWARE_DISCOVERY_INTERFACE,
                WIFI_AWARE_DISCOVERY_PATH,
-               "OpenDataPathPsk", params_psk, &reply);
+               "OpenDataPathPsk", params, &reply);
 
        RET_VAL_IF(ret != WIFI_AWARE_ERROR_NONE, ret, "Failed to open data path");
 
@@ -739,21 +741,18 @@ int wifi_aware_gdbus_open_ndp_pmk(wifi_aware_data_path_h data_path,
 {
        __WIFI_AWARE_FUNC_ENTER__;
        GVariant *params = NULL;
-       GVariant *params_pmk = NULL;
        GVariant *reply = NULL;
        int ret = WIFI_AWARE_ERROR_NONE;
 
-       params = __create_ndp_open_request_param(client_id, pub_sub_id, peer_id,
-                       service_name, role, port);
-       params_pmk = __append_param_pmk(params, pmk, pmk_len);
-       g_variant_unref(params);
+       params = __create_ndp_open_request_pmk_param(client_id, pub_sub_id, peer_id,
+                       service_name, role, port, pmk, pmk_len);
        WIFI_AWARE_LOGD("created parameters");
-       DBUS_DEBUG_VARIANT(params_pmk);
+       DBUS_DEBUG_VARIANT(params);
 
        ret = __wifi_aware_dbus_method_call_sync(
                WIFI_AWARE_DISCOVERY_INTERFACE,
                WIFI_AWARE_DISCOVERY_PATH,
-               "OpenDataPathPmk", params_pmk, &reply);
+               "OpenDataPathPmk", params, &reply);
 
        RET_VAL_IF(ret != WIFI_AWARE_ERROR_NONE, ret, "Failed to open data path");