shill: update service signal strength and frequency from endpoints
In addition to updating the values in WiFiService, we emit
notification of the changes over RPC.
BUG=chromium-os:16786,chromium-os:16788
TEST=new unit tests, manual
Manual test: run on device, see signal strength indicator in UI
instead of "X".
Change-Id: I1ab5f064953a412387362d50e47602ee62dbe0cc
Reviewed-on: https://gerrit.chromium.org/gerrit/16000
Reviewed-by: Gary Morain <gmorain@chromium.org>
Reviewed-by: Paul Stewart <pstew@chromium.org>
Commit-Ready: mukesh agrawal <quiche@chromium.org>
Tested-by: mukesh agrawal <quiche@chromium.org>
diff --git a/wifi_endpoint.h b/wifi_endpoint.h
index 902eb90..89e6f59 100644
--- a/wifi_endpoint.h
+++ b/wifi_endpoint.h
@@ -66,6 +66,7 @@
FRIEND_TEST(WiFiEndpointTest, ParseKeyManagementMethodsPSK);
FRIEND_TEST(WiFiEndpointTest, ParseKeyManagementMethodsEAPAndPSK);
FRIEND_TEST(WiFiEndpointTest, DeterminePhyMode);
+ FRIEND_TEST(WiFiServiceUpdateFromEndpointsTest, EndpointModified);
enum KeyManagement {
kKeyManagement802_1x,
@@ -76,7 +77,9 @@
static WiFiEndpoint *MakeOpenEndpoint(ProxyFactory *proxy_factory,
const WiFiRefPtr &wifi,
const std::string &ssid,
- const std::string &bssid);
+ const std::string &bssid,
+ uint16 frequency,
+ int16 signal_dbm);
// Maps mode strings from supplicant into flimflam's nomenclature, as defined
// in chromeos/dbus/service_constants.h
static const char *ParseMode(const std::string &mode_string);
@@ -106,7 +109,7 @@
std::string ssid_hex_;
std::string bssid_string_;
std::string bssid_hex_;
- int16_t signal_strength_;
+ int16 signal_strength_;
uint16 frequency_;
uint16 physical_mode_;
// network_mode_ and security_mode_ are represented as flimflam names