Merge branch 'master' into match_filter
author문철은/Tizen Platform Lab(SR)/Staff Engineer/삼성전자 <chleun.moon@samsung.com>
Wed, 5 Feb 2020 08:56:39 +0000 (17:56 +0900)
committerGitHub Enterprise <noreply-CODE@samsung.com>
Wed, 5 Feb 2020 08:56:39 +0000 (17:56 +0900)
1  2 
src/include/wifi-aware-gdbus.h
src/wifi-aware-private.c
src/wifi-aware-publish.c
test/wifi-aware-test.c

Simple merge
@@@ -202,9 -199,13 +203,13 @@@ static void __publish_request_reply(GOb
  
        conn = G_DBUS_CONNECTION(src);
        reply = g_dbus_connection_call_finish(conn, res, &dbus_error);
+       if (reply == NULL) {
+               WIFI_AWARE_LOGE("reply is NULL");
+               return;
+       }
  
        if (dbus_error != NULL) {
 -              WIFI_AWARE_LOGE("Publish Request failure %s", dbus_error->message);
 +              WIFI_AWARE_LOGE("Publish Request failure: %s", dbus_error->message);
                error = _wifi_aware_convert_error_string_to_enum(dbus_error->message);
                g_error_free(dbus_error);
        }
@@@ -141,13 -187,11 +187,13 @@@ API int wifi_aware_publish_set_match_fi
  {
        __WIFI_AWARE_FUNC_ENTER__;
        CHECK_FEATURE_SUPPORTED(TIZEN_FEATURE_WIFI_AWARE);
-       RET_VAL_IF(config == NULL, WIFI_AWARE_ERROR_INVALID_PARAMETER, "wifi_aware_publish_config_h is NULL");
+       RET_VAL_IF(publish == NULL, WIFI_AWARE_ERROR_INVALID_PARAMETER, "wifi_aware_publish_h is NULL");
  
-       wifi_aware_publish_request_s *req = (wifi_aware_publish_request_s *)config;
-       memcpy(req->match_filter, match_filter, len);
-       req->match_filter_len = len;
 +      // TODO: Check if len is valid
 +
+       wifi_aware_publish_s *handle = (wifi_aware_publish_s *)publish;
+       memcpy(handle->req.match_filter, match_filter, len);
+       handle->req.match_filter_len = len;
  
        __WIFI_AWARE_FUNC_EXIT__;
        return WIFI_AWARE_ERROR_NONE;
@@@ -339,50 -342,7 +342,50 @@@ static void __published_cb(wifi_aware_e
                printf("Subscribe Request fails. Error: %s\n", __print_error(error));
  }
  
- static void __set_publish_config(wifi_aware_publish_config_h config)
 +static void __print_match_filter(unsigned char filter[MAX_MATCH_FILTER_LEN + 1], int filter_len)
 +{
 +      int len = 0;
 +      int i = 0;
 +      while (i < filter_len) {
 +              len = filter[i];
 +              printf("%d: ", len);
 +              for (int j = 1; j <= len; ++j) {
 +                      printf("%d, ", filter[i + j]);
 +              }
 +              printf("\n");
 +              i += len + 1;
 +      }
 +}
 +
 +static int __set_match_filter(unsigned char match_filter[MAX_MATCH_FILTER_LEN + 1])
 +{
 +      int total_num;
 +      int total_len = 0;
 +      int len;
 +      char filter[MAX_MATCH_FILTER_LEN + 1];
 +      printf("Total number of match filter items: ");
 +      if (scanf("%d", &total_num) < 0)
 +              return -1;
 +
 +      for (int i = 0; i < total_num; ++i) {
 +              printf("%d match filter len: ", i);
 +              if (scanf("%d", &len) < 0)
 +                      return -1;
 +              printf("%d match filter value: ", i);
 +              if (scanf("%s", filter) < 0)
 +                      return -1;
 +              if (len != strlen(filter)) {
 +                      printf("The length of filter value is not %d\n", len);
 +                      return -1;
 +              }
 +              match_filter[total_len++] = len;
 +              memcpy(&match_filter[total_len], filter, len);
 +              total_len += len;
 +      }
 +      return total_len;
 +}
 +
+ static void __set_publish_config(wifi_aware_publish_h config)
  {
        int ret = 0;
        int publish_type = 0;
        if (ret != WIFI_AWARE_ERROR_NONE)
                return;
  
 -      len = strlen(MATCH_FILTER);
 -      memcpy(match_filter, MATCH_FILTER, len);
 -      ret = wifi_aware_publish_set_match_filter(config,
 -                      match_filter, len);
 -      if (ret != WIFI_AWARE_ERROR_NONE)
 -              return;
 +      printf("Do you set Match Filter(0-No, 1-Yes): ");
 +      ret = scanf("%d", &set_mf);
 +      if (set_mf == 1) {
 +              len = __set_match_filter(match_filter);
 +              if (len < 0) {
 +                      printf("Not set match filter\n");
 +                      return;
 +              }
 +              __print_match_filter(match_filter, len);
-               ret = wifi_aware_publish_config_set_match_filter(config, match_filter, len);
++              ret = wifi_aware_publish_set_match_filter(config, match_filter, len);
 +              if (ret != WIFI_AWARE_ERROR_NONE)
 +                      return;
 +      }
  }
  
  void test_publish()
  
        __set_publish_config(config);
  
-       ret = wifi_aware_publish(g_wifi_aware_handle, config, __published_cb, NULL);
+       g_publish_handle = config;
+       ret = wifi_aware_start_publish(g_wifi_aware_handle, config, __published_cb, NULL);
        __print_result(ret, "wifi_aware_publish");
  
- //    ret = wifi_aware_publish_config_destroy(config);
- //    __print_result(ret, "wifi_aware_publish_config_destroy");
 -      ret = wifi_aware_publish_destroy(config);
 -      __print_result(ret, "wifi_aware_publish_destroy");
++      //ret = wifi_aware_publish_destroy(config);
++      //__print_result(ret, "wifi_aware_publish_destroy");
  }
  
  void test_cancel_publish()