diff options
-rw-r--r-- | components/msg/constellation_msg.rs | 12 | ||||
-rw-r--r-- | components/net/fetch/methods.rs | 3 | ||||
-rw-r--r-- | components/net/file_loader.rs | 4 | ||||
-rw-r--r-- | components/net/http_loader.rs | 4 | ||||
-rw-r--r-- | components/net_traits/lib.rs | 20 | ||||
-rw-r--r-- | components/net_traits/request.rs | 3 | ||||
-rw-r--r-- | components/script/dom/bindings/trace.rs | 4 | ||||
-rw-r--r-- | components/script/dom/document.rs | 5 | ||||
-rw-r--r-- | components/script/dom/htmlanchorelement.rs | 2 | ||||
-rw-r--r-- | components/script/dom/htmllinkelement.rs | 3 | ||||
-rw-r--r-- | components/script/dom/request.rs | 2 | ||||
-rw-r--r-- | components/script/dom/window.rs | 4 | ||||
-rw-r--r-- | components/script/dom/xmlhttprequest.rs | 4 | ||||
-rw-r--r-- | components/script/script_thread.rs | 4 | ||||
-rw-r--r-- | components/script_traits/lib.rs | 4 | ||||
-rw-r--r-- | tests/unit/net/fetch.rs | 3 | ||||
-rw-r--r-- | tests/unit/net/http_loader.rs | 4 | ||||
-rw-r--r-- | tests/unit/net/resource_thread.rs | 4 |
18 files changed, 47 insertions, 42 deletions
diff --git a/components/msg/constellation_msg.rs b/components/msg/constellation_msg.rs index e87bac92fd4..dba47caa4bf 100644 --- a/components/msg/constellation_msg.rs +++ b/components/msg/constellation_msg.rs @@ -305,15 +305,3 @@ pub enum FrameType { IFrame, MozBrowserIFrame, } - -/// [Policies](https://w3c.github.io/webappsec-referrer-policy/#referrer-policy-states) -/// for providing a referrer header for a request -#[derive(Clone, Copy, Debug, Deserialize, HeapSizeOf, Serialize)] -pub enum ReferrerPolicy { - NoReferrer, - NoReferrerWhenDowngrade, - Origin, - SameOrigin, - OriginWhenCrossOrigin, - UnsafeUrl, -} diff --git a/components/net/fetch/methods.rs b/components/net/fetch/methods.rs index 83bd73bbf74..0e066e918aa 100644 --- a/components/net/fetch/methods.rs +++ b/components/net/fetch/methods.rs @@ -23,8 +23,7 @@ use hyper::mime::{Mime, SubLevel, TopLevel}; use hyper::status::StatusCode; use hyper_serde::Serde; use mime_guess::guess_mime_type; -use msg::constellation_msg::ReferrerPolicy; -use net_traits::{FetchTaskTarget, FetchMetadata, NetworkError}; +use net_traits::{FetchTaskTarget, FetchMetadata, NetworkError, ReferrerPolicy}; use net_traits::request::{CacheMode, CredentialsMode, Destination}; use net_traits::request::{RedirectMode, Referrer, Request, RequestMode, ResponseTainting}; use net_traits::request::{Type, Origin, Window}; diff --git a/components/net/file_loader.rs b/components/net/file_loader.rs index 1309a305682..7ef53b0ac69 100644 --- a/components/net/file_loader.rs +++ b/components/net/file_loader.rs @@ -5,8 +5,8 @@ use about_loader; use mime_classifier::MimeClassifier; use mime_guess::guess_mime_type; -use msg::constellation_msg::{PipelineId, ReferrerPolicy}; -use net_traits::{LoadConsumer, LoadData, LoadOrigin, Metadata, NetworkError}; +use msg::constellation_msg::PipelineId; +use net_traits::{LoadConsumer, LoadData, LoadOrigin, Metadata, NetworkError, ReferrerPolicy}; use net_traits::ProgressMsg::{Done, Payload}; use resource_thread::{CancellationListener, ProgressSender}; use resource_thread::{send_error, start_sending_sniffed_opt}; diff --git a/components/net/http_loader.rs b/components/net/http_loader.rs index 5b15166b9dd..0adf15b700e 100644 --- a/components/net/http_loader.rs +++ b/components/net/http_loader.rs @@ -28,9 +28,9 @@ use hyper_serde::Serde; use ipc_channel::ipc::{self, IpcSender}; use log; use mime_classifier::MimeClassifier; -use msg::constellation_msg::{PipelineId, ReferrerPolicy}; +use msg::constellation_msg::PipelineId; use net_traits::{CookieSource, IncludeSubdomains, LoadConsumer, LoadContext, LoadData}; -use net_traits::{CustomResponse, CustomResponseMediator, Metadata, NetworkError}; +use net_traits::{CustomResponse, CustomResponseMediator, Metadata, NetworkError, ReferrerPolicy}; use net_traits::ProgressMsg::{Done, Payload}; use net_traits::hosts::replace_hosts; use net_traits::response::HttpsState; diff --git a/components/net_traits/lib.rs b/components/net_traits/lib.rs index ce6b3e8b524..982532a2bf4 100644 --- a/components/net_traits/lib.rs +++ b/components/net_traits/lib.rs @@ -42,7 +42,7 @@ use hyper::mime::{Attr, Mime}; use hyper_serde::Serde; use ipc_channel::ipc::{self, IpcReceiver, IpcSender}; use ipc_channel::router::ROUTER; -use msg::constellation_msg::{PipelineId, ReferrerPolicy}; +use msg::constellation_msg::PipelineId; use request::{Request, RequestInit}; use response::{HttpsState, Response}; use std::io::Error as IOError; @@ -109,6 +109,24 @@ pub struct CustomResponseMediator { pub load_url: Url } +/// [Policies](https://w3c.github.io/webappsec-referrer-policy/#referrer-policy-states) +/// for providing a referrer header for a request +#[derive(Clone, Copy, Debug, Deserialize, HeapSizeOf, Serialize)] +pub enum ReferrerPolicy { + /// "no-referrer" + NoReferrer, + /// "no-referrer-when-downgrade" + NoReferrerWhenDowngrade, + /// "origin" + Origin, + /// "same-origin" + SameOrigin, + /// "origin-when-cross-origin" + OriginWhenCrossOrigin, + /// "unsafe-url" + UnsafeUrl, +} + #[derive(Clone, Deserialize, Serialize, HeapSizeOf)] pub struct LoadData { pub url: Url, diff --git a/components/net_traits/request.rs b/components/net_traits/request.rs index 10b202cd41a..0e820a2728c 100644 --- a/components/net_traits/request.rs +++ b/components/net_traits/request.rs @@ -2,9 +2,10 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +use ReferrerPolicy; use hyper::header::Headers; use hyper::method::Method; -use msg::constellation_msg::{PipelineId, ReferrerPolicy}; +use msg::constellation_msg::PipelineId; use std::cell::{Cell, RefCell}; use std::default::Default; use std::mem::swap; diff --git a/components/script/dom/bindings/trace.rs b/components/script/dom/bindings/trace.rs index 03a1d964808..59a6178e462 100644 --- a/components/script/dom/bindings/trace.rs +++ b/components/script/dom/bindings/trace.rs @@ -58,8 +58,8 @@ use js::jsapi::{GCTraceKindToAscii, Heap, JSObject, JSTracer, TraceKind}; use js::jsval::JSVal; use js::rust::Runtime; use libc; -use msg::constellation_msg::{FrameId, FrameType, PipelineId, ReferrerPolicy}; -use net_traits::{Metadata, NetworkError, ResourceThreads}; +use msg::constellation_msg::{FrameId, FrameType, PipelineId}; +use net_traits::{Metadata, NetworkError, ReferrerPolicy, ResourceThreads}; use net_traits::filemanager_thread::RelativePos; use net_traits::image::base::{Image, ImageMetadata}; use net_traits::image_cache_thread::{ImageCacheChan, ImageCacheThread}; diff --git a/components/script/dom/document.rs b/components/script/dom/document.rs index 91824f0e354..83257ac7904 100644 --- a/components/script/dom/document.rs +++ b/components/script/dom/document.rs @@ -96,9 +96,8 @@ use ipc_channel::ipc::{self, IpcSender}; use js::jsapi::{JSContext, JSObject, JSRuntime}; use js::jsapi::JS_GetRuntime; use msg::constellation_msg::{ALT, CONTROL, SHIFT, SUPER}; -use msg::constellation_msg::{FrameId, ReferrerPolicy}; -use msg::constellation_msg::{Key, KeyModifiers, KeyState}; -use net_traits::{FetchResponseMsg, IpcSend}; +use msg::constellation_msg::{FrameId, Key, KeyModifiers, KeyState}; +use net_traits::{FetchResponseMsg, IpcSend, ReferrerPolicy}; use net_traits::CookieSource::NonHTTP; use net_traits::CoreResourceMsg::{GetCookiesForUrl, SetCookiesForUrl}; use net_traits::request::RequestInit; diff --git a/components/script/dom/htmlanchorelement.rs b/components/script/dom/htmlanchorelement.rs index 2cd5278c4bc..7683fc02330 100644 --- a/components/script/dom/htmlanchorelement.rs +++ b/components/script/dom/htmlanchorelement.rs @@ -25,7 +25,7 @@ use dom::node::{Node, document_from_node, window_from_node}; use dom::urlhelper::UrlHelper; use dom::virtualmethods::VirtualMethods; use html5ever_atoms::LocalName; -use msg::constellation_msg::ReferrerPolicy; +use net_traits::ReferrerPolicy; use num_traits::ToPrimitive; use script_traits::MozBrowserEvent; use std::default::Default; diff --git a/components/script/dom/htmllinkelement.rs b/components/script/dom/htmllinkelement.rs index f4cd1ae0718..d2897b42081 100644 --- a/components/script/dom/htmllinkelement.rs +++ b/components/script/dom/htmllinkelement.rs @@ -30,8 +30,7 @@ use hyper::mime::{Mime, TopLevel, SubLevel}; use hyper_serde::Serde; use ipc_channel::ipc; use ipc_channel::router::ROUTER; -use msg::constellation_msg::ReferrerPolicy; -use net_traits::{FetchResponseListener, FetchMetadata, Metadata, NetworkError}; +use net_traits::{FetchResponseListener, FetchMetadata, Metadata, NetworkError, ReferrerPolicy}; use net_traits::request::{CredentialsMode, Destination, RequestInit, Type as RequestType}; use network_listener::{NetworkListener, PreInvoke}; use script_layout_interface::message::Msg; diff --git a/components/script/dom/request.rs b/components/script/dom/request.rs index 3358fc63ef5..a748b18715c 100644 --- a/components/script/dom/request.rs +++ b/components/script/dom/request.rs @@ -25,7 +25,7 @@ use dom::headers::{Guard, Headers}; use dom::promise::Promise; use dom::xmlhttprequest::Extractable; use hyper::method::Method as HttpMethod; -use msg::constellation_msg::ReferrerPolicy as MsgReferrerPolicy; +use net_traits::ReferrerPolicy as MsgReferrerPolicy; use net_traits::request::{Origin, Window}; use net_traits::request::CacheMode as NetTraitsRequestCache; use net_traits::request::CredentialsMode as NetTraitsRequestCredentials; diff --git a/components/script/dom/window.rs b/components/script/dom/window.rs index 61eb7af6142..c77ed80cff9 100644 --- a/components/script/dom/window.rs +++ b/components/script/dom/window.rs @@ -52,8 +52,8 @@ use js::jsapi::{HandleObject, HandleValue, JSAutoCompartment, JSContext}; use js::jsapi::{JS_GC, JS_GetRuntime, SetWindowProxy}; use js::jsval::UndefinedValue; use js::rust::Runtime; -use msg::constellation_msg::{FrameType, PipelineId, ReferrerPolicy}; -use net_traits::ResourceThreads; +use msg::constellation_msg::{FrameType, PipelineId}; +use net_traits::{ResourceThreads, ReferrerPolicy}; use net_traits::image_cache_thread::{ImageCacheChan, ImageCacheThread}; use net_traits::storage_thread::StorageType; use num_traits::ToPrimitive; diff --git a/components/script/dom/xmlhttprequest.rs b/components/script/dom/xmlhttprequest.rs index 81fe7d22b11..c404c482308 100644 --- a/components/script/dom/xmlhttprequest.rs +++ b/components/script/dom/xmlhttprequest.rs @@ -48,9 +48,9 @@ use ipc_channel::router::ROUTER; use js::jsapi::{JSContext, JS_ParseJSON}; use js::jsapi::JS_ClearPendingException; use js::jsval::{JSVal, NullValue, UndefinedValue}; -use msg::constellation_msg::{PipelineId, ReferrerPolicy}; +use msg::constellation_msg::PipelineId; use net_traits::{CoreResourceThread, FetchMetadata, FilteredMetadata}; -use net_traits::{FetchResponseListener, LoadOrigin, NetworkError}; +use net_traits::{FetchResponseListener, LoadOrigin, NetworkError, ReferrerPolicy}; use net_traits::CoreResourceMsg::Fetch; use net_traits::request::{CredentialsMode, Destination, RequestInit, RequestMode}; use net_traits::trim_http_whitespace; diff --git a/components/script/script_thread.rs b/components/script/script_thread.rs index d48552f14f6..86d742680ee 100644 --- a/components/script/script_thread.rs +++ b/components/script/script_thread.rs @@ -72,8 +72,8 @@ use js::jsval::UndefinedValue; use js::rust::Runtime; use layout_wrapper::ServoLayoutNode; use mem::heap_size_of_self_and_children; -use msg::constellation_msg::{FrameId, FrameType, PipelineId, PipelineNamespace, ReferrerPolicy}; -use net_traits::{CoreResourceMsg, IpcSend, Metadata, ResourceThreads}; +use msg::constellation_msg::{FrameId, FrameType, PipelineId, PipelineNamespace}; +use net_traits::{CoreResourceMsg, IpcSend, Metadata, ReferrerPolicy, ResourceThreads}; use net_traits::image_cache_thread::{ImageCacheChan, ImageCacheResult, ImageCacheThread}; use net_traits::request::{CredentialsMode, Destination, RequestInit}; use network_listener::NetworkListener; diff --git a/components/script_traits/lib.rs b/components/script_traits/lib.rs index a308c9e3dab..557d1eb1139 100644 --- a/components/script_traits/lib.rs +++ b/components/script_traits/lib.rs @@ -55,8 +55,8 @@ use hyper::method::Method; use ipc_channel::ipc::{IpcReceiver, IpcSender}; use libc::c_void; use msg::constellation_msg::{FrameId, FrameType, Key, KeyModifiers, KeyState}; -use msg::constellation_msg::{PipelineId, PipelineNamespaceId, ReferrerPolicy, TraversalDirection}; -use net_traits::ResourceThreads; +use msg::constellation_msg::{PipelineId, PipelineNamespaceId, TraversalDirection}; +use net_traits::{ReferrerPolicy, ResourceThreads}; use net_traits::image::base::Image; use net_traits::image_cache_thread::ImageCacheThread; use net_traits::response::HttpsState; diff --git a/tests/unit/net/fetch.rs b/tests/unit/net/fetch.rs index 38b1c858c71..308ef309204 100644 --- a/tests/unit/net/fetch.rs +++ b/tests/unit/net/fetch.rs @@ -20,9 +20,10 @@ use hyper::server::{Handler, Listening, Server}; use hyper::server::{Request as HyperRequest, Response as HyperResponse}; use hyper::status::StatusCode; use hyper::uri::RequestUri; -use msg::constellation_msg::{ReferrerPolicy, TEST_PIPELINE_ID}; +use msg::constellation_msg::TEST_PIPELINE_ID; use net::fetch::cors_cache::CORSCache; use net::fetch::methods::{fetch, fetch_with_cors_cache}; +use net_traits::ReferrerPolicy; use net_traits::request::{Origin, RedirectMode, Referrer, Request, RequestMode}; use net_traits::response::{CacheState, Response, ResponseBody, ResponseType}; use std::fs::File; diff --git a/tests/unit/net/http_loader.rs b/tests/unit/net/http_loader.rs index 0c1f827c7a5..d247e9283c7 100644 --- a/tests/unit/net/http_loader.rs +++ b/tests/unit/net/http_loader.rs @@ -18,7 +18,7 @@ use hyper::http::RawStatus; use hyper::method::Method; use hyper::mime::{Mime, SubLevel, TopLevel}; use hyper::status::StatusCode; -use msg::constellation_msg::{PipelineId, ReferrerPolicy, TEST_PIPELINE_ID}; +use msg::constellation_msg::{PipelineId, TEST_PIPELINE_ID}; use net::cookie::Cookie; use net::cookie_storage::CookieStorage; use net::hsts::HstsEntry; @@ -26,7 +26,7 @@ use net::http_loader::{HttpRequest, HttpRequestFactory, HttpState, LoadError, UI use net::http_loader::{HttpResponse, LoadErrorType}; use net::resource_thread::{AuthCacheEntry, CancellationListener}; use net_traits::{CookieSource, IncludeSubdomains, LoadContext, LoadData}; -use net_traits::{CustomResponse, LoadOrigin, Metadata}; +use net_traits::{CustomResponse, LoadOrigin, Metadata, ReferrerPolicy}; use std::borrow::Cow; use std::io::{self, Cursor, Read, Write}; use std::sync::{Arc, RwLock, mpsc}; diff --git a/tests/unit/net/resource_thread.rs b/tests/unit/net/resource_thread.rs index 860fa35f2e0..a8c95c61bad 100644 --- a/tests/unit/net/resource_thread.rs +++ b/tests/unit/net/resource_thread.rs @@ -3,10 +3,10 @@ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ use ipc_channel::ipc; -use msg::constellation_msg::{PipelineId, ReferrerPolicy}; +use msg::constellation_msg::PipelineId; use net::resource_thread::new_core_resource_thread; use net_traits::{CoreResourceMsg, LoadConsumer, LoadContext, LoadData}; -use net_traits::{LoadOrigin, NetworkError, ProgressMsg}; +use net_traits::{LoadOrigin, NetworkError, ProgressMsg, ReferrerPolicy}; use net_traits::hosts::{host_replacement, parse_hostsfile}; use profile_traits::time::ProfilerChan; use std::borrow::ToOwned; |