diff options
author | noamsml@chromium.org <noamsml@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-06-04 08:41:22 +0000 |
---|---|---|
committer | noamsml@chromium.org <noamsml@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-06-04 08:41:22 +0000 |
commit | ca11059ee2dd9abe0c64b47cda1f58d6c662e855 (patch) | |
tree | 16daa9bbc8d59d1f9f9c9affb9ea28f487918431 /components/wifi/network_properties.h | |
parent | a4af7d5f79be09c03b36d86964500195aec4fc70 (diff) | |
download | chromium_src-ca11059ee2dd9abe0c64b47cda1f58d6c662e855.zip chromium_src-ca11059ee2dd9abe0c64b47cda1f58d6c662e855.tar.gz chromium_src-ca11059ee2dd9abe0c64b47cda1f58d6c662e855.tar.bz2 |
This is a library for Windows and MacOSX (tested MacOSX currently) that supports the features needed to do WiFi bootstrapping.
BUG=370071
Review URL: https://codereview.chromium.org/226883002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274731 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'components/wifi/network_properties.h')
-rw-r--r-- | components/wifi/network_properties.h | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/components/wifi/network_properties.h b/components/wifi/network_properties.h new file mode 100644 index 0000000..5295138 --- /dev/null +++ b/components/wifi/network_properties.h @@ -0,0 +1,64 @@ +// 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. + +#ifndef COMPONENTS_WIFI_NETWORK_PROPERTIES_H_ +#define COMPONENTS_WIFI_NETWORK_PROPERTIES_H_ + +#include <list> +#include <set> + +#include "base/values.h" +#include "components/wifi/wifi_export.h" + +namespace wifi { + +typedef int32 Frequency; + +enum FrequencyEnum { + kFrequencyAny = 0, + kFrequencyUnknown = 0, + kFrequency2400 = 2400, + kFrequency5000 = 5000 +}; + +typedef std::set<Frequency> FrequencySet; + +// Network Properties, can be used to parse the result of |GetProperties| and +// |GetVisibleNetworks|. +struct WIFI_EXPORT NetworkProperties { + NetworkProperties(); + ~NetworkProperties(); + + std::string connection_state; + std::string guid; + std::string name; + std::string ssid; + std::string bssid; + std::string type; + std::string security; + // |password| field is used to pass wifi password for network creation via + // |CreateNetwork| or connection via |StartConnect|. It does not persist + // once operation is completed. + std::string password; + // WiFi Signal Strength. 0..100 + uint32 signal_strength; + bool auto_connect; + Frequency frequency; + FrequencySet frequency_set; + + std::string json_extra; // Extra JSON properties for unit tests + + scoped_ptr<base::DictionaryValue> ToValue(bool network_list) const; + // Updates only properties set in |value|. + bool UpdateFromValue(const base::DictionaryValue& value); + static std::string MacAddressAsString(const uint8 mac_as_int[6]); + static bool OrderByType(const NetworkProperties& l, + const NetworkProperties& r); +}; + +typedef std::list<NetworkProperties> NetworkList; + +} // namespace wifi + +#endif // COMPONENTS_WIFI_NETWORK_PROPERTIES_H_ |