Index: components/wifi_sync/wifi_security_class.cc |
diff --git a/components/wifi_sync/wifi_security_class.cc b/components/wifi_sync/wifi_security_class.cc |
new file mode 100644 |
index 0000000000000000000000000000000000000000..7168b97dade634339151b3284052c760618a7433 |
--- /dev/null |
+++ b/components/wifi_sync/wifi_security_class.cc |
@@ -0,0 +1,55 @@ |
+// Copyright 2014 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#include "components/wifi_sync/wifi_security_class.h" |
+ |
+#include "base/logging.h" |
+#if defined(OS_CHROMEOS) |
erikwright (departed)
2014/10/29 18:18:25
this whole file is chrome_os only. Can you use a f
mukesh agrawal
2014/10/30 18:41:29
Done.
|
+#include "third_party/cros_system_api/dbus/service_constants.h" |
+#endif |
+ |
+namespace wifi_sync { |
+ |
+#if defined(OS_CHROMEOS) |
+WifiSecurityClass WifiSecurityClassFromShillString( |
+ const std::string& security_class_in) { |
+ if (security_class_in == shill::kSecurityNone) { |
+ return SECURITY_CLASS_NONE; |
+ } else if (security_class_in == shill::kSecurityWep) { |
+ return SECURITY_CLASS_WEP; |
+ } else if (security_class_in == shill::kSecurityPsk) { |
+ return SECURITY_CLASS_PSK; |
+ } else if (security_class_in == shill::kSecurity8021x) { |
+ return SECURITY_CLASS_802_1X; |
+ } else { |
+ return SECURITY_CLASS_INVALID; |
+ } |
+} |
+ |
+bool WifiSecurityClassToShillString(WifiSecurityClass security_class_in, |
+ std::string* security_class_out) { |
+ switch (security_class_in) { |
+ case SECURITY_CLASS_NONE: |
+ *security_class_out = shill::kSecurityNone; |
+ return true; |
+ case SECURITY_CLASS_WEP: |
+ *security_class_out = shill::kSecurityWep; |
+ return true; |
+ case SECURITY_CLASS_PSK: |
+ *security_class_out = shill::kSecurityPsk; |
+ return true; |
+ case SECURITY_CLASS_802_1X: |
+ *security_class_out = shill::kSecurity8021x; |
+ return true; |
+ case SECURITY_CLASS_INVALID: |
+ return false; |
+ default: |
+ CHECK(false) << "Invalid WifiSecurityClass enum with value " |
+ << security_class_in; |
+ return false; |
+ } |
+} |
+#endif // OS_CHROMEOS |
+ |
+} // namespace wifi_sync |