Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(12)

Unified Diff: chrome/common/extensions/permissions/socket_permission.cc

Issue 23703008: Add network-status socket permission. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: ' Created 7 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/common/extensions/permissions/socket_permission.cc
diff --git a/chrome/common/extensions/permissions/socket_permission.cc b/chrome/common/extensions/permissions/socket_permission.cc
index bb1dd3b9088c07cff9747dc02f74de4e4dbe9c24..ebf72055f37c94785059db33db32c293b706d374 100644
--- a/chrome/common/extensions/permissions/socket_permission.cc
+++ b/chrome/common/extensions/permissions/socket_permission.cc
@@ -30,26 +30,27 @@ PermissionMessages SocketPermission::GetMessages() const {
AddSpecificHostMessage(result);
AddSubdomainHostMessage(result);
}
+ AddNetworkListMessage(result);
return result;
}
-bool SocketPermission::AddAnyHostMessage(PermissionMessages& messages)
- const {
+bool SocketPermission::AddAnyHostMessage(PermissionMessages& messages) const {
std::set<SocketPermissionData>::const_iterator i;
for (i = data_set_.begin(); i != data_set_.end(); ++i) {
- if (i->GetHostType() == SocketPermissionData::ANY_HOST) {
+ if (i->IsAddressBoundType() &&
+ i->GetHostType() == SocketPermissionData::ANY_HOST) {
messages.push_back(PermissionMessage(
- PermissionMessage::kSocketAnyHost,
- l10n_util::GetStringUTF16(
- IDS_EXTENSION_PROMPT_WARNING_SOCKET_ANY_HOST)));
+ PermissionMessage::kSocketAnyHost,
+ l10n_util::GetStringUTF16(
+ IDS_EXTENSION_PROMPT_WARNING_SOCKET_ANY_HOST)));
return true;
}
}
return false;
}
-void SocketPermission::AddSubdomainHostMessage(PermissionMessages& messages)
- const {
+void SocketPermission::AddSubdomainHostMessage(
+ PermissionMessages& messages) const {
std::set<string16> domains;
std::set<SocketPermissionData>::const_iterator i;
for (i = data_set_.begin(); i != data_set_.end(); ++i) {
@@ -61,17 +62,17 @@ void SocketPermission::AddSubdomainHostMessage(PermissionMessages& messages)
IDS_EXTENSION_PROMPT_WARNING_SOCKET_HOSTS_IN_DOMAIN :
IDS_EXTENSION_PROMPT_WARNING_SOCKET_HOSTS_IN_DOMAINS;
messages.push_back(PermissionMessage(
- PermissionMessage::kSocketDomainHosts,
- l10n_util::GetStringFUTF16(
- id,
- JoinString(
- std::vector<string16>(
- domains.begin(), domains.end()), ' '))));
+ PermissionMessage::kSocketDomainHosts,
+ l10n_util::GetStringFUTF16(
+ id,
+ JoinString(
+ std::vector<string16>(
+ domains.begin(), domains.end()), ' '))));
}
}
-void SocketPermission::AddSpecificHostMessage(PermissionMessages& messages)
- const {
+void SocketPermission::AddSpecificHostMessage(
+ PermissionMessages& messages) const {
std::set<string16> hostnames;
std::set<SocketPermissionData>::const_iterator i;
for (i = data_set_.begin(); i != data_set_.end(); ++i) {
@@ -83,12 +84,25 @@ void SocketPermission::AddSpecificHostMessage(PermissionMessages& messages)
IDS_EXTENSION_PROMPT_WARNING_SOCKET_SPECIFIC_HOST :
IDS_EXTENSION_PROMPT_WARNING_SOCKET_SPECIFIC_HOSTS;
messages.push_back(PermissionMessage(
- PermissionMessage::kSocketSpecificHosts,
- l10n_util::GetStringFUTF16(
- id,
- JoinString(
- std::vector<string16>(
- hostnames.begin(), hostnames.end()), ' '))));
+ PermissionMessage::kSocketSpecificHosts,
+ l10n_util::GetStringFUTF16(
+ id,
+ JoinString(
+ std::vector<string16>(
+ hostnames.begin(), hostnames.end()), ' '))));
+ }
+}
+
+void SocketPermission::AddNetworkListMessage(
+ PermissionMessages& messages) const {
+ std::set<SocketPermissionData>::const_iterator i;
+ for (i = data_set_.begin(); i != data_set_.end(); ++i) {
+ if (i->pattern().type == content::SocketPermissionRequest::NETWORK_STATE) {
+ messages.push_back(PermissionMessage(
+ PermissionMessage::kNetworkState,
+ l10n_util::GetStringUTF16(
+ IDS_EXTENSION_PROMPT_WARNING_NETWORK_STATE)));
+ }
}
}

Powered by Google App Engine
This is Rietveld 408576698