Erik Johnston
80ac6e54ac
Make SSLCipher.bits() return a struct.
2016-02-29 21:23:34 +00:00
Erik Johnston
04cbf049c0
Add SSL_get_version
2016-02-29 20:14:48 +00:00
Erik Johnston
1e9667ea89
Add support for SSL_CIPHER
2016-02-17 22:38:32 +00:00
Steven Fackler
643a4a58c9
More deprecated function cleanup
2016-02-08 23:20:19 -08:00
Steven Fackler
e3e4aa4472
Stop using deprecated method
2016-02-08 23:12:54 -08:00
Steven Fackler
b7d3357f37
Fix connect and accept error reporting
...
We were previously trying to create an error twice so the second
wouldn't be correct.
2016-01-22 15:34:31 -08:00
Cody P Schafer
d1825c7a86
openssl/ssl/context: test that we are refcounting correctly
...
Not a perfect test, on failure it _might_ exit with this output:
Process didn't exit successfully:
`/home/cody/g/rust-openssl/openssl/target/debug/openssl-8e712036e3aac4fe`
(signal: 11)
But unclear if we can do any better.
2016-01-18 16:40:14 -05:00
Cody P Schafer
dacde211c3
ssl: fix refcounting of SslContext when set_ssl_context is used
...
Additionally impl Clone for SslContext to both allow us to use it &
allow external users to take advantage of SslContext's internal
refcount.
Maintain the existing signature for set_ssl_context(), but
add inline comments recommending changing it.
Fixes #333
2016-01-18 15:37:13 -05:00
Steven Fackler
86e2f81f43
Fix should_panic check
2016-01-11 23:45:12 -08:00
Steven Fackler
fd6454f625
Add stream panic propagation behind a nightly feature gate
2016-01-11 22:36:58 -08:00
Steven Fackler
11129aa521
Rustfmt
2015-12-18 22:34:30 -08:00
Steven Fackler
a31acdbb93
Fix deprecation location
2015-12-18 22:21:23 -08:00
Steven Fackler
e85b49d375
Work around the worst of clone bogusness
...
SslStream::{clone,try_clone} are inherently broken since the Ssl object
shared by both streams is only going to be talking to one stream. Stuff
like hyper depends on try_clone, so we'll leave it here for now but
minimize the brokenness to "no worse than what it used to be like".
They'll be removed in 0.8.
cc #325
2015-12-18 21:20:47 -08:00
Steven Fackler
e077ed0b4d
Disable cross compilation for now
2015-12-17 21:13:44 -08:00
Steven Fackler
053c924d5a
Fix nonblocking behavior
...
A new nonblocking socket may not have finished connecting yet, so reads
and writes can return ENOTCONNECTED which we should reinterpret into a
WantRead or WantWrite
Closes #323
2015-12-17 16:54:11 -08:00
Ondrej Perutka
02d2230a76
Fix regression of c_char type mismatches on ARM
2015-12-16 11:11:14 +01:00
Steven Fackler
157e6aa961
Rustfmt
2015-12-15 21:51:20 -08:00
Steven Fackler
edfb318e0b
Fix bounds on ssl_read and ssl_write
2015-12-15 20:06:07 -08:00
Steven Fackler
6d559bf1da
Cleanup SNI stuff
2015-12-15 19:39:24 -08:00
Steven Fackler
3a0e64dca5
Cleanup
2015-12-15 19:33:36 -08:00
Steven Fackler
514c5ec415
Merge pull request #309 from Geal/master
...
Add support for Server Name indication (SNI) on the server's side
2015-12-15 19:22:39 -08:00
Steven Fackler
f2fae1f83f
Document unused variant
...
No reason to hide it
2015-12-14 23:44:28 -08:00
Steven Fackler
b8c8b770e3
Yet more AsRawSocket fixes
2015-12-12 18:01:21 -08:00
Steven Fackler
ddedda1d03
More AsRawSocket fixes
2015-12-12 16:47:03 -08:00
Steven Fackler
63a45ac622
Fix AsRawSocket impls
2015-12-12 16:33:58 -08:00
Steven Fackler
d6ce9afdf3
Have NonblockingSslStream delegate to SslStream
2015-12-12 15:46:17 -08:00
Steven Fackler
1df131ff81
Build out a new error type
2015-12-12 15:01:16 -08:00
Steven Fackler
aa37dba0bc
Make error handling more reliable
2015-12-10 21:58:22 -08:00
Steven Fackler
91f8c542f7
Replace SslStream implementation!
2015-12-09 23:30:29 -08:00
Steven Fackler
8f56897043
Implement read and write
2015-12-09 22:02:02 -08:00
Steven Fackler
9ee6f1c578
IT LIVES
2015-12-09 21:43:02 -08:00
Steven Fackler
4d883d488e
Custom BIO infrastructure
2015-12-08 23:02:38 -08:00
Geoffroy Couprie
6850c810d3
Increment SSL_CTX's reference count in Ssl::get_ssl_context()
...
Without this, whenever the returned SslContext is released,
the refcount of the underlying SSL_CTX will decrease and it
will be freed too soon
2015-12-03 12:26:55 +01:00
Ondrej Perutka
f54af75eb7
Cast correctly c_char raw pointers (fixes build on ARM #314 )
2015-11-30 21:06:54 +01:00
Geoffroy Couprie
7835ea1c90
Make shims for SSL_CTX_ctrl and SSL_CTX_callback_ctrl macro wrappers
2015-11-25 08:10:36 +01:00
Geoffroy Couprie
e486944320
fix memory management
2015-11-25 07:51:22 +01:00
Geoffroy Couprie
667e3f44b9
Avoid freeing the SSL object when Ssl is dropped
2015-11-24 17:15:52 +01:00
Geoffroy Couprie
dba3a0ced2
implement get/set ssl context
2015-11-24 17:11:00 +01:00
Geoffroy Couprie
cb4263f91e
test SNI support
2015-11-24 17:11:00 +01:00
Steven Fackler
6bb3d8f1b5
Implement try_clone for MaybeSslStream
...
Closes #308
2015-11-20 21:33:36 -08:00
Alex Gaynor
38b3b4a11e
Fixed a typo in a comment.
2015-11-19 19:52:26 -05:00
Steven Fackler
a8a10e64ad
Split stuff requiring a shim out to a separate crate
2015-11-16 20:16:01 -08:00
Steven Fackler
309b6d9f46
Switch to libc 0.2
2015-11-16 20:16:01 -08:00
Steven Fackler
03e4908c13
Move SSL methods to Ssl object, add getter
2015-11-16 20:16:01 -08:00
Steven Fackler
be2cbabdb7
Revert "Revert "Merge pull request #280 from ltratt/libressl_build""
...
This reverts commit ae3d0e36d7 .
2015-11-16 20:16:01 -08:00
Steven Fackler
1e7ff1d8a8
Better debug impls
2015-10-26 21:43:52 -07:00
Alex Crichton
c895b9f09f
Get nonblocking tests working on OSX/Windows
2015-10-22 08:45:29 -07:00
Jamie Turner
c37767df8f
Nonblocking streams support.
2015-10-20 23:14:26 -07:00
Steven Fackler
ae3d0e36d7
Revert "Merge pull request #280 from ltratt/libressl_build"
...
This reverts commit aad933e507 , reversing
changes made to 60ee731408 .
2015-10-14 21:51:32 -04:00
Frank Denis
a28253ee7d
Add set_certificate_chain_file()
...
SSL_CTX_use_certificate_chain_file() is preferred over
SSL_CTX_use_certificate_file().
It allows the use of complete certificate chains instead of loading
only the first certificate in a PEM file.
2015-10-12 20:54:00 +02:00