static int retry = 0;
+#if 0
static void __send_dbus_signal(GDBusConnection *conn, const char *signal_name, const char *arg)
{
if (conn == NULL || signal_name == NULL)
//LCOV_EXCL_END
}
}
+#endif
static int __get_common_ssid(char *ssid, unsigned int size)
{
return SOFTAP_ERROR_NONE;
}
-static softap_error_e __set_visibility(bool visible)
-{
- if (vconf_set_int(VCONFKEY_SOFTAP_HIDE, visible ? 0 : 1) < 0) {
- ERR("vconf_set_int is failed\n");
- return SOFTAP_ERROR_OPERATION_FAILED;
- }
-
- return SOFTAP_ERROR_NONE;
-}
-
static softap_error_e __get_visibility(bool *visible)
{
if (visible == NULL) {
DBG("-");
}
-static softap_error_e __set_security_type(const softap_security_type_e security_type)
-{
- if (security_type != SOFTAP_SECURITY_TYPE_NONE &&
- security_type != SOFTAP_SECURITY_TYPE_WPA2_PSK &&
- security_type != SOFTAP_SECURITY_TYPE_WPS) {
- ERR("Invalid param\n");
- return SOFTAP_ERROR_INVALID_PARAMETER;
- }
-
- if (vconf_set_int(VCONFKEY_SOFTAP_SECURITY, security_type) < 0) {
- ERR("vconf_set_int is failed\n");
- return SOFTAP_ERROR_OPERATION_FAILED;
- }
-
- return SOFTAP_ERROR_NONE;
-}
-
static bool __get_ssid_from_vconf(const char *path, char *ssid, unsigned int size)
{
if (path == NULL || ssid == NULL || size == 0)
char *ptr_tmp = NULL;
ptr = vconf_get_str(path);
- if (ptr == NULL)
+ if (ptr == NULL || strlen(ptr) == 0)
return false;
if (!g_utf8_validate(ptr, -1, (const char **)&ptr_tmp))
sa->visibility = true;
sa->sec_type = SOFTAP_SECURITY_TYPE_WPA2_PSK;
- if (__get_common_ssid(ssid, sizeof(ssid)) != SOFTAP_ERROR_NONE) {
-//LCOV_EXCL_START
- ERR("Fail to get default ssid!!");
- free(sa);
- return SOFTAP_ERROR_OPERATION_FAILED;
-//LCOV_EXCL_STOP
+ if (__get_ssid_from_vconf(VCONFKEY_SOFTAP_SSID, ssid, sizeof(ssid)) == false) {
+ if (__get_common_ssid(ssid, sizeof(ssid)) != SOFTAP_ERROR_NONE) {
+ //LCOV_EXCL_START
+ ERR("Fail to get default ssid!!");
+ free(sa);
+ return SOFTAP_ERROR_OPERATION_FAILED;
+ //LCOV_EXCL_STOP
+ }
+
}
sa->ssid = g_strdup(ssid);
_retvm_if(softap == NULL, SOFTAP_ERROR_INVALID_PARAMETER,
"parameter(softap) is NULL\n");
- __softap_h *sa = (__softap_h *) softap;
- softap_error_e ret = SOFTAP_ERROR_NONE;
- char *sec_str = NULL;
+ if (type != SOFTAP_SECURITY_TYPE_NONE &&
+ type != SOFTAP_SECURITY_TYPE_WPA2_PSK &&
+ type != SOFTAP_SECURITY_TYPE_WPS) {
+ ERR("Invalid param\n");
+ return SOFTAP_ERROR_INVALID_PARAMETER;
+ }
+ __softap_h *sa = (__softap_h *) softap;
sa->sec_type = type;
- switch (type) {
- case SOFTAP_SECURITY_TYPE_NONE:
- sec_str = SOFTAP_SECURITY_TYPE_OPEN_STR;
- break;
- case SOFTAP_SECURITY_TYPE_WPA2_PSK:
- sec_str = SOFTAP_SECURITY_TYPE_WPA2_PSK_STR;
- break;
- case SOFTAP_SECURITY_TYPE_WPS:
- sec_str = SOFTAP_SECURITY_TYPE_WPS_STR;
- break;
- }
-
- ret = __set_security_type(type);
- if (ret == SOFTAP_ERROR_NONE) {
- __send_dbus_signal(sa->client_bus,
- SIGNAL_NAME_SECURITY_TYPE_CHANGED, sec_str);
- }
- return ret;
+ return SOFTAP_ERROR_NONE;
}
__softap_h *sa = (__softap_h *) softap;
char val[SOFTAP_SSID_MAX_LEN + 1] = {0, };
- bool enable;
-
- int ret = softap_is_enabled(softap, &enable);
- if (ret != SOFTAP_ERROR_NONE)
- enable = false;
-
- if (!enable) {
- if (sa->ssid != NULL) {
- DBG("Private SSID is set\n");
- *ssid = strdup(sa->ssid);
- } else {
- if (__get_ssid_from_vconf(VCONFKEY_SETAPPL_DEVICE_NAME_STR,
- val, sizeof(val)) == false) {
- return SOFTAP_ERROR_OPERATION_FAILED;
- }
- *ssid = strdup(val);
- }
- } else {
- if (__get_ssid_from_vconf(VCONFKEY_SOFTAP_SSID,
- val, sizeof(val)) == false) {
+
+ if (__get_ssid_from_vconf(VCONFKEY_SOFTAP_SSID, val, sizeof(val)) == false) {
+ if (__get_common_ssid(val, sizeof(val)) != SOFTAP_ERROR_NONE) {
+ //LCOV_EXCL_START
+ ERR("Fail to get default ssid!!");
+ free(sa);
return SOFTAP_ERROR_OPERATION_FAILED;
+ //LCOV_EXCL_STOP
}
- *ssid = strdup(val);
+
}
+
+ *ssid = strdup(val);
if (*ssid == NULL) {
ERR("strdup is failed\n");
return SOFTAP_ERROR_OUT_OF_MEMORY;
"parameter(softap) is NULL\n");
__softap_h *sa = (__softap_h *) softap;
- softap_error_e ret = SOFTAP_ERROR_NONE;
-
- ret = __set_visibility(visible);
- if (ret == SOFTAP_ERROR_NONE) {
- sa->visibility = visible;
- __send_dbus_signal(sa->client_bus,
- SIGNAL_NAME_SSID_VISIBILITY_CHANGED,
- visible ? SIGNAL_MSG_SSID_VISIBLE :
- SIGNAL_MSG_SSID_HIDE);
- }
+ sa->visibility = visible;
- return ret;
+ return SOFTAP_ERROR_NONE;
}
API int softap_get_ssid_visibility(softap_h softap, bool *visible)
_retvm_if(passphrase == NULL, SOFTAP_ERROR_INVALID_PARAMETER,
"parameter(passphrase) is NULL\n");
- char val[SOFTAP_KEY_MAX_LEN + 1] = {0, };
+ __softap_h *sa = (__softap_h *)softap;
+ GDBusProxy *proxy = sa->client_bus_proxy;
+ GVariant *parameters = NULL;
+ GError *error = NULL;
+ int ret = SOFTAP_ERROR_NONE;
+
+ parameters = g_dbus_proxy_call_sync(proxy, "get_passphrase",
+ NULL, G_DBUS_CALL_FLAGS_NONE, -1, NULL, &error);
- g_strlcpy(val, vconf_get_str(VCONFKEY_SOFTAP_KEY), sizeof(val));
- *passphrase = strdup(val);
+ if (error) {
+ //LCOV_EXCL_START
+ ERR("g_dbus_proxy_call_sync failed because %s\n", error->message);
- if (*passphrase == NULL) {
- ERR("strdup is failed\n");
- return SOFTAP_ERROR_OUT_OF_MEMORY;
+ if (error->code == G_DBUS_ERROR_ACCESS_DENIED)
+ ret = SOFTAP_ERROR_PERMISSION_DENIED;
+ else
+ ret = SOFTAP_ERROR_OPERATION_FAILED;
+
+ g_error_free(error);
+ return ret;
+ //LCOV_EXCL_STOP
}
- return SOFTAP_ERROR_NONE;
+ if (parameters != NULL) {
+ g_variant_get(parameters, "(su)", passphrase, &ret);
+ g_variant_unref(parameters);
+ }
+
+ DBG("-");
+
+ return ret;
}
API int softap_push_wps_button(softap_h softap)
{
CHECK_FEATURE_SUPPORTED(SUPPORTED_FEATURE_SOFTAP);
- DBG("+");
-
_retvm_if(softap == NULL, SOFTAP_ERROR_INVALID_PARAMETER,
"parameter(softap) is NULL");
+
+ DBG("+");
+
__softap_h *sa = (__softap_h *)softap;
GDBusProxy *proxy = sa->client_bus_proxy;
GVariant *parameters = NULL;
guint info;
- int ret = 0;
GError *error = NULL;
+ bool enabled;
+
+ int ret = softap_is_enabled(softap, &enabled);
+ _retvm_if(ret != SOFTAP_ERROR_NONE,
+ SOFTAP_ERROR_OPERATION_FAILED,
+ "Fail to check softap is enabled!!\n");
+ _retvm_if(enabled == false,
+ SOFTAP_ERROR_NOT_PERMITTED,
+ "Soft AP is not enabled\n");
parameters = g_dbus_proxy_call_sync(proxy, "push_wps_button",
NULL, G_DBUS_CALL_FLAGS_NONE, -1, NULL, &error);
API int softap_set_wps_pin(softap_h softap, const char *wps_pin)
{
CHECK_FEATURE_SUPPORTED(SUPPORTED_FEATURE_SOFTAP);
- DBG("+");
-
_retvm_if(softap == NULL, SOFTAP_ERROR_INVALID_PARAMETER,
"parameter(softap) is NULL");
_retvm_if(wps_pin == NULL, SOFTAP_ERROR_INVALID_PARAMETER,
"parameter(wps_pin) is NULL");
+ DBG("+");
+
__softap_h *sa = (__softap_h *)softap;
GDBusProxy *proxy = sa->client_bus_proxy;
GVariant *parameters = NULL;
guint info;
- int ret = 0;
GError *error = NULL;
+ bool enabled;
+
+ int ret = softap_is_enabled(softap, &enabled);
+ _retvm_if(ret != SOFTAP_ERROR_NONE,
+ SOFTAP_ERROR_OPERATION_FAILED,
+ "Fail to check softap is enabled!!\n");
+ _retvm_if(enabled == false,
+ SOFTAP_ERROR_NOT_PERMITTED,
+ "Soft AP is not enabled\n");
parameters = g_dbus_proxy_call_sync(proxy, "set_wps_pin",
g_variant_new("(s)", wps_pin), G_DBUS_CALL_FLAGS_NONE, -1, NULL, &error);