Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 /* | 1 /* |
| 2 * | 2 * |
| 3 * Connection Manager | 3 * Connection Manager |
| 4 * | 4 * |
| 5 * Copyright (C) 2007-2009 Intel Corporation. All rights reserved. | 5 * Copyright (C) 2007-2009 Intel Corporation. All rights reserved. |
| 6 * | 6 * |
| 7 * This program is free software; you can redistribute it and/or modify | 7 * This program is free software; you can redistribute it and/or modify |
| 8 * it under the terms of the GNU General Public License version 2 as | 8 * it under the terms of the GNU General Public License version 2 as |
| 9 * published by the Free Software Foundation. | 9 * published by the Free Software Foundation. |
| 10 * | 10 * |
| (...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 58 connman_bool_t autoconnect; | 58 connman_bool_t autoconnect; |
| 59 connman_bool_t userconnect; | 59 connman_bool_t userconnect; |
| 60 connman_bool_t active; | 60 connman_bool_t active; |
| 61 GTimeVal modified; | 61 GTimeVal modified; |
| 62 char *name; | 62 char *name; |
| 63 char *passphrase; | 63 char *passphrase; |
| 64 char *identity; | 64 char *identity; |
| 65 char *certpath; | 65 char *certpath; |
| 66 char *authpath; | 66 char *authpath; |
| 67 char *profile; | 67 char *profile; |
| 68 enum connman_service_connectivity_state connectivity_state; | |
|
Eric Shienbrood
2010/11/19 17:52:56
Can you move this up to be with the other enums?
Jason Glasgow
2010/11/19 19:48:19
Done.
| |
| 68 | 69 |
| 69 /* TODO(sleffler) overlay storage */ | 70 /* TODO(sleffler) overlay storage */ |
| 70 struct { | 71 struct { |
| 71 char *operator_name; | 72 char *operator_name; |
| 72 char *operator_code; | 73 char *operator_code; |
| 73 char *olp_url; | 74 char *olp_url; |
| 74 char *usage_url; | 75 char *usage_url; |
| 75 enum connman_network_activation_state activation_state; | 76 enum connman_network_activation_state activation_state; |
| 76 enum connman_network_cellular_technology network_technology; | 77 enum connman_network_cellular_technology network_technology; |
| 77 enum connman_network_cellular_roaming_state roaming_state; | 78 enum connman_network_cellular_roaming_state roaming_state; |
| 78 connman_bool_t restricted_pool; | |
| 79 } cellular; | 79 } cellular; |
| 80 struct { | 80 struct { |
| 81 unsigned int wep_key_len; | 81 unsigned int wep_key_len; |
| 82 connman_uint8_t wep_key_idx; | 82 connman_uint8_t wep_key_idx; |
| 83 connman_uint8_t wep_key_matter[MAX_WEP_KEYSPACE]; | 83 connman_uint8_t wep_key_matter[MAX_WEP_KEYSPACE]; |
| 84 connman_bool_t hidden_ssid; | 84 connman_bool_t hidden_ssid; |
| 85 } wifi; | 85 } wifi; |
| 86 | 86 |
| 87 struct connman_device *device; | 87 struct connman_device *device; |
| 88 struct connman_network *network; | 88 struct connman_network *network; |
| (...skipping 332 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 421 case CONNMAN_NETWORK_ROAMING_STATE_UNKNOWN: | 421 case CONNMAN_NETWORK_ROAMING_STATE_UNKNOWN: |
| 422 return "unknown"; | 422 return "unknown"; |
| 423 case CONNMAN_NETWORK_ROAMING_STATE_HOME: | 423 case CONNMAN_NETWORK_ROAMING_STATE_HOME: |
| 424 return "home"; | 424 return "home"; |
| 425 case CONNMAN_NETWORK_ROAMING_STATE_ROAMING: | 425 case CONNMAN_NETWORK_ROAMING_STATE_ROAMING: |
| 426 return "roaming"; | 426 return "roaming"; |
| 427 } | 427 } |
| 428 return NULL; | 428 return NULL; |
| 429 } | 429 } |
| 430 | 430 |
| 431 static const char *connectivity_state2string( | |
| 432 enum connman_service_connectivity_state connectivity) | |
| 433 { | |
| 434 switch(connectivity) { | |
| 435 case CONNMAN_SERVICE_CONNECTIVITY_STATE_UNKNOWN: | |
| 436 return "unknown"; | |
| 437 case CONNMAN_SERVICE_CONNECTIVITY_STATE_UNRESTRICTED: | |
| 438 return "unrestricted"; | |
| 439 case CONNMAN_SERVICE_CONNECTIVITY_STATE_RESTRICTED: | |
| 440 return "restricted"; | |
| 441 case CONNMAN_SERVICE_CONNECTIVITY_STATE_NONE: | |
| 442 return "none"; | |
| 443 } | |
| 444 return NULL; | |
| 445 } | |
| 446 | |
| 431 static struct connman_service *get_active_service(void) | 447 static struct connman_service *get_active_service(void) |
| 432 { | 448 { |
| 433 struct connman_service *service; | 449 struct connman_service *service; |
| 434 GSequenceIter *iter; | 450 GSequenceIter *iter; |
| 435 | 451 |
| 436 iter = g_sequence_get_begin_iter(service_list); | 452 iter = g_sequence_get_begin_iter(service_list); |
| 437 | 453 |
| 438 if (g_sequence_iter_is_end(iter) == TRUE) { | 454 if (g_sequence_iter_is_end(iter) == TRUE) { |
| 439 _DBG_SERVICE("no services"); | 455 _DBG_SERVICE("no services"); |
| 440 return NULL; | 456 return NULL; |
| (...skipping 221 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 662 connman_dbus_dict_append_variant(&dict, "AutoConnect", | 678 connman_dbus_dict_append_variant(&dict, "AutoConnect", |
| 663 DBUS_TYPE_BOOLEAN, &service->favorite); | 679 DBUS_TYPE_BOOLEAN, &service->favorite); |
| 664 | 680 |
| 665 connman_dbus_dict_append_variant(&dict, "IsActive", | 681 connman_dbus_dict_append_variant(&dict, "IsActive", |
| 666 DBUS_TYPE_BOOLEAN, &service->active); | 682 DBUS_TYPE_BOOLEAN, &service->active); |
| 667 | 683 |
| 668 if (service->name != NULL) | 684 if (service->name != NULL) |
| 669 connman_dbus_dict_append_variant(&dict, "Name", | 685 connman_dbus_dict_append_variant(&dict, "Name", |
| 670 DBUS_TYPE_STRING, &service->name); | 686 DBUS_TYPE_STRING, &service->name); |
| 671 | 687 |
| 688 str = connectivity_state2string(service->connectivity_state); | |
| 689 if (str != NULL) | |
| 690 connman_dbus_dict_append_variant(&dict, "ConnectivityState", | |
| 691 DBUS_TYPE_STRING, &str); | |
| 692 | |
| 672 device = connman_service_get_device(service); | 693 device = connman_service_get_device(service); |
| 673 if (device != NULL) { | 694 if (device != NULL) { |
| 674 const char *path = connman_device_get_path(device); | 695 const char *path = connman_device_get_path(device); |
| 675 if (path != NULL) | 696 if (path != NULL) |
| 676 connman_dbus_dict_append_variant(&dict, "Device", | 697 connman_dbus_dict_append_variant(&dict, "Device", |
| 677 DBUS_TYPE_OBJECT_PATH, &path); | 698 DBUS_TYPE_OBJECT_PATH, &path); |
| 678 } | 699 } |
| 679 | 700 |
| 680 switch (service->type) { | 701 switch (service->type) { |
| 681 case CONNMAN_SERVICE_TYPE_UNKNOWN: | 702 case CONNMAN_SERVICE_TYPE_UNKNOWN: |
| (...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 722 if (service->cellular.olp_url != NULL) { | 743 if (service->cellular.olp_url != NULL) { |
| 723 connman_dbus_dict_append_variant(&dict, | 744 connman_dbus_dict_append_variant(&dict, |
| 724 "Cellular.OlpUrl", DBUS_TYPE_STRING, | 745 "Cellular.OlpUrl", DBUS_TYPE_STRING, |
| 725 &service->cellular.olp_url); | 746 &service->cellular.olp_url); |
| 726 } | 747 } |
| 727 if (service->cellular.usage_url != NULL) { | 748 if (service->cellular.usage_url != NULL) { |
| 728 connman_dbus_dict_append_variant(&dict, | 749 connman_dbus_dict_append_variant(&dict, |
| 729 "Cellular.UsageUrl", DBUS_TYPE_STRING, | 750 "Cellular.UsageUrl", DBUS_TYPE_STRING, |
| 730 &service->cellular.usage_url); | 751 &service->cellular.usage_url); |
| 731 } | 752 } |
| 732 connman_dbus_dict_append_variant(&dict, | |
| 733 "Cellular.RestrictedPool", DBUS_TYPE_BOOLEAN, | |
| 734 &service->cellular.restricted_pool); | |
| 735 break; | 753 break; |
| 736 case CONNMAN_SERVICE_TYPE_WIFI: | 754 case CONNMAN_SERVICE_TYPE_WIFI: |
| 737 connman_dbus_dict_append_variant(&dict, "WiFi.HiddenSSID", | 755 connman_dbus_dict_append_variant(&dict, "WiFi.HiddenSSID", |
| 738 DBUS_TYPE_BOOLEAN, &service->wifi.hidden_ssid); | 756 DBUS_TYPE_BOOLEAN, &service->wifi.hidden_ssid); |
| 739 | 757 |
| 740 if (service->network != NULL) { | 758 if (service->network != NULL) { |
| 741 connman_uint16_t frequency; | 759 connman_uint16_t frequency; |
| 742 enum connman_network_phymode phymode; | 760 enum connman_network_phymode phymode; |
| 743 | 761 |
| 744 frequency = connman_network_get_uint16(service->network, | 762 frequency = connman_network_get_uint16(service->network, |
| (...skipping 855 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1600 } | 1618 } |
| 1601 if (oroam != roaming_state && roam_str != NULL) { | 1619 if (oroam != roaming_state && roam_str != NULL) { |
| 1602 (void) connman_dbus_send_property_changed_variant( | 1620 (void) connman_dbus_send_property_changed_variant( |
| 1603 service->path, | 1621 service->path, |
| 1604 CONNMAN_SERVICE_INTERFACE, | 1622 CONNMAN_SERVICE_INTERFACE, |
| 1605 "Cellular.RoamingState", | 1623 "Cellular.RoamingState", |
| 1606 DBUS_TYPE_STRING, &roam_str); | 1624 DBUS_TYPE_STRING, &roam_str); |
| 1607 } | 1625 } |
| 1608 } | 1626 } |
| 1609 | 1627 |
| 1610 void connman_service_set_restricted_pool(struct connman_service *service, | 1628 void connman_service_set_connectivity_state(struct connman_service *service, |
| 1611 » » » » » connman_bool_t restricted) | 1629 enum connman_service_connectivity_state connectivity) |
| 1612 { | 1630 { |
| 1613 » connman_bool_t orestricted = service->cellular.restricted_pool; | 1631 » enum connman_service_connectivity_state |
| 1614 » service->cellular.restricted_pool = restricted; | 1632 » » oconnectivity = service->connectivity_state; |
| 1615 » if (orestricted != restricted) | 1633 » const char *state_str = connectivity_state2string(connectivity); |
| 1634 | |
| 1635 » service->connectivity_state = connectivity; | |
| 1636 » if (oconnectivity != connectivity) | |
| 1616 (void) connman_dbus_send_property_changed_variant( | 1637 (void) connman_dbus_send_property_changed_variant( |
| 1617 service->path, | 1638 service->path, |
| 1618 CONNMAN_SERVICE_INTERFACE, | 1639 CONNMAN_SERVICE_INTERFACE, |
| 1619 » » » » "Cellular.RestrictedPool", | 1640 » » » » "ConnectivityState", |
|
Eric Shienbrood
2010/11/19 17:52:56
Can you update service-api.txt to document this pr
Jason Glasgow
2010/11/19 19:48:19
Thank you.
Done.
| |
| 1620 » » » » DBUS_TYPE_BOOLEAN, &restricted); | 1641 » » » » DBUS_TYPE_STRING, &state_str); |
| 1621 } | 1642 } |
| 1622 | 1643 |
| 1623 static void remove_timeout(struct connman_service *service) | 1644 static void remove_timeout(struct connman_service *service) |
| 1624 { | 1645 { |
| 1625 if (service->timeout > 0) { | 1646 if (service->timeout > 0) { |
| 1626 gboolean ret = g_source_remove(service->timeout); | 1647 gboolean ret = g_source_remove(service->timeout); |
| 1627 DBG(DBG_SERVICE | DBG_WIFI, "service %p timeout %d ret %d", | 1648 DBG(DBG_SERVICE | DBG_WIFI, "service %p timeout %d ret %d", |
| 1628 service, service->timeout, ret); | 1649 service, service->timeout, ret); |
| 1629 | 1650 |
| 1630 service->timeout = 0; | 1651 service->timeout = 0; |
| (...skipping 2323 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 3954 service_list = NULL; | 3975 service_list = NULL; |
| 3955 | 3976 |
| 3956 g_hash_table_destroy(service_hash); | 3977 g_hash_table_destroy(service_hash); |
| 3957 service_hash = NULL; | 3978 service_hash = NULL; |
| 3958 | 3979 |
| 3959 connman_storage_unregister(&service_storage); | 3980 connman_storage_unregister(&service_storage); |
| 3960 connman_notifier_unregister(&service_notifier); | 3981 connman_notifier_unregister(&service_notifier); |
| 3961 | 3982 |
| 3962 dbus_connection_unref(connection); | 3983 dbus_connection_unref(connection); |
| 3963 } | 3984 } |
| OLD | NEW |