shill: UMA stats Network.Shill.WiFi.Security and Network.Shill.WiFi.PhyMode

Add code to send WiFi security and physical mode UMA metrics.

BUG=chromium-os:24441
TEST=Unit tests

Change-Id: I30bf90d55110dc543f105c06e916b58f73692637
Reviewed-on: https://gerrit.chromium.org/gerrit/13765
Reviewed-by: Thieu Le <thieule@chromium.org>
Tested-by: Thieu Le <thieule@chromium.org>
Commit-Ready: Thieu Le <thieule@chromium.org>
diff --git a/wifi_service.cc b/wifi_service.cc
index 4882ccf..dd9d1c7 100644
--- a/wifi_service.cc
+++ b/wifi_service.cc
@@ -299,6 +299,22 @@
                                    technology()),
       Metrics::WiFiFrequencyToChannel(frequency_),
       Metrics::kMetricNetworkChannelMax);
+
+  DCHECK(physical_mode_ < Metrics::kWiFiNetworkPhyModeMax);
+  metrics()->SendEnumToUMA(
+      metrics()->GetFullMetricName(Metrics::kMetricNetworkPhyMode,
+                                   technology()),
+      static_cast<Metrics::WiFiNetworkPhyMode>(physical_mode_),
+      Metrics::kWiFiNetworkPhyModeMax);
+
+  Metrics::WiFiSecurity security_uma =
+      Metrics::WiFiSecurityStringToEnum(security_);
+  DCHECK(security_uma != Metrics::kWiFiSecurityUnknown);
+  metrics()->SendEnumToUMA(
+      metrics()->GetFullMetricName(Metrics::kMetricNetworkSecurity,
+                                   technology()),
+      security_uma,
+      Metrics::kMetricNetworkSecurityMax);
 }
 
 // private methods