Commit Graph

513 Commits

Author SHA1 Message Date
Russell Greene b9341856b1 Add AES_wrap_key and AES_unwrap_key functionality 2019-06-05 21:03:34 -06:00
Steven Fackler 958c1811b0 Fix constness for 1.1.1c 2019-05-31 07:29:00 -07:00
Andy Caldwell 628c3b338a
Add SSL_CTX_add_client_CA on OpenSSL 2019-05-13 15:08:02 +01: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
Nathaniel McCallum 702bc48b1c Expose EC_GROUP_get_curve_name()
This gives us the ability to get the Nid from an EcGroupRef.
2019-03-19 11:10:35 -04:00
Nathaniel McCallum d9cb5433b1 Expose EVP_MD_type()
This gives us the ability to get the Nid from a MessageDigest.
2019-03-19 11:10:35 -04:00
Alexey Galakhov a0e5b31799 X.509: add verify methods 2019-03-11 22:35:43 +01:00
tgbit 546eb4d391 CMS: add encrypt, from_der 2019-03-02 00:33:52 +01:00
Steven Fackler 404b7f1790 Add session cache size accessors 2019-03-01 10:07:51 -08:00
Steven Fackler a16482f972 Add session info accessors 2019-02-28 22:08:48 -08:00
Steven Fackler 913267e68a Add SslCtx::{add,remove}_session 2019-02-28 19:48:10 -08:00
Edouard Oger 55fee497bb Implement Clone for Dsa 2019-02-28 14:10:49 -05:00
Steven Fackler 953fe86b9a Add ERR_PACK
Also make error functions const when targeting a new enough rustc
2019-02-27 21:50:39 -08:00
Steven Fackler 297804b2d9 typo 2019-02-26 20:38:04 -08:00
Steven Fackler ab298d0264 Fix const changes in 1.1.1b 2019-02-26 20:31:01 -08:00
Steven Fackler 70afbb8393 Add standard ciphername support 2019-02-22 10:33:12 -07:00
Steven Fackler 7eee39f1ec Rustfmt 2019-02-22 10:14:15 -07:00
Ryuichi Okumura 899fc30e9b
Change from EVP_des_ede3_cfb to EVP_des_ede3_cfb64 2019-02-18 19:35:00 +09:00
Ryuichi Okumura 941a69a4d2
Add des_ede3_cfb symm cipher 2019-02-17 22:21:01 +09:00
Steven Fackler 34755f8a6b ASN1_TIME_from_string_x509 was added in 1.1.1 2019-01-27 13:14:11 -08:00
Steven Fackler 691ce7ca2a Add Asn1Time::from_str and Asn1Time::from_str_x509
Closes #1051
2019-01-27 13:05:03 -08:00
Steven Fackler 637228e7ee
SRP_CTX doesn't exist when OPENSSL_NO_SRP is set
Closes #1047
2019-01-25 09:19:14 -08:00
Zolmeister e56e09b6a4 Add RsaRef::check_key 2019-01-18 21:03:04 -06:00
Steven Fackler 5c7fa43d87 Add bindings to RAND_keep_random_devices_open
Closes #1019
2018-11-22 09:32:50 -07:00
Sameer e0e0a96cb3 Add new SHA3 EVP message digest functions in OpenSSL 1.1.1 2018-11-21 15:31:50 -05:00
Alex Crichton dab71dbf0a Bump dependency on openssl-src-rs
Brings in the first release with OpenSSL 1.1.1
2018-10-16 06:59:07 -07:00
Sam Scott 2dd3736444 Refactor to match style and add documentation. 2018-10-02 17:25:18 -04:00
Steven Fackler 0245eee724
Merge pull request #1002 from vishwin/master
Support the rest of LibreSSL 2.8.x
2018-10-01 08:27:59 -07:00
Charlie Li b86f547dbf Update the OCSP_cert_to_id() signature for LibreSSL 2.8.1
While here, restore CI for LibreSSL 2.8.0 alongside 2.8.1 to account for the function signature change.
2018-10-01 00:44:37 -04:00
Mike Belopuhov 18dfc9b6b2 Add support for encoding and decoding ECDSA signatures 2018-09-28 14:43:33 +02:00
Steven Fackler 22231d7547 Support the client hello callback 2018-09-15 13:29:18 -07:00
Steven Fackler 9e1a6f284b Fix missing symbol 2018-09-12 20:56:05 -07:00
Steven Fackler 8c6bc774db Support libressl 2.8.0
Closes #988
2018-09-12 20:44:22 -07:00
Steven Fackler 93a4e96255 Refactor openssl-sys
The old layout tried to structure itself by version but it ended up with
a lot of duplication. Instead, follow the structure of the header files.
2018-09-12 19:21:18 -07:00
Steven Fackler bc4e47a321 Fix lookup errors with SNI callback.
The job of an SNI callback is typically to swap out the context
associated with an SSL depending on the domain the client is trying to
talk to. Typically, only the callbacks associated with the current
context are used, but this is not the case for the SNI callback.

If SNI is run for a second time on a connection (i.e. in a
renegotiation) and the context was replaced with one that didn't itself
register an SNI callback, the old callback would run but wouldn't be
able to find its state in the context's ex data. To work around this, we
pass the pointer to the callback data directly to the callback to make
sure it's always available. It still lives in ex data to handle the
lifetime management.

Closes #979
2018-08-31 20:23:55 -07:00
Steven Fackler ef7721092d SRTP cleanup 2018-08-19 18:50:11 -07:00
Aron Wieck 59c578cf04 Add methods for DTLS/SRTP key handshake 2018-08-14 16:04:33 +02:00
Steven Fackler 1396143c66 Add get_shutdown and set_shutdown 2018-08-08 13:19:55 -07:00
Steven Fackler cb2f4c2287 X509_V_ERR_UNSPECIFIED was added in 1.0.2f
Closes #970
2018-08-04 10:23:35 -07:00
Steven Fackler 9eeee0930c Add bindings for custom error definition 2018-07-10 18:54:47 -07:00
Steven Fackler 1392b006e2
Merge pull request #937 from marcoh00/iterable-x509names
X509NameRef: Provide an iterator over all entries
2018-07-07 20:20:45 -07:00
Moritz Wanzenböck 4994e75d2c Add Dsa::from_(private|public)_components
Add 2 methods to create a DSA key pair from its raw components.
2018-06-18 18:10:02 +02:00
Steven Fackler 6440ee04ef
Merge pull request #943 from lolzballs/master
Add wrapper for SSL_CTX_set_psk_server_callback
2018-06-17 15:47:00 -07:00
Steven Fackler 115cb730b0 Switch to accessors in libressl where possible
Some accessors are mysteriously still macros so we can't make everything
opaque yet, unfortunately.

cc #909
2018-06-09 21:49:36 -07:00