Commit Graph

721 Commits

Author SHA1 Message Date
Steven Fackler 0fb1e55a98 Allow configuration of EC groups and signature algorithms
Closes #1186
2019-11-16 10:54:27 -08:00
Steven Fackler 34c2b69118
Merge pull request #1180 from PrismaPhonic/master
Added clonability for sha hash state.  Useful for incremental hashing
2019-11-11 21:01:19 -05:00
Peter Farr 8fae1115a4 Changed all sha objects to be clonable per PR review suggestion. 2019-11-11 16:31:47 -08:00
Lukas Lihotzki 258c49a581 Add #[cfg(ossl110)] 2019-11-11 23:03:40 +01:00
Lukas Lihotzki 6d6429237d Add EC_GROUP_order_bits 2019-11-11 22:04:14 +01:00
Peter Farr 22f029064a Added clonability for sha hash state. Useful for incremental hashing 2019-11-11 11:09:49 -08:00
Steven Fackler dc72a8e2c4
Merge pull request #1173 from griff/rework-673
Add methods for comparing Asn1TimeRef and creating Asn1Time from Unix time
2019-10-21 20:37:41 -04:00
Steven Fackler 0e72e5d27f Release openssl-sys v0.9.52 2019-10-19 07:35:52 -07:00
Charlie Li f66c860fce Support LibreSSL 3.0.2
3.0.2 is the first stable release, so support the rest of the series.
2019-10-19 09:56:56 -04:00
Brian Olsen 80e0dd03ba
Add method to create Asn1Time from time_t value
This is mostly just a rework of the earlier work done by @illegalprime
in his PR #673 and credit should go to him.
2019-10-13 23:10:16 +02:00
Brian Olsen 14a6a98ebf
Add diff method and comparisons to Asn1TimeRef
This implements a `diff` method on `Asn1TimeRef` using `ASN1_TIME_diff`
and uses this new method to implement combinations of `PartialEq` and
`PartialOrd` for `Asn1Time` and `Asn1TimeRef`.

This is mostly just a rework of the earlier work done by @illegalprime
in his PR #673 and credit should go to him.
2019-10-13 23:09:12 +02:00
Steven Fackler ff14649daf Fix changelog links 2019-10-09 18:04:54 -07:00
Steven Fackler 79fd645c75 Release openssl-sys v0.9.51 2019-10-09 18:03:13 -07:00
Matt Vertescher b771738a3a Fix rustc warnings
- Use `..=` for inclusive ranges
- Add the `dyn` keyword for trait objects
- Switch from `ONCE_INIT` to `std::sync::Once::new()`
2019-10-08 08:35:35 -04:00
Charlie Li e2b51a8705 Support LibreSSL 3.0.1 2019-10-03 09:21:11 -04:00
Steven Fackler 02c3262be8 Release openssl-sys v0.9.50 2019-10-02 17:46:57 -07:00
Steven Fackler 7ce0835b74 Implement Clone for PKey 2019-10-01 18:45:10 -07:00
Sebastian Sturm bdede43afe Added support for Ed25519 and Ed448 signatures 2019-08-16 11:15:04 +02:00
Steven Fackler 8b2c370b86 Release openssl-sys v0.9.49 2019-08-15 22:19:46 -04:00
Steven Fackler 8d521bacbb Support LibreSSL 3.0.0
Closes #1121
2019-08-06 18:36:04 -07:00
Steven Fackler 45c83e2772 Release openssl-sys v0.9.48 2019-07-19 07:30:11 -07:00
Leo 88c5bd81c7 Add AES-192 and OFB mode 2019-07-06 17:11:37 +08:00
Mike Belopuhov aef0517dcf Expose EC_POINT_dup as EcPoint::to_owned 2019-06-19 21:34:48 +02:00
Mike Belopuhov e8fc907da3 Expose EC_GROUP_get_cofactor as EcGroup::cofactor 2019-06-14 16:41:47 +02:00
Mike Belopuhov 390d71f1e5 Expose EC_GROUP_get0_generator as EcGroup::generator 2019-06-13 03:09:45 +02:00
Daniel Abramov fab6ea4727 Conditionally compile PEM functions for CMS
Apparently libressl does not quite support all CMS functions (well, at
least the bindings for CMS are currently compile-time guarded), so CI
checks inside the systest fail during the verification on libressl.
This is an attempt to fix it.
2019-06-12 16:48:16 +02:00
Daniel Abramov 124c05d058 Add `CmsContentInfo` <-> PEM bindings 2019-06-12 10:23:48 +02:00
Russell Greene b9341856b1 Add AES_wrap_key and AES_unwrap_key functionality 2019-06-05 21:03:34 -06:00
Steven Fackler ef86438a10 Report the vendored install location
Closes #1117
2019-05-31 19:08:58 -07:00
Steven Fackler 958c1811b0 Fix constness for 1.1.1c 2019-05-31 07:29:00 -07:00
Steven Fackler b6d968b378 Release openssl-sys v0.9.47 2019-05-18 12:10:57 -07:00
Andy Caldwell 628c3b338a
Add SSL_CTX_add_client_CA on OpenSSL 2019-05-13 15:08:02 +01:00
Steven Fackler aabaf97935 Release openssl-sys v0.9.46 2019-05-08 18:44:41 -07:00
Steven Fackler a9b9f818a1
Merge pull request #1097 from vishwin/master
Support LibreSSL 2.9.1
2019-05-08 18:40:18 -07:00
Steven Fackler 2f5ecb4267 Release openssl-sys v0.9.45 2019-05-03 19:52:18 -07:00
Steven Fackler 62b211990f
Revert "fix build err for taget `*-pc-windows-gnu`" 2019-05-03 18:44:53 -07:00
Alex Crichton 06577cbf9c Switch from `rustc_version` to `autocfg`
This switches the `openssl-sys` crate from using `rustc_version` as a
crate to check the version of rustc to using `autocfg`. While
functionally the same this has a few advantages:

* The `autocfg` crate has fewer dependencies and compiles faster
* If the `semver` crate has the `serde` feature activated, turns out
  `openssl-sys` gets compiled quite late in the dependency graph which
  can push back further C compilations. This is due to the slower
  compilation time of `serde` itself.
* The `autocfg` crate I believe is a bit more robust in terms of being
  flexible with the output of rustc itself.
2019-05-01 08:09:40 -07:00
Steven Fackler 3331908a1d Release openssl v0.10.21 2019-04-30 21:59:02 -07:00
Steven Fackler dedbcc6570 Release v0.9.44 2019-04-30 21:54:53 -07:00
Charlie Li 995f9a9533 Whitelist future LibreSSL 2.9.x versions, as 2.9.1 is the first stable release. 2019-04-26 14:35:11 -04:00
南浦月 844c3c445a
fix build err for taget `*-pc-windows-gnu` 2019-04-26 15:27:16 +08:00
Charlie Li d79090a00a Reconcile exdata and version functions between libraries/versions. 2019-04-24 23:15:56 -04:00
Charlie Li 98f91769e3 Add missing any() in the {,D}TLS_method usage logic. 2019-04-24 19:29:01 -04:00
Charlie Li f0b8a2e467 Support LibreSSL 2.9.1
LibreSSL 2.9.1 added generic DTLS methods.

While here, bump CircleCI.
2019-04-24 16:08:42 -04:00
Vojtěch Pejša 865c613de3 Fix requiret ossl version for EVP_PKEY_size 2019-04-23 12:36:42 +02:00
Vojtěch Pejša f40a328d43 Remove unnecessary version req and clean up param names. 2019-04-18 10:47:50 +02:00
Vojtěch Pejša 63c7bda0c2 Add minimum ossl version. 2019-04-15 13:41:54 +02:00
Vojtěch Pejša 08879ed512 Add EVP_Seal and EVP_Open 2019-04-15 00:54:49 +02:00
Hristo Venev 6b0583b7c4 Tell dependencies if vendored OpenSSL was used
The system OpenSSL knows where its certificates are. If
DEP_OPENSSL_VENDORED is not set:
- openssl-probe doesn't need to set any environment variables and can
get the paths from OpenSSL itself.
- Libraries that normally use `openssl_probe::probe()` and
`SSL_CTX_load_verify_locations` can instead use
`SSL_CTX_set_default_verify_paths`.
2019-04-03 18:01:49 +03:00
Steven Fackler a6b6648a62 Release openssl-sys v0.9.43 2019-03-20 10:39:09 -04:00