Commit Graph

741 Commits

Author SHA1 Message Date
Justin Mayhew
8f1c536007 docs(*): fix typos, Markdown inconsistencies, and stutter 2016-05-20 11:42:29 -03:00
Sean McArthur
c81deed3e6 fix(windows): disable openssl cert validation for Windows
It doesn't work, so it's just causing errors.

Closes #794
2016-05-18 10:04:39 -07:00
softprops
088822b23d feat(net): Add OpensslClient constructor 2016-05-17 00:00:35 -04:00
Sean McArthur
38aa51495a feat(uri): impl Eq and Hash for RequestUri 2016-05-16 09:51:18 -07:00
Sean McArthur
d35992d019 feat(lib): switch to non-blocking (asynchronous) IO
BREAKING CHANGE: This breaks a lot of the Client and Server APIs.
  Check the documentation for how Handlers can be used for asynchronous
  events.
2016-05-16 09:51:18 -07:00
Sean McArthur
54bf6adeee fix(ssl): use secure ciphers by default in openssl 2016-05-09 12:47:09 -07:00
Sean McArthur
e7229480ea fix(warnings): remove unused_code warnings from newest nightlies 2016-05-09 11:51:51 -07:00
Sean McArthur
01160abd92 feat(ssl): enable hostname verification by default for OpenSSL
Additionally disables SSLv2 and SSLv3, as those are universally considered
unsafe.

Closes #472
2016-05-08 10:04:37 -07:00
Sean McArthur
17f818e5c1 Merge pull request #781 from hyperium/pool-mutex-race
fix(client): fix panic in Pool::connect
2016-05-05 12:16:47 -07:00
Sean McArthur
e51bafe2e4 fix(client): fix panic in Pool::connect
Closes #780
2016-05-05 10:45:16 -07:00
Manish Goregaokar
b840963629 docs(*): Clippy fixes with markdown docs 2016-05-05 22:50:23 +05:30
Sean McArthur
f36c6b255f feat(client): proper proxy and tunneling in Client
Closes #774
2016-05-02 12:33:49 -07:00
Sean McArthur
25010fc1fc feat(client): add Proxy support
This works by configuring proxy options on a `Client`, such as
`client.set_proxy("http", "127.0.0.1", "8018")`.

Closes #531
2016-04-25 15:49:57 -07:00
Sean McArthur
5fcc04a6cd perf(client): dont keep Pool mutex locked during getaddrinfo 2016-04-25 15:36:55 -07:00
Simon Sapin
8fa7a98968 refactor(hyper): Update to rust-url 1.0
BREAKING CHANGE: The re-exported Url type has breaking changes.
2016-04-21 16:14:08 -07:00
Steven Fackler
f37315b270 feat(net): Add Ssl impls for security-framework
Cloese #755
2016-04-16 16:20:52 -07:00
Steven Fackler
2c86e8078e feat(net): Split Ssl into SslClient and SslServer
SSL libraries other than OpenSSL don't necessarily have the ability to
easily create server and client side connections at the same time. This
is backwards compatible due to blanket impls.

Closes #756
2016-04-05 21:48:53 -07:00
Sean McArthur
bc3878de36 Merge pull request #750 from calebmer/feat/prefer
feat(header): add prefer and preference applied headers
2016-03-31 18:56:58 -07:00
calebmer
6f6493010a feat(header): add prefer and preference applied headers
Closes #747
2016-03-31 15:46:34 -04:00
Sean McArthur
cbf83a4d5a Merge pull request #751 from hyperium/per-tag-docs
chore(docs): publish docs per version
2016-03-24 19:52:47 -07:00
Sean McArthur
905e0d2ff4 chore(docs): publish docs per version 2016-03-24 18:57:23 -07:00
Steven Allen
70c6914217 fix(headers): correctly handle repeated headers
HeaderX: a
    HeaderX: b

MUST be interpreted as

    HeaderX: a, b

See: https://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html#sec4.2

Fixes #683
2016-03-24 14:19:15 -07:00
Danilo Bargen
eedd5b73ee docs(headers): Remove charset from json() docs
Leftover from ec568e9a55.
2016-03-15 12:33:32 +01:00
Jonathan Giddy
93fd5a87bd feat(status): add HTTP statuses 421 and 451
The official IANA list at
http://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml
has two new status codes that are missing from the hyper status list.
2016-03-14 10:31:54 +00:00
Sean McArthur
d1f9f5f694 Merge pull request #736 from debris/serde_up
refactor(headers): updated serde to version 0.7
2016-03-09 11:01:18 -08:00
Garrett Squire
ec568e9a55 fix(headers): remove charset from ContentType::json() convenience method
since the JSON mime type does not accept a charset, this patch removes
it

closes https://github.com/hyperium/hyper/issues/737
2016-03-08 17:41:34 -08:00
OlegTsyba
c720295e99 fix(buffer): prevent possible buffer overflow in grow_zerofill
in `maybe_reserve` we have such code
    ```
        let new = self.buf.capacity() - self.buf.len();
        unsafe { grow_zerofill(&mut self.buf, new) }
    ```
    the original behavior of `grow_zerofill` in such case cause
    rewriting the memory behind the allocated vector.
2016-03-02 17:20:18 +02:00
debris
33d5da2136 refactor(headers): updated serde to version 0.7 2016-02-27 15:04:30 +01:00
Johan Lorenzo
5c8b63028c docs(server): add a warning to Listening::close() in order to reflect #338 2016-02-19 14:25:12 +01:00
OlegTsyba
7c76fff3aa fix(net): fix the typo in set_write_timeout 2016-02-17 19:13:40 +02:00
Steven Fackler
8c7ef7fd93 feat(client): Implement Debug for Client
Protocol doesn't extend Debug so we have to leave that out of the
output unfortunately.
2016-02-15 14:43:50 -08:00
Sean McArthur
3a18e72be6 fix(buffer): fix incorrect resizing of BufReader
Closes #715
2016-01-04 15:00:37 -08:00
Mark Lee
f7d6ff67ee docs(headers): add docs for ExtendedValue members 2015-12-31 12:12:51 -08:00
Mark Lee
da0abe8988 feat(headers): allow ExtendedValue structs to be formatted and used as struct members 2015-12-31 12:12:51 -08:00
Corey Farwell
4c7f6f0c1e style(all): Address suggestions made by rust-clippy 2015-12-23 08:59:45 -08:00
Sean McArthur
69adbd1914 style(client): change instances of method::Method to Method 2015-12-19 13:59:33 -08:00
Steven Fackler
92ff50f2e5 fix(server): Flush 100-continue messages
Closes #704
2015-12-18 16:00:49 -08:00
Mark Lee
402fb76bb2 feat(headers): add extended parameter parser to the public API
Move the extended parameter parser from the Content-Disposition header
implementation into the common header parsing module. This allows crates that
use Hyper to parse RFC 5987-compliant header parameter values.
Add tests based on the examples given in the RFC.
2015-12-15 09:56:09 -08:00
Karl Hobley
1077440c4d test(server): Add test for GET request with body 2015-11-29 18:06:44 +00:00
Karl Hobley
0b05c5903e fix(server): Removed check for GET/HEAD request when parsing body
Fixes #698
2015-11-29 18:06:44 +00:00
Sean McArthur
fec6e3e873 feat(all): add socket timeouts
Methods added to `Client` and `Server` to control read and write
timeouts of the underlying socket.

Keep-Alive is re-enabled by default on the server, with a default
timeout of 5 seconds.

BREAKING CHANGE: This adds 2 required methods to the `NetworkStream`
  trait, `set_read_timeout` and `set_write_timeout`. Any local
  implementations will need to add them.
2015-11-24 10:58:58 -08:00
Mike Dilger
7623ecc264 feat(headers): Add Content-Disposition header
fixes #561
2015-11-24 08:51:06 +13:00
Sean McArthur
9c99e939a6 Merge pull request #693 from brycefisher/feat/access-control-allow-credentials
feat(headers): Add Access-Control-Allow-Credentials header
2015-11-22 08:47:46 -08:00
Bryce Fisher-Fleig
19348b892b feat(headers): Add Access-Control-Allow-Credentials header
There is only one acceptable value for this header, "true", so
there header struct is unit-like (no fields nor data inside). See
documentation and tests for more info. Case insensitive.

Closes #655
2015-11-22 00:53:16 -08:00
Sean McArthur
799698ca87 feat(headers): re-export CookiePair and CookieJar 2015-11-20 13:15:07 -08:00
Sean McArthur
81d42c964e chore(dependencies): update openssl to 0.7 and cookie to 0.2
Closes #686
2015-11-20 11:12:56 -08:00
Sean McArthur
d44ee5980f docs(quality_item): fix typo
Closes #634
2015-11-17 10:47:43 -08:00
Sean McArthur
6560e9edba Merge pull request #682 from hyperium/fix-win-x86-nounwind
test(windows): disable a panicking test for 32-bit msvc
2015-11-17 10:43:13 -08:00
Sean McArthur
8a5139e95f test(windows): disable a panicking test for 32-bit msvc 2015-11-16 14:01:57 -08:00
Dean4Devil
29fc868064 docs(server): Fixing two small typos 2015-11-12 09:44:54 +01:00