mirror of
https://github.com/servo/servo.git
synced 2025-07-22 23:03:42 +01:00
Implement Subresource Integrity
Implemented response validation part of https://w3c.github.io/webappsec-subresource-integrity/. Implemented step eighteen of the main fetch. If a request has integrity metadata, then following steps are performed *Wait for response body *If the response does not have a termination reason and response does not match request’s integrity metadata, set response to a network error.# Please enter the commit message for your changes. Lines starting
This commit is contained in:
parent
496447a363
commit
a3026499f4
19 changed files with 439 additions and 260 deletions
|
@ -193,7 +193,7 @@ impl<'a> StylesheetLoader<'a> {
|
|||
}
|
||||
|
||||
impl<'a> StylesheetLoader<'a> {
|
||||
pub fn load(&self, source: StylesheetContextSource) {
|
||||
pub fn load(&self, source: StylesheetContextSource, integrity_metadata: String) {
|
||||
let url = source.url();
|
||||
let document = document_from_node(self.elem);
|
||||
let context = Arc::new(Mutex::new(StylesheetContext {
|
||||
|
@ -234,6 +234,7 @@ impl<'a> StylesheetLoader<'a> {
|
|||
pipeline_id: Some(self.elem.global().pipeline_id()),
|
||||
referrer_url: Some(document.url()),
|
||||
referrer_policy: referrer_policy,
|
||||
integrity_metadata: integrity_metadata,
|
||||
.. RequestInit::default()
|
||||
};
|
||||
|
||||
|
@ -243,6 +244,6 @@ impl<'a> StylesheetLoader<'a> {
|
|||
|
||||
impl<'a> StyleStylesheetLoader for StylesheetLoader<'a> {
|
||||
fn request_stylesheet(&self, import: &Arc<RwLock<ImportRule>>) {
|
||||
self.load(StylesheetContextSource::Import(import.clone()))
|
||||
self.load(StylesheetContextSource::Import(import.clone()), "".to_owned())
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue