Sam Gibson
7633cd54c2
Abstract everything but the response from hyper
...
Because we're using unsized types not for requesting, there's not a
satisfactory way of doing this without boxing the request...
Once unsized stuff lands in rust 1.2/1.3(???) then this should be
implemented with Rc's instead of Box's.
For the time being I'm not sure what else to do.
servo/servo#6727
2015-08-30 12:13:33 +10:00
Sam Gibson
6cba33a50b
Abstracts the hyper connection to a servo HttpRequester trait
...
servo/servo#6727
2015-08-30 12:13:32 +10:00
Sam Gibson
67aa11323b
Adds simple POC unit test for load
...
servo/servo#6727
2015-08-30 12:13:32 +10:00
Sam Gibson
9ac250c62c
Abstracts out initial client connection and SSL errors (which I don't think are working?)
...
servo/servo#6727
2015-08-30 12:13:31 +10:00
Sam Gibson
c8c36f4490
Injects the network connector as a dependency into http_loader::load
...
servo/servo#6727
2015-08-30 12:13:30 +10:00
Sam Gibson
610ef40105
Refactors http_loader::load to be synchronous w/ an async wrapper
...
This simplifies the arguments that are passed in and should make testing
errors/responses easier once they're mocked
servo/servo#6727
2015-08-30 12:13:29 +10:00
bors-servo
645dd7ba03
Auto merge of #7436 - jdm:netthreadname, r=Manishearth
...
Improve debuggability of http_loader panics.
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7436 )
<!-- Reviewable:end -->
2015-08-28 13:14:28 -06:00
Josh Matthews
2360db68b1
Improve debuggability of http_loader panics.
2015-08-28 15:11:30 -04:00
Johann Tuffe
dd1c8c826e
Refactor mime_classifier
...
Use more iterators in particular.
2015-08-28 22:47:41 +08:00
Sara Tang
8c39e968cd
Fixed mismatched type error
2015-08-24 23:11:31 -04:00
Sara Tang
f80ae3402a
Fixes for issue #7347
2015-08-24 21:32:16 -04:00
Johann Tuffe
ec07178b6f
sort all uses
2015-08-20 20:47:12 +08:00
bors-servo
0d6d6a0500
Auto merge of #7257 - jxs:master, r=Ms2ger
...
Replace uses of `for foo in bar.iter()`,
and `for foo in bar.iter_mut(), and for foo in bar.into_iter()
(continuation of #7197 )
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7257 )
<!-- Reviewable:end -->
2015-08-18 02:46:46 -06:00
Glenn Watson
6d9fccbae7
Add a simple method to emulate a platform UA (e.g. pretend a desktop build is an android UA).
2015-08-18 14:42:28 +10:00
João Oliveira
067a22a868
Replace uses of for foo in bar.iter()
,
...
and `for foo in bar.iter_mut(), and for foo in bar.into_iter()
(continuation of #7197 )
2015-08-18 01:46:11 +01:00
Josh Matthews
8bb853f643
Fix existing syntactics nits.
2015-08-16 10:30:43 -04:00
João Oliveira
0038580abf
Replace uses of for foo in bar.iter()
and for foo in bar.iter_mut()
...
closes #7197
2015-08-15 02:27:39 +01:00
João Oliveira
9c11781880
replace .len() == 0 with is_empty()
...
closes #7198
2015-08-14 04:00:33 +01:00
wilmoz
210e068ac7
Remove Message suffix from NetworkEventMessage
2015-08-10 18:48:53 -05:00
Adrián Arroyo Calle
af21c2457e
MIME classifier should use &[T] instead of &Vec<T>
2015-08-10 15:00:35 +02:00
Connor Imes
b526214a3d
Move net_error_list from net to net_traits. Fixes #7050 .
2015-08-06 16:37:08 -05:00
James Graham
f52276d2cc
Use hosts-replaced URL only when loading resources
2015-08-05 10:34:20 +01:00
Sam Gibson
0d94ee917d
Ensure STS headers are only honoured when they come from an HTTPS host
2015-08-02 21:18:24 +12:00
Sam Gibson
c44579018a
Obey Strict-Transport-Security header
2015-08-02 21:17:58 +12:00
Patrick Walton
024c4df912
script: Fix merge fallout.
2015-07-31 11:28:09 -07:00
Patrick Walton
2aa5174246
script: Make the resource task communication use IPC channels.
2015-07-31 11:28:09 -07:00
Patrick Walton
44d13f7fd4
net: Use a thread for each AsyncResponseTarget
to avoid having to send
...
trait objects across process boundaries.
2015-07-31 11:27:49 -07:00
Patrick Walton
9c9d7dc93b
net: Make most of the resource task messages serializable.
2015-07-31 11:27:49 -07:00
Patrick Walton
164e10202c
devtools: Convert the developer tools to run over IPC.
2015-07-27 09:10:01 -07:00
Patrick Walton
82b53d83ff
script: Make the ImageCacheTask
use IPC.
...
This necessitated getting rid of the boxed trait object that was being
be passed between the script task and the image cache task.
2015-07-26 23:07:44 -07:00
Patrick Walton
43cb7d5abd
net: Convert the storage task to use IPC.
2015-07-26 17:07:17 -07:00
Sam Gibson
118122da38
Uses the approach suggested by @SimonSapin for changing Url scheme
...
servo/rust-url#61
2015-07-22 11:49:10 +12:00
Sam Gibson
5014da42fc
Only secure URL's that aren't already to HTTPS.
...
Cuts down on logger spam, and unnecessary Url::clone's
2015-07-22 11:49:09 +12:00
Sam Gibson
bae979137a
Moves HSTS includeSubdomains enum to net_traits
2015-07-22 11:49:09 +12:00
Sam Gibson
82cafc4274
Passes an Arc<Mutex<HSTSList>> to threads instead of cloning
2015-07-22 11:49:09 +12:00
Sam Gibson
11f5be6d85
Responds to more code review feedback
...
* Use regex from resource task
* Don't have an option of an HSTS list, default to empty
2015-07-22 11:49:08 +12:00
Sam Gibson
f2148f06b1
Moves the HSTS replacement code to http_loader
...
This respects STS for redirects as well.
2015-07-22 11:49:08 +12:00
Sam Gibson
826f56bdf3
Moves HSTS code to it's own module
2015-07-22 11:49:07 +12:00
Sam Gibson
02bd5cdc1b
Resolves remaining code review issues
...
* Don't pass a boolean to the HSTSEntry constructor, use an enum instead
* Don't clone when securing load data
* Comment about the Url bug
* Change remaining assert!(... == ...) to assert_eq!(..., ...)
2015-07-22 11:49:07 +12:00
Sam Gibson
29a34dbdb5
Resolves code review comments
...
* Lots of rust-isms
* Mutable iterator for modifying entries (much better)
2015-07-22 11:49:06 +12:00
Sam Gibson
a068a80619
Don't unnecessarily clone strings
2015-07-22 11:49:06 +12:00
Sam Gibson
8a401d5a7f
Re-parse URL to not have inconsistent state
2015-07-22 11:49:05 +12:00
Sam Gibson
795454fb81
Adds control message for HSTS headers
2015-07-22 11:49:04 +12:00
Sam Gibson
f284181781
Abstract out ResourceManager messaging from impl
...
De-coupling makes testing a bit easier.
2015-07-22 11:49:04 +12:00
Sam Gibson
ff1777e446
Evict HSTS entries when a max-age of 0 is seen
2015-07-22 11:49:03 +12:00
Sam Gibson
690ac636eb
Rename/refactor
2015-07-22 11:49:03 +12:00
Sam Gibson
15c90a58b2
Expire HSTS entries that have exceeded their max-age
...
servo/servo#6105
2015-07-22 11:49:03 +12:00
Sam Gibson
8d39fb6dcf
Shift checking for IP address host for HSTS entry to constructor
...
servo/servo#6105
2015-07-22 11:48:05 +12:00
Sam Gibson
cb9b0c2a7a
Add max-age to HSTS entries
...
Refactors API for pushing new entries on, and adds a max age. This does
not add a check for the max-age, or remove old entries from the list.
Instead this just adds the data-field.
servo/servo#6105
2015-07-22 11:48:05 +12:00
Sam Gibson
72d4433587
Do not allow IP address in HSTS list
...
As per [rfc6797](https://tools.ietf.org/html/rfc6797#section-8.1.1 ), do
not allow IPv4 or IPv6 addresses as host entries into the HSTS list.
servo/servo#6105
2015-07-22 11:48:04 +12:00