Auto merge of #25642 - pshaughn:requestintegrity, r=jdm

Send request's integrity metadata via RequestBuilder

RequestBuilder wasn't reinflating integrity_metadata along with other request fields, so main_fetch never saw that an integrity checksum was requested. Integrity checking seems to have otherwise been working; with this change, the entire WPT test for it passes (other than the SharedWorker test, which would probably pass if we had SharedWorker)

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #24906

<!-- Either: -->
- [X] There are tests for these changes

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
This commit is contained in:
bors-servo 2020-01-30 21:23:49 -05:00 committed by GitHub
commit 0bf4703eac
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 1 additions and 41 deletions

View file

@ -123,7 +123,7 @@ fn request_init_from_request(request: NetTraitsRequest) -> RequestBuilder {
referrer_policy: request.referrer_policy,
pipeline_id: request.pipeline_id,
redirect_mode: request.redirect_mode,
integrity_metadata: "".to_owned(),
integrity_metadata: request.integrity_metadata.clone(),
url_list: vec![],
parser_metadata: request.parser_metadata,
initiator: request.initiator,

View file

@ -1,42 +1,2 @@
[integrity.sub.any.sharedworker.html]
expected: ERROR
[Untitled]
expected: FAIL
[integrity]
expected: FAIL
[integrity.sub.any.worker.html]
[Invalid integrity]
expected: FAIL
[Multiple integrities: invalid stronger than valid]
expected: FAIL
[Multiple integrities: both are invalid]
expected: FAIL
[CORS invalid integrity]
expected: FAIL
[SHA-* integrity for opaque response]
expected: FAIL
[integrity.sub.any.html]
[Invalid integrity]
expected: FAIL
[Multiple integrities: invalid stronger than valid]
expected: FAIL
[Multiple integrities: both are invalid]
expected: FAIL
[CORS invalid integrity]
expected: FAIL
[SHA-* integrity for opaque response]
expected: FAIL