shill: track wpa_supplicant state, and use it
to update Service state

BUG=chromium-os:22594
TEST=unittests, manual

Manual testing: tried network_WiFiRoaming.002Suspend,
but this still fails. The reason is that we ignore
transitions into disconnected state. I'll address that
in a separate patch, which will add tracking of
CurrentBSS.

Bonus changes bundled in this commit:
- fix some comments (capitalization/punctuation,
  XXX -> TODO)
- WiFiMainTest::InitateConnect arg changed from bare pointer
  to refptr

Change-Id: I6c42f9794c8742fa2b46d03a54d77e0545c899c5
Reviewed-on: https://gerrit.chromium.org/gerrit/11460
Reviewed-by: Gaurav Shah <gauravsh@chromium.org>
Commit-Ready: mukesh agrawal <quiche@chromium.org>
Reviewed-by: mukesh agrawal <quiche@chromium.org>
Tested-by: mukesh agrawal <quiche@chromium.org>
diff --git a/wpa_supplicant.h b/wpa_supplicant.h
index 78aeaa6..5934629 100644
--- a/wpa_supplicant.h
+++ b/wpa_supplicant.h
@@ -18,6 +18,16 @@
 extern const char kDBusPath[];
 extern const char kDriverNL80211[];
 extern const char kErrorInterfaceExists[];
+extern const char kInterfacePropertyState[];
+extern const char kInterfaceState4WayHandshake[];
+extern const char kInterfaceStateAssociated[];
+extern const char kInterfaceStateAssociating[];
+extern const char kInterfaceStateAuthenticating[];
+extern const char kInterfaceStateCompleted[];
+extern const char kInterfaceStateDisconnected[];
+extern const char kInterfaceStateGroupHandshake[];
+extern const char kInterfaceStateInactive[];
+extern const char kInterfaceStateScanning[];
 extern const char kKeyManagementMethodSuffixEAP[];
 extern const char kKeyManagementMethodSuffixPSK[];
 extern const char kKeyModeNone[];