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
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
Steven Fackler
27494508bf
Fix deprecation warning
2019-03-11 21:35:21 -07: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
0dd632456f
Release openssl-sys v0.9.42
2019-03-01 12:38:18 -08: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
5faeeb5c61
Merge pull request #1070 from sfackler/build-script-cleanup
...
Build script cleanup
2019-02-27 21:28:45 -08:00
Steven Fackler
2474bce3db
Don't dynamically generate expando.c
2019-02-27 21:14:46 -08:00
Steven Fackler
25f750c223
Add some debugability to build script env
...
Also split finding logic out to separate files
2019-02-26 20:45:10 -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
4c6af10cbd
Release openssl-sys v0.9.41
2019-02-22 10:50:16 -07: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
b24ee29fa6
Release v0.9.40
2018-12-16 09:02:07 -08:00
Laurence Tratt
af4488357c
Explicitly support LibreSSL 2.9.0.
2018-12-03 17:33:53 +00: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
Steven Fackler
3aecfe5655
Release openssl-sys v0.9.39
2018-10-18 20:11:35 -07:00
Steven Fackler
9fd7584a84
Support LibreSSL 2.8.x
...
Closes #1009
2018-10-18 08:49:24 -07:00
Steven Fackler
c482f6d8dc
Release openssl-sys v0.9.38
2018-10-16 13:15:26 -07: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
Steven Fackler
d3bb880866
Release openssl-sys 0.9.37
2018-10-14 16:09:17 -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
Charlie Li
72a60af503
Only whitelist LibreSSL 2.8.0 and 2.8.1
...
ABI is not declared stable for anything past 2.8.1 yet.
2018-09-27 01:48:44 -04:00
Charlie Li
b6971883be
Support the rest of LibreSSL 2.8.x
...
LibreSSL 2.8.1 released, so update the check for all versions in the series, not just 2.8.0.
2018-09-27 01:19:39 -04:00
Steven Fackler
22231d7547
Support the client hello callback
2018-09-15 13:29:18 -07:00
Steven Fackler
8f94c13a3e
Release openssl-sys 0.9.36
2018-09-13 19:17:48 -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
0c92bba84a
Release openssl-sys 0.9.35
2018-08-04 10:11:10 -07:00
Alex Crichton
71ee9439ca
Support builds of OpenSSL from vendored source (take 2)
...
This is a revival of #684 to see if I can help push it across the finish line!
Closes #580
2018-07-30 15:15:24 -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
Emīls
76cad11b64
Link all needed system libraries on Windows, when building statically
2018-06-29 19:35:16 +01: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
Steven Fackler
9bf748befb
Link to gdi32 on windows
...
Closes #935
2018-06-09 09:35:01 -07:00
Steven Fackler
d82a49bee2
Release openssl-sys 0.9.33
2018-06-06 13:36:24 -07:00
Marco Huenseler
f5e6d57c47
Provide an Asn1Object getter method for X509NameEntryRef
2018-06-03 15:38:46 +02:00
Marco Huenseler
2afdc16fc9
Make X509NameRef provide an iterator over all X509NameEntries
2018-06-03 15:38:46 +02:00
Steven Fackler
0745d66927
Update to 1.1.1-pre7
...
The initial session ticket is now sent as part of SSL_accept, so some
tests need to write a single byte through the stream to make sure that
both ends have fully completed to avoid test flakes.
TLSv1.3 cipher suite control has been extracted from the normal cipher
list into a separate method: SslContextBuilder::set_ciphersuites.
2018-06-02 13:58:56 -07:00
Benjamin Cheng
b1eb1224f5
Merge remote-tracking branch 'origin/master'
2018-06-02 10:56:31 -04:00
Steven Fackler
24f4bdb533
Merge pull request #940 from CmdrMoozy/rsa_padding
...
Add an openssl-sys binding for RSA_padding_check_PKCS1_type_2.
2018-06-01 21:16:10 -07:00
Steven Fackler
52f581ffc9
Release openssl-sys v0.9.32
2018-06-01 20:57:09 -07:00
Axel Rasmussen
fb1b9b4140
Add an openssl-sys binding for RSA_padding_check_PKCS1_type_2.
...
This padding check implementation is useful for certain types of RSA
decryption, notably the type performed by Yubico's PIV library.
2018-05-30 18:48:42 -07:00
Steven Fackler
3456add537
Add SslRef::verified_chain
2018-05-29 21:53:22 -07:00
Marco Huenseler
b8de619fbe
Get Nid string representations
2018-05-28 12:13:40 +02:00
Steven Fackler
772e1c003f
Add some digest support
2018-05-24 21:06:11 -07:00
Steven Fackler
c0876cc8c6
Add bindings to SSL_get_finished and SSL_get_peer_finished
...
These are used for the tls-unique SCRAM channel binding mode.
2018-05-24 20:00:28 -07:00
Steven Fackler
c7db3d18ad
Merge pull request #920 from Ralith/max-early-data-accessors
...
TLS1.3 early data support
2018-05-22 20:42:46 -07:00
Benjamin Saunders
2e478fdcf4
Expose early I/O
2018-05-22 20:25:28 -07:00
Steven Fackler
25df3c8b51
Release openssl-sys 0.9.31
2018-05-20 21:02:12 -07:00
Steven Fackler
4c1fdf1d81
Support ALPN on libressl
...
Closes #690
2018-05-20 12:52:49 -07:00
Steven Fackler
a6fcef01c0
Overhaul openssl cfgs
...
Also expose hostname verification on libressl
2018-05-20 12:33:02 -07:00
Steven Fackler
9df403043b
Expose X509_VERIFY_PARAM on libressl
2018-05-20 11:29:27 -07:00
Steven Fackler
862d784161
Clean up openssl-sys cfgs
2018-05-20 11:29:27 -07:00
Steven Fackler
d991566f2b
Support min/max version in LibreSSL
...
Their implementations of the accessors don't behave expected with no
bounds, so we ignore those bits of the tests.
2018-05-19 19:57:12 -07:00
eonil
e037c0fcb8
Find path prefix to OpenSSL installed by Homebrew.
2018-05-19 03:13:07 +09:00
Benjamin Saunders
69c75a178b
Expose early keying material export
2018-05-17 13:16:41 -07:00
Benjamin Saunders
d5d414b16f
Expose max TLS1.3 early data accessors
2018-05-17 12:02:32 -07:00
Benjamin Cheng
47a68e2929
Add wrapper for SSL_CTX_set_psk_server_callback
2018-05-16 17:49:36 -04:00
Steven Fackler
1a909c8e5e
Some sys cleanup
2018-05-13 08:50:00 -07:00
Steven Fackler
53671518fd
Merge pull request #902 from ur0/CMS_sign
...
Add the CMS_sign and i2d_CMS_ContentInfo function bindings
2018-05-13 15:53:49 +01:00
Steven Fackler
b1e5c8b1ed
Implement Clone for Rsa
...
Closes #917
2018-05-12 16:34:47 -07:00
Steven Fackler
e5d65306e7
Change SslContext callback handling
...
Use the existing infrastructure!
2018-05-12 13:19:01 +01:00
Umang Raghuvanshi
afaa2387c8
Gate away CMS_KEY_PARAM from OpenSSL 1.0.1
2018-05-10 21:41:59 +05:30
Umang Raghuvanshi
541458c1c1
Properly version-gate CMS constants
2018-05-10 21:20:32 +05:30
Umang Raghuvanshi
90898e99c9
Move CMS_* flags to the openssl-sys package
...
Also renames attributes in the bitflags struct.
2018-05-10 20:26:57 +05:30
Steven Fackler
7a1b59d605
Fix base version for min/max proto accessors
...
Closes #911
2018-05-09 20:04:43 +01:00
Steven Fackler
bc0809a17d
Flag off constants added in 1.0.2h
...
Closes #868
2018-04-30 20:52:19 -07:00
Steven Fackler
25e3f66e3e
Release openssl-sys v0.9.30
2018-04-30 20:40:29 -07:00
Benjamin Saunders
47431f66bb
Expose SslSession <-> DER conversion
2018-04-29 01:54:16 -07:00
Steven Fackler
aa619c81c0
Some misc cleanup
2018-04-27 15:41:12 -07:00
Steven Fackler
03a4c6bd26
Reform version checking logic
...
Rather than having an infinitely growing set of things to look for, just
grab the literal version out. We also provide that to downstream crates,
and it should be used rather than the random assortment of other stuff
that's also passed down.
2018-04-26 22:45:09 -07:00
René Richter
5bb89d7552
Add functions to X509Req to obtain public key and extensions
...
This allows for basic CSR signing.
2018-04-21 23:14:48 +02:00
Umang Raghuvanshi
5360f5ad04
Fix mutability issues with CMS_sign
2018-04-20 17:30:20 +05:30
Umang Raghuvanshi
8ce5dee00d
Add the CMS_sign and i2d_CMS_ContentInfo function bindings
...
This adds the CMS_sign and i2d_CMS_ContentInfo bindings in the
openssl-sys crate and Rusty wrappers in the openssl crate.
2018-04-20 17:15:04 +05:30
Thomas Eizinger
bbaec65b73
Include information about development packages
...
Building the crate on a system without the development packages of openssl installed fails.
Issue #649 suggests to install those packages, which resolves the problem.
2018-04-12 08:42:29 +10:00
Steven Fackler
78d91428b5
Release openssl-sys 0.9.28
2018-04-05 11:09:36 -07:00
Ossi Herrala
01855a4f64
Combine LibreSSL 2.7.x versions into one
2018-04-03 09:26:50 +00:00
Ossi Herrala
03c6bcc159
Add LibreSSL 2.7.2
2018-04-02 13:48:26 +00:00
Ossi Herrala
23ca9d2832
Add support for LibreSSL 2.7.1
...
While there, support also future LibreSSL 2.7 versions out of the
box. This fixes compiling this crate in OpenBSD -current.
2018-03-31 20:14:24 +00:00
Steven Fackler
e423da2d12
Merge pull request #858 from Ralith/stateless-api
...
Introduce SslStreamBuilder
2018-03-31 11:28:03 -07:00
Steven Fackler
5c317d5a35
Remove unneeded build keys
2018-03-30 11:32:57 +02:00
Benjamin Saunders
bbb1cb61f6
Update to OpenSSL 1.1.1-pre3
2018-03-28 18:14:44 -07:00
Steven Fackler
c82a87a18e
Add Asn1IntegerRef::to_bn
...
Also deprecate Asn1IntegerRef since it's just asking for trouble.
2018-03-28 20:48:28 +02:00
Steven Fackler
f0614f4acd
Support LibreSSL 2.7.0
...
Closes #883
Closes #805
2018-03-22 20:22:07 +00:00
Steven Fackler
063186b62e
Merge pull request #856 from Flakebi/master
...
Make it possible to use cmac
2018-03-19 13:22:51 -07:00
Flakebi
0860115156
Make it possible to use cmac
...
This adds Signer::new_without_digest to create Signers which don't have
a digest (like cmac, which is based on aes).
As openssl supports cmac since version 1.1.0, the functions are behind
the ossl110 feature.
This allows building CMAC/OMAC1 and the EAX AEAD on top of this library.
2018-03-19 21:02:46 +01:00
Benjamin Saunders
09b1fe9a0d
Expose additional cipher and digest accessors
2018-03-16 20:33:23 -07:00
Steven Fackler
9452c01672
Merge pull request #864 from mlen/aes-ccm-bindings
...
Implement AES-{128,256}-CCM bindings
2018-03-11 16:30:37 -07:00
Steven Fackler
d0329473bd
Merge branch 'master' into custom-extensions
2018-03-11 15:27:28 -07:00
Steven Fackler
1b830c3fb7
Merge pull request #863 from rohit-lshift/master
...
Exposed some of ECDSA functions
2018-03-11 15:08:16 -07:00
Steven Fackler
00359a1a55
Merge pull request #861 from bkchr/verify_certificate
...
Implements `X509_verify_cert`
2018-03-11 13:37:21 -07:00
Mateusz Lenik
dcbb45cc9d
Implement AES-{128,256}-CCM bindings
2018-03-08 17:24:55 +01:00
Rohit Aggarwal
d4de2a408f
Use examples listed in OpenSSL docs for testing
2018-03-08 16:12:35 +00:00
Rohit Aggarwal
55ffc9b2e4
Add support LibreSSL and remove OpenSSL binding which we aren't using
2018-03-08 11:54:19 +00:00