summaryrefslogtreecommitdiffstats
path: root/chromeos/network/network_state.h
diff options
context:
space:
mode:
authorgauravsh@chromium.org <gauravsh@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-04-02 23:24:28 +0000
committergauravsh@chromium.org <gauravsh@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-04-02 23:24:28 +0000
commit362fb225a9ad9e27a4f04b11893c0f0b0fb4865d (patch)
tree16da62d553439fa2123ce5d41e1cd0ebfe8a3194 /chromeos/network/network_state.h
parent5b2c5f170fd5677a3ad640c390fb24c75873fa3d (diff)
downloadchromium_src-362fb225a9ad9e27a4f04b11893c0f0b0fb4865d.zip
chromium_src-362fb225a9ad9e27a4f04b11893c0f0b0fb4865d.tar.gz
chromium_src-362fb225a9ad9e27a4f04b11893c0f0b0fb4865d.tar.bz2
NetworkChangeNotifierChromeos: Handle IPConfig property changes on the default network
BUG=164501 TEST=verify that dns refreshes while in connected state result in a dns change. Review URL: https://chromiumcodereview.appspot.com/12634019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@191929 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chromeos/network/network_state.h')
-rw-r--r--chromeos/network/network_state.h17
1 files changed, 16 insertions, 1 deletions
diff --git a/chromeos/network/network_state.h b/chromeos/network/network_state.h
index 9959824..d43def6 100644
--- a/chromeos/network/network_state.h
+++ b/chromeos/network/network_state.h
@@ -5,6 +5,9 @@
#ifndef CHROMEOS_NETWORK_NETWORK_STATE_H_
#define CHROMEOS_NETWORK_NETWORK_STATE_H_
+#include <string>
+#include <vector>
+
#include "chromeos/network/managed_state.h"
namespace base {
@@ -36,6 +39,7 @@ class CHROMEOS_EXPORT NetworkState : public ManagedState {
// Accessors
const std::string& security() const { return security_; }
const std::string& ip_address() const { return ip_address_; }
+ const std::vector<std::string>& dns_servers() const { return dns_servers_; }
const std::string& device_path() const { return device_path_; }
const std::string& guid() const { return guid_; }
const std::string& connection_state() const { return connection_state_; }
@@ -61,6 +65,10 @@ class CHROMEOS_EXPORT NetworkState : public ManagedState {
static bool StateIsConnected(const std::string& connection_state);
static bool StateIsConnecting(const std::string& connection_state);
+ // Helper to return a full prefixed version of an IPConfig property
+ // key.
+ static std::string IPConfigProperty(const char* key);
+
private:
friend class NetworkStateHandler;
friend class NetworkChangeNotifierChromeosUpdateTest;
@@ -69,17 +77,24 @@ class CHROMEOS_EXPORT NetworkState : public ManagedState {
void set_ip_address(const std::string& ip_address) {
ip_address_ = ip_address;
}
+ void set_dns_servers(const std::vector<std::string>& dns_servers) {
+ dns_servers_ = dns_servers;
+ }
// Common Network Service properties
std::string security_;
std::string device_path_;
std::string guid_;
- std::string ip_address_;
std::string connection_state_;
std::string error_;
bool auto_connect_;
bool favorite_;
int priority_;
+ // IPConfig properties.
+ // Note: These do not correspond to actual Shill.Service properties
+ // but are derived from the service's corresponding IPConfig object.
+ std::string ip_address_;
+ std::vector<std::string> dns_servers_;
// Wireless properties
int signal_strength_;
// Cellular properties