Add back support for "none" referrer policy

It's a legacy keyword that was accidentially removed

BUG=615608
R=estark@chromium.org

Change-Id: I1bf4d87d999f35b30beca644b4dec6712ac2d388
Reviewed-on: https://chromium-review.googlesource.com/772234
Reviewed-by: Mike West <mkwst@chromium.org>
Commit-Queue: Jochen Eisinger <jochen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#517114}
diff --git a/third_party/WebKit/Source/platform/weborigin/SecurityPolicy.cpp b/third_party/WebKit/Source/platform/weborigin/SecurityPolicy.cpp
index e0fe4d0..72819a7 100644
--- a/third_party/WebKit/Source/platform/weborigin/SecurityPolicy.cpp
+++ b/third_party/WebKit/Source/platform/weborigin/SecurityPolicy.cpp
@@ -284,7 +284,8 @@
       (legacy_keywords_support == kSupportReferrerPolicyLegacyKeywords);
 
   if (EqualIgnoringASCIICase(policy, "no-referrer") ||
-      (support_legacy_keywords && EqualIgnoringASCIICase(policy, "never"))) {
+      (support_legacy_keywords && (EqualIgnoringASCIICase(policy, "never") ||
+                                   EqualIgnoringASCIICase(policy, "none")))) {
     *result = kReferrerPolicyNever;
     return true;
   }
diff --git a/third_party/WebKit/Source/platform/weborigin/SecurityPolicyTest.cpp b/third_party/WebKit/Source/platform/weborigin/SecurityPolicyTest.cpp
index 6f7094c..32dfcd6 100644
--- a/third_party/WebKit/Source/platform/weborigin/SecurityPolicyTest.cpp
+++ b/third_party/WebKit/Source/platform/weborigin/SecurityPolicyTest.cpp
@@ -213,23 +213,31 @@
   struct TestCase {
     const char* header;
     bool is_valid;
+    ReferrerPolicyLegacyKeywordsSupport keywords;
     ReferrerPolicy expected_policy;
   };
 
   TestCase inputs[] = {
-      {"origin", true, kReferrerPolicyOrigin},
-      {"foo", false, kReferrerPolicyDefault},
-      {"origin, foo", true, kReferrerPolicyOrigin},
-      {"origin, foo-bar", true, kReferrerPolicyOrigin},
-      {"origin, foo bar", false, kReferrerPolicyDefault},
+      {"origin", true, kDoNotSupportReferrerPolicyLegacyKeywords,
+       kReferrerPolicyOrigin},
+      {"none", true, kSupportReferrerPolicyLegacyKeywords,
+       kReferrerPolicyNever},
+      {"none", false, kDoNotSupportReferrerPolicyLegacyKeywords,
+       kReferrerPolicyDefault},
+      {"foo", false, kDoNotSupportReferrerPolicyLegacyKeywords,
+       kReferrerPolicyDefault},
+      {"origin, foo", true, kDoNotSupportReferrerPolicyLegacyKeywords,
+       kReferrerPolicyOrigin},
+      {"origin, foo-bar", true, kDoNotSupportReferrerPolicyLegacyKeywords,
+       kReferrerPolicyOrigin},
+      {"origin, foo bar", false, kDoNotSupportReferrerPolicyLegacyKeywords,
+       kReferrerPolicyDefault},
   };
 
   for (TestCase test : inputs) {
     ReferrerPolicy actual_policy = kReferrerPolicyDefault;
-    EXPECT_EQ(test.is_valid,
-              SecurityPolicy::ReferrerPolicyFromHeaderValue(
-                  test.header, kDoNotSupportReferrerPolicyLegacyKeywords,
-                  &actual_policy));
+    EXPECT_EQ(test.is_valid, SecurityPolicy::ReferrerPolicyFromHeaderValue(
+                                 test.header, test.keywords, &actual_policy));
     if (test.is_valid)
       EXPECT_EQ(test.expected_policy, actual_policy);
   }