X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Fservice.c;h=8ffb254ba3b148079e98ab61ff542d4157681252;hb=d0e647678d78604a042c5a607697b43a2342c916;hp=2b69a0bb770409eb08ad6502b4a2d2b13359c41c;hpb=fd0692ba60b03da85aa02aa5eb642600013f7c7b;p=platform%2Fupstream%2Fconnman.git diff --git a/src/service.c b/src/service.c index 2b69a0b..8ffb254 100755 --- a/src/service.c +++ b/src/service.c @@ -75,6 +75,12 @@ struct saved_profiles { gchar *profile_name; }; +static unsigned char invalid_bssid[WIFI_BSSID_LEN_MAX] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 +}; +#endif + +#if defined TIZEN_EXT && defined TIZEN_EXT_INS enum connman_ins_preferred_freq { CONNMAN_INS_PREFERRED_FREQ_UNKNOWN, CONNMAN_INS_PREFERRED_FREQ_24GHZ, @@ -100,11 +106,7 @@ struct connman_ins_settings { }; static struct connman_ins_settings ins_settings; - -static unsigned char invalid_bssid[WIFI_BSSID_LEN_MAX] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 -}; -#endif +#endif /* defined TIZEN_EXT && defined TIZEN_EXT_INS */ struct connman_stats { bool valid; @@ -813,7 +815,8 @@ static void count_assoc_reject(gpointer key, gpointer value, gpointer user_data) struct assoc_reject_data *assoc_data = value; int *assoc_reject_count = user_data; - *assoc_reject_count += g_slist_length(assoc_data->reject_time_list); + if (assoc_data) + *assoc_reject_count += g_slist_length(assoc_data->reject_time_list); } static bool update_assoc_reject(struct connman_service *service) @@ -3080,7 +3083,7 @@ static void state_changed(struct connman_service *service) #endif } -#if defined TIZEN_EXT +#if defined TIZEN_EXT && defined TIZEN_EXT_INS static void connect_reason_changed(struct connman_service *service) { struct connman_device *device; @@ -3114,7 +3117,9 @@ static void connect_reason_changed(struct connman_service *service) DBUS_TYPE_INT32, &service->connect_reason); } +#endif /* defined TIZEN_EXT && defined TIZEN_EXT_INS */ +#if defined TIZEN_EXT static void disconnection_requested_changed(struct connman_service *service) { dbus_bool_t disconnection_requested; @@ -4561,7 +4566,7 @@ static void append_properties(DBusMessageIter *dict, dbus_bool_t limited, connman_network_append_acddbus(dict, service->network); } -#if defined TIZEN_EXT_INS +#if defined TIZEN_EXT && defined TIZEN_EXT_INS static void append_ins_bssid_info(DBusMessageIter *iter, void *user_data) { GSList *bssid_list = NULL; @@ -4652,7 +4657,7 @@ static void append_ins_properties(DBusMessageIter *dict, append_ins_bssid_info, service->network); } } -#endif +#endif /* defined TIZEN_EXT && defined TIZEN_EXT_INS */ static void append_struct_service(DBusMessageIter *iter, connman_dbus_append_cb_t function, @@ -4691,12 +4696,7 @@ static void append_struct(gpointer value, gpointer user_data) append_struct_service(iter, append_dict_properties, service); } -void __connman_service_list_struct(DBusMessageIter *iter) -{ - g_list_foreach(service_list, append_struct, iter); -} - -#if defined TIZEN_EXT_INS +#if defined TIZEN_EXT && defined TIZEN_EXT_INS static void append_dict_ins_properties(DBusMessageIter *dict, void *user_data) { struct connman_service *service = user_data; @@ -4722,7 +4722,12 @@ void __connman_ins_list_struct(DBusMessageIter *iter) { g_list_foreach(service_list, append_ins_struct, iter); } -#endif +#endif /* defined TIZEN_EXT && defined TIZEN_EXT_INS */ + +void __connman_service_list_struct(DBusMessageIter *iter) +{ + g_list_foreach(service_list, append_struct, iter); +} bool __connman_service_is_hidden(struct connman_service *service) { @@ -7510,7 +7515,7 @@ static DBusMessage *is_eapol_enabled(DBusConnection *conn, } #endif /* defined TIZEN_EXT && defined TIZEN_EXT_EAP_ON_ETHERNET */ -#if defined TIZEN_MAINTAIN_ONLINE +#if defined TIZEN_EXT static DBusMessage *downgrade_service(DBusConnection *conn, DBusMessage *msg, void *user_data) { @@ -7518,6 +7523,7 @@ static DBusMessage *downgrade_service(DBusConnection *conn, downgrade_state(service); __connman_connection_update_gateway(); + start_online_check(service, CONNMAN_IPCONFIG_TYPE_IPV4); return g_dbus_create_reply(msg, DBUS_TYPE_INVALID); } @@ -7590,7 +7596,7 @@ static const GDBusMethodTable service_methods[] = { #if defined TIZEN_EXT && defined TIZEN_EXT_EAP_ON_ETHERNET { GDBUS_METHOD("IsEapolEnabled", NULL, GDBUS_ARGS({ "eapol", "b" }), is_eapol_enabled) }, #endif -#if defined TIZEN_MAINTAIN_ONLINE +#if defined TIZEN_EXT { GDBUS_METHOD("Downgrade", NULL, NULL, downgrade_service) }, #endif { }, @@ -7865,7 +7871,7 @@ void connman_service_unref_debug(struct connman_service *service, g_hash_table_remove(service_hash, service->identifier); } -#if defined TIZEN_EXT +#if defined TIZEN_EXT && defined TIZEN_EXT_INS static int calculate_score_last_user_selection(struct connman_service *service) { int score = 0; @@ -8031,19 +8037,17 @@ static int calculate_score(struct connman_service *service) score_frequency + score_security_priority + score_internet_connection + score_strength; -#if defined TIZEN_EXT_INS service->score_last_user_selection = score_last_user_selection; service->score_last_connected = score_last_connected; service->score_frequency = score_frequency; service->score_security_priority = score_security_priority; service->score_internet_connection = score_internet_connection; service->score_strength = score_strength; -#endif service->ins_score = score; return score; } -#endif +#endif /* defined TIZEN_EXT && defined TIZEN_EXT_INS */ static gint service_compare(gconstpointer a, gconstpointer b) { @@ -8051,12 +8055,12 @@ static gint service_compare(gconstpointer a, gconstpointer b) struct connman_service *service_b = (void *) b; enum connman_service_state state_a, state_b; bool a_connected, b_connected; -#if defined TIZEN_EXT +#if defined TIZEN_EXT && defined TIZEN_EXT_INS int score_a; int score_b; -#else +#else /* defined TIZEN_EXT && defined TIZEN_EXT_INS */ gint strength; -#endif +#endif /* defined TIZEN_EXT && defined TIZEN_EXT_INS */ state_a = service_a->state; state_b = service_b->state; @@ -8164,21 +8168,21 @@ static gint service_compare(gconstpointer a, gconstpointer b) return 1; } -#if defined TIZEN_EXT +#if defined TIZEN_EXT && defined TIZEN_EXT_INS score_a = calculate_score(service_a); score_b = calculate_score(service_b); if (score_b != score_a) return score_b - score_a; -#else +#else /* defined TIZEN_EXT && defined TIZEN_EXT_INS */ strength = (gint) service_b->strength - (gint) service_a->strength; if (strength) return strength; -#endif +#endif /* defined TIZEN_EXT && defined TIZEN_EXT_INS */ return g_strcmp0(service_a->name, service_b->name); } -#if defined TIZEN_EXT_INS +#if defined TIZEN_EXT && defined TIZEN_EXT_INS static void print_service_sort(gpointer data, gpointer user_data) { struct connman_service *service = data; @@ -8193,15 +8197,15 @@ static void print_service_sort(gpointer data, gpointer user_data) service->score_security_priority, service->score_internet_connection, service->score_strength); } -#endif +#endif /* defined TIZEN_EXT && defined TIZEN_EXT_INS */ static void service_list_sort(void) { if (service_list && service_list->next) { service_list = g_list_sort(service_list, service_compare); -#if defined TIZEN_EXT_INS +#if defined TIZEN_EXT && defined TIZEN_EXT_INS g_list_foreach(service_list, print_service_sort, NULL); -#endif +#endif /* defined TIZEN_EXT && defined TIZEN_EXT_INS */ service_schedule_changed(); } } @@ -9413,7 +9417,13 @@ static gboolean redo_wispr_ipv4(gpointer user_data) { struct connman_service *service = user_data; +#if defined TIZEN_MAINTAIN_ONLINE + DBG(""); + + __connman_wispr_start(service, CONNMAN_IPCONFIG_TYPE_IPV4); +#else redo_wispr(service, CONNMAN_IPCONFIG_TYPE_IPV4); +#endif return FALSE; } @@ -9427,19 +9437,6 @@ static gboolean redo_wispr_ipv6(gpointer user_data) return FALSE; } -#if defined TIZEN_MAINTAIN_ONLINE -static gboolean redo_wispr_ipv4(gpointer user_data) -{ - struct connman_service *service = user_data; - - DBG(""); - - __connman_wispr_start(service, CONNMAN_IPCONFIG_TYPE_IPV4); - - return FALSE; -} -#endif - int __connman_service_online_check_failed(struct connman_service *service, enum connman_ipconfig_type type) { @@ -9984,9 +9981,9 @@ int __connman_service_connect(struct connman_service *service, DBG("service %p err %d", service, err); service->connect_reason = reason; -#if defined TIZEN_EXT +#if defined TIZEN_EXT && defined TIZEN_EXT_INS connect_reason_changed(service); -#endif +#endif /* defined TIZEN_EXT && defined TIZEN_EXT_INS */ if (err >= 0) return 0; @@ -11131,7 +11128,7 @@ static struct connman_agent_driver agent_driver = { .context_unref = agent_context_unref, }; -#if defined TIZEN_EXT +#if defined TIZEN_EXT && defined TIZEN_EXT_INS static void ins_setting_init(void) { int i; @@ -11217,7 +11214,7 @@ static void ins_setting_init(void) DBG("signal_level3_5ghz [%d]", ins_settings.signal_level3_5ghz); DBG("signal_level3_24ghz [%d]", ins_settings.signal_level3_24ghz); } -#endif +#endif /* defined TIZEN_EXT && defined TIZEN_EXT_INS */ int __connman_service_init(void) { @@ -11246,9 +11243,9 @@ int __connman_service_init(void) remove_unprovisioned_services(); -#if defined TIZEN_EXT +#if defined TIZEN_EXT && defined TIZEN_EXT_INS ins_setting_init(); -#endif +#endif /* defined TIZEN_EXT && defined TIZEN_EXT_INS */ return 0; }