aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRohit Aggarwal <[email protected]>2018-03-08 11:54:19 +0000
committerRohit Aggarwal <[email protected]>2018-03-08 11:54:19 +0000
commit55ffc9b2e415c3286c8d903b7c0284c834e4a13d (patch)
treed8ee3c794afd47c4f87f925c86adc6e616c763a2
parentExposed some of ECDSA functions (diff)
downloadrust-openssl-55ffc9b2e415c3286c8d903b7c0284c834e4a13d.tar.xz
rust-openssl-55ffc9b2e415c3286c8d903b7c0284c834e4a13d.zip
Add support LibreSSL and remove OpenSSL binding which we aren't using
-rw-r--r--openssl-sys/src/lib.rs6
-rw-r--r--openssl-sys/src/libressl/mod.rs6
-rw-r--r--openssl-sys/src/ossl10x.rs20
-rw-r--r--openssl-sys/src/ossl110.rs19
4 files changed, 12 insertions, 39 deletions
diff --git a/openssl-sys/src/lib.rs b/openssl-sys/src/lib.rs
index 77f69188..4a73ff7f 100644
--- a/openssl-sys/src/lib.rs
+++ b/openssl-sys/src/lib.rs
@@ -1876,6 +1876,12 @@ extern "C" {
ctx: *mut BN_CTX,
) -> c_int;
+ pub fn ECDSA_SIG_new() -> *mut ECDSA_SIG;
+ pub fn ECDSA_SIG_free(sig: *mut ECDSA_SIG);
+ pub fn ECDSA_do_verify(dgst: *const c_uchar, dgst_len: c_int,
+ sig: *const ECDSA_SIG, eckey: *mut ::EC_KEY) -> c_int;
+ pub fn ECDSA_do_sign(dgst: *const c_uchar, dgst_len: c_int, eckey: *mut ::EC_KEY) -> *mut ECDSA_SIG;
+
pub fn ERR_peek_last_error() -> c_ulong;
pub fn ERR_get_error() -> c_ulong;
pub fn ERR_get_error_line_data(
diff --git a/openssl-sys/src/libressl/mod.rs b/openssl-sys/src/libressl/mod.rs
index 8454a78a..c47363ca 100644
--- a/openssl-sys/src/libressl/mod.rs
+++ b/openssl-sys/src/libressl/mod.rs
@@ -134,6 +134,12 @@ pub struct DSA {
}
#[repr(C)]
+pub struct ECDSA_SIG {
+ pub r: *mut ::BIGNUM,
+ pub s: *mut ::BIGNUM
+}
+
+#[repr(C)]
pub struct EVP_PKEY {
pub type_: c_int,
pub save_type: c_int,
diff --git a/openssl-sys/src/ossl10x.rs b/openssl-sys/src/ossl10x.rs
index 78c76b6e..09185160 100644
--- a/openssl-sys/src/ossl10x.rs
+++ b/openssl-sys/src/ossl10x.rs
@@ -829,26 +829,6 @@ extern "C" {
);
pub fn CRYPTO_set_id_callback(func: unsafe extern "C" fn() -> c_ulong);
- pub fn ECDSA_SIG_new() -> *mut ECDSA_SIG;
- pub fn ECDSA_SIG_free(sig: *mut ECDSA_SIG);
- pub fn i2d_ECDSA_SIG(sig: *const ECDSA_SIG, pp: *mut *mut c_uchar) -> c_int;
- pub fn d2i_ECDSA_SIG(sig: *mut *mut ECDSA_SIG, pp: *mut *const c_uchar, len: c_long) -> *mut ECDSA_SIG;
- pub fn ECDSA_size(eckey: *const ::EC_KEY) -> c_int;
- pub fn ECDSA_sign(_type: c_int, dgst: *const c_uchar, dgstlen: c_int,
- sig: *mut c_uchar, siglen: *mut c_uint, eckey: *mut ::EC_KEY) -> c_int;
- pub fn ECDSA_do_sign(dgst: *const c_uchar, dgst_len: c_int, eckey: *mut ::EC_KEY) -> *mut ECDSA_SIG;
- pub fn ECDSA_verify(_type: c_int, dgst: *const c_uchar, dgstlen: c_int,
- sig: *const c_uchar, siglen: c_int, eckey: *mut ::EC_KEY) -> c_int;
- pub fn ECDSA_do_verify(dgst: *const c_uchar, dgst_len: c_int,
- sig: *const ECDSA_SIG, eckey: *mut ::EC_KEY) -> c_int;
- pub fn ECDSA_do_sign_ex(dgst: *const c_uchar, dgstlen: c_int,
- kinv: *const BIGNUM, rp: *const BIGNUM,
- eckey: *mut ::EC_KEY) -> *mut ECDSA_SIG;
- pub fn ECDSA_sign_setup(eckey: *mut ::EC_KEY, ctx: *mut ::BN_CTX, kinv: *mut *mut BIGNUM, rp: *mut *mut BIGNUM) -> c_int;
- pub fn ECDSA_sign_ex(_type: c_int, dgst: *const c_uchar, dgstlen: c_int,
- sig: *mut c_uchar, siglen: *mut c_uint,
- kinv: *const BIGNUM, rp: *const BIGNUM, eckey: *mut ::EC_KEY) -> c_int;
-
pub fn ERR_load_crypto_strings();
pub fn RSA_generate_key(
diff --git a/openssl-sys/src/ossl110.rs b/openssl-sys/src/ossl110.rs
index d6f4eb99..1902af75 100644
--- a/openssl-sys/src/ossl110.rs
+++ b/openssl-sys/src/ossl110.rs
@@ -365,25 +365,6 @@ extern "C" {
pub fn X509_REQ_get_version(req: *const X509_REQ) -> c_long;
pub fn X509_REQ_get_subject_name(req: *const X509_REQ) -> *mut ::X509_NAME;
- pub fn ECDSA_SIG_new() -> *mut ECDSA_SIG;
- pub fn ECDSA_SIG_free(sig: *mut ECDSA_SIG);
pub fn ECDSA_SIG_get0(sig: *const ECDSA_SIG, pr: *mut *const BIGNUM, ps: *mut *const BIGNUM);
pub fn ECDSA_SIG_set0(sig: *mut ECDSA_SIG, pr: *mut BIGNUM, ps: *mut BIGNUM) -> c_int;
- pub fn i2d_ECDSA_SIG(sig: *const ECDSA_SIG, pp: *mut *mut c_uchar) -> c_int;
- pub fn d2i_ECDSA_SIG(sig: *mut *mut ECDSA_SIG, pp: *mut *const c_uchar, len: c_long) -> *mut ECDSA_SIG;
- pub fn ECDSA_size(eckey: *const ::EC_KEY) -> c_int;
- pub fn ECDSA_sign(_type: c_int, dgst: *const c_uchar, dgstlen: c_int,
- sig: *mut c_uchar, siglen: *mut c_uint, eckey: *mut ::EC_KEY) -> c_int;
- pub fn ECDSA_do_sign(dgst: *const c_uchar, dgst_len: c_int, eckey: *mut ::EC_KEY) -> *mut ECDSA_SIG;
- pub fn ECDSA_verify(_type: c_int, dgst: *const c_uchar, dgstlen: c_int,
- sig: *const c_uchar, siglen: c_int, eckey: *mut ::EC_KEY) -> c_int;
- pub fn ECDSA_do_verify(dgst: *const c_uchar, dgst_len: c_int,
- sig: *const ECDSA_SIG, eckey: *mut ::EC_KEY) -> c_int;
- pub fn ECDSA_do_sign_ex(dgst: *const c_uchar, dgstlen: c_int,
- kinv: *const BIGNUM, rp: *const BIGNUM,
- eckey: *mut ::EC_KEY) -> *mut ECDSA_SIG;
- pub fn ECDSA_sign_setup(eckey: *mut ::EC_KEY, ctx: *mut ::BN_CTX, kinv: *mut *mut BIGNUM, rp: *mut *mut BIGNUM) -> c_int;
- pub fn ECDSA_sign_ex(_type: c_int, dgst: *const c_uchar, dgstlen: c_int,
- sig: *mut c_uchar, siglen: *mut c_uint,
- kinv: *const BIGNUM, rp: *const BIGNUM, eckey: *mut ::EC_KEY) -> c_int;
}