Commit Graph

21 Commits

Author SHA1 Message Date
Steven Fackler 030cf5fe88 Fix for IO changes 2015-01-28 08:47:16 -08:00
Valerii Hiora 2a646916d7 Handle recent breaking changes
- macro reform
- split of Show and String in formatter
- CString reform
- feature changes
2015-01-07 15:32:51 +02:00
Alex Crichton 7774e672a2 Update to rust master 2014-12-23 08:14:42 -08:00
Valerii Hiora 6119d916cb Track master: proc removal, tuple indexing 2014-12-15 14:01:17 +02:00
Steven Fackler c3603b0db0 Make SslStream Cloneable
Closes #6
2014-11-29 11:06:16 -08:00
Gleb Kozyrev 50f11e533c Replace an expired cert with a new one to make tests happy 2014-11-20 19:53:31 +02:00
James Hurst f02d8c22ec Fixed compilation errors related to namedspaced enums 2014-11-17 19:16:51 -05:00
Cody P Schafer 89fb825e78 Update to work with change in TcpStream api 2014-11-07 13:47:42 -05:00
Michael Gehring 1eb79df25a fail! -> panic! 2014-10-30 09:58:22 +01:00
Valerii Hiora e47a3cf7e2 Cert loading from PEM & restructuring
- Added cert loading

- Extracted X509 tests
2014-10-15 09:24:08 +03:00
Valerii Hiora 59b843517d BN_is_zero as a Rust function
Although wrapping was relatively easy it basically meant
that we depend on C compilation which becomes nightmare
as soon as multiple platforms are used. I’ve got a huge pain
once iOS was involved with 3 device archs and 2 simulator 
arches to support, not mentioning different set of include 
and lib flags.

So there are 2 different approaches:

- continue this way, maintaining all compilation issues like
  like managing correct flags, providing correct paths and so
  on. This way our Makefile will grow extremely fast and will
  actually take more efforts to maintain.

- doing it pure Rust way. In this case we provide all the 
  macros expansions inside our wrappers and there should be
  no other way to access raw data other than through those 
  wrappers. It might be fragile if OpenSSL internal data 
  structures will ever change, but I think (or hope) it is 
  pretty stable and wouldn’t change anytime soon.

This PR eliminates `BN_is_zero` at all from public API. It’s
functionality is implemented in `BigNum.is_zero` and should 
be enough. 

Additional notes:

1. I’ve moved BIGNUM into `bn` so it could access fields
   directly and keep it as an opaque structure for everyone 
   else

2. I’ve kept empty Makefile as I hope to land `feature-matrix`
   branch soon and I don’t like merging deleted/added file 
   conflicts.
2014-10-09 19:25:07 +03:00
Steven Fackler de3f1cf57f Merge pull request #67 from vhbit/membio-eof
Fixed incorrect EOF handling in MemBio, added error description
2014-10-07 11:05:53 -07:00
Valerii Hiora 3ba768bc28 Fixed incorrect EOF handling in MemBio, added error description
Actually, EOF wasn't handled at all and it caused `mem_bio.read_to_end()` to fail. Which in turn failed all `write_pem` implementations.
2014-10-07 19:58:52 +03:00
Steven Fackler ad08bf4ed9 Merge pull request #71 from vhbit/path-ization
Using `Path`s instead of plain strings
2014-10-07 09:50:05 -07:00
Valerii Hiora 9dd8ce9270 Potential fix for #68 2014-10-07 15:21:17 +03:00
Valerii Hiora 41287f3b14 Using `Path`s instead of plain strings
Refs #45
2014-10-07 14:54:35 +03:00
Valerii Hiora 4d3f9e0520 Simpler setter for verify with data
There is no need in wrapping function in option as there is no
sense in providing data without function.
2014-10-04 06:47:27 +03:00
Valerii Hiora fbb359720b User-provided data in verify 2014-10-02 10:15:50 +03:00
Valerii Hiora 4fd169a1e5 Certificate/pkey generation & PEM export
Required quite a lot of refactoring
2014-09-26 10:39:08 +03:00
Steven Fackler e7e6ef5da2 Remove failing constructor wrappers 2014-09-05 21:52:44 -07:00
Steven Fackler 203bdd076e Shift directory structure 2014-08-03 19:16:09 -07:00