aboutsummaryrefslogtreecommitdiff
path: root/openssl-sys/src
diff options
context:
space:
mode:
authorSteven Fackler <[email protected]>2016-07-31 15:15:47 -0700
committerSteven Fackler <[email protected]>2016-07-31 15:15:47 -0700
commitf0ffa246b83102d70bc59f76d136981efdafb1e7 (patch)
tree0f6036a20ba4eb7b333986206962abeb4bab6c2f /openssl-sys/src
parentRevert "Add a new trait based Nid setup" (diff)
parentMerge pull request #402 from bbatha/feat/dsa-ffi (diff)
downloadrust-openssl-f0ffa246b83102d70bc59f76d136981efdafb1e7.tar.xz
rust-openssl-f0ffa246b83102d70bc59f76d136981efdafb1e7.zip
Merge remote-tracking branch 'origin/master' into breaks
Diffstat (limited to 'openssl-sys/src')
-rw-r--r--openssl-sys/src/lib.rs64
1 files changed, 61 insertions, 3 deletions
diff --git a/openssl-sys/src/lib.rs b/openssl-sys/src/lib.rs
index 3d7c59c3..1a15fecb 100644
--- a/openssl-sys/src/lib.rs
+++ b/openssl-sys/src/lib.rs
@@ -1,6 +1,6 @@
#![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)]
#![allow(dead_code)]
-#![doc(html_root_url="https://sfackler.github.io/rust-openssl/doc/v0.7.10")]
+#![doc(html_root_url="https://sfackler.github.io/rust-openssl/doc/v0.7.14")]
extern crate libc;
@@ -115,6 +115,28 @@ pub struct RSA {
}
#[repr(C)]
+pub struct DSA {
+ pub pad: c_int,
+ pub version: c_long,
+ pub write_params: c_int,
+
+ pub p: *mut BIGNUM,
+ pub q: *mut BIGNUM,
+ pub g: *mut BIGNUM,
+ pub pub_key: *mut BIGNUM,
+ pub priv_key: *mut BIGNUM,
+ pub kinv: *mut BIGNUM,
+ pub r: *mut BIGNUM,
+
+ pub flags: c_int,
+ pub _method_mont_p: *mut c_void,
+ pub references: c_int,
+ pub ex_data: *mut c_void,
+ pub meth: *const c_void,
+ pub engine: *const c_void,
+}
+
+#[repr(C)]
pub struct EVP_PKEY {
pub type_: c_int,
pub save_type: c_int,
@@ -270,8 +292,11 @@ pub const SSL_CTRL_SET_TLSEXT_SERVERNAME_CB: c_int = 53;
pub const SSL_CTRL_SET_TLSEXT_SERVERNAME_ARG: c_int = 54;
pub const SSL_CTRL_SET_TLSEXT_HOSTNAME: c_int = 55;
pub const SSL_CTRL_EXTRA_CHAIN_CERT: c_int = 14;
-
pub const SSL_CTRL_SET_READ_AHEAD: c_int = 41;
+
+pub const SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER: c_long = 2;
+pub const SSL_MODE_AUTO_RETRY: c_long = 4;
+
pub const SSL_ERROR_NONE: c_int = 0;
pub const SSL_ERROR_SSL: c_int = 1;
pub const SSL_ERROR_SYSCALL: c_int = 5;
@@ -623,10 +648,28 @@ extern "C" {
pub fn PEM_read_bio_RSA_PUBKEY(bio: *mut BIO, rsa: *mut *mut RSA, callback: Option<PasswordCallback>, user_data: *mut c_void) -> *mut RSA;
pub fn PEM_write_bio_PrivateKey(bio: *mut BIO, pkey: *mut EVP_PKEY, cipher: *const EVP_CIPHER,
- kstr: *mut c_char, klen: c_int,
+ kstr: *mut c_uchar, klen: c_int,
callback: Option<PasswordCallback>,
user_data: *mut c_void) -> c_int;
pub fn PEM_write_bio_PUBKEY(bp: *mut BIO, x: *mut EVP_PKEY) -> c_int;
+ pub fn PEM_write_bio_RSAPrivateKey(bp: *mut BIO, rsa: *mut RSA, cipher: *const EVP_CIPHER,
+ kstr: *mut c_uchar, klen: c_int,
+ callback: Option<PasswordCallback>,
+ user_data: *mut c_void) -> c_int;
+ pub fn PEM_write_bio_RSAPublicKey(bp: *mut BIO, rsa: *mut RSA) -> c_int;
+ pub fn PEM_write_bio_RSA_PUBKEY(bp: *mut BIO, rsa: *mut RSA) -> c_int;
+
+ pub fn PEM_read_bio_DSAPrivateKey(bp: *mut BIO, dsa: *mut *mut DSA, callback: Option<PasswordCallback>,
+ user_data: *mut c_void) -> *mut DSA;
+ pub fn PEM_read_bio_DSA_PUBKEY(bp: *mut BIO, dsa: *mut *mut DSA, callback: Option<PasswordCallback>,
+ user_data: *mut c_void) -> *mut DSA;
+ pub fn PEM_write_bio_DSAPrivateKey(bp: *mut BIO, dsa: *mut DSA, cipher: *const EVP_CIPHER,
+ kstr: *mut c_uchar, klen: c_int, callback: Option<PasswordCallback>,
+ user_data: *mut c_void) -> c_int;
+ pub fn PEM_write_bio_DSA_PUBKEY(bp: *mut BIO, dsa: *mut DSA) -> c_int;
+
+
+
pub fn PEM_write_bio_X509(bio: *mut BIO, x509: *mut X509) -> c_int;
pub fn PEM_write_bio_X509_REQ(bio: *mut BIO, x509: *mut X509_REQ) -> c_int;
@@ -660,6 +703,18 @@ extern "C" {
pub fn RSA_verify(t: c_int, m: *const u8, mlen: c_uint, sig: *const u8, siglen: c_uint,
k: *mut RSA) -> c_int;
+ pub fn DSA_new() -> *mut DSA;
+ pub fn DSA_free(dsa: *mut DSA);
+ pub fn DSA_size(dsa: *const DSA) -> c_int;
+ pub fn DSA_generate_parameters_ex(dsa: *mut DSA, bits: c_int, seed: *const c_uchar, seed_len: c_int,
+ counter_ref: *mut c_int, h_ret: *mut c_ulong,
+ cb: *const c_void) -> c_int;
+ pub fn DSA_generate_key(dsa: *mut DSA) -> c_int;
+ pub fn DSA_sign(dummy: c_int, dgst: *const c_uchar, len: c_int, sigret: *mut c_uchar,
+ siglen: *mut c_uint, dsa: *mut DSA) -> c_int;
+ pub fn DSA_verify(dummy: c_int, dgst: *const c_uchar, len: c_int, sigbuf: *const c_uchar,
+ siglen: c_int, dsa: *mut DSA) -> c_int;
+
pub fn SSL_library_init() -> c_int;
pub fn SSL_load_error_strings();
@@ -832,6 +887,9 @@ extern "C" {
pub fn X509_REQ_add_extensions(req: *mut X509_REQ, exts: *mut stack_st_X509_EXTENSION) -> c_int;
pub fn X509_REQ_sign(x: *mut X509_REQ, pkey: *mut EVP_PKEY, md: *const EVP_MD) -> c_int;
+ pub fn i2d_X509_bio(b: *mut BIO, x: *mut X509) -> c_int;
+ pub fn i2d_X509_REQ_bio(b: *mut BIO, x: *mut X509_REQ) -> c_int;
+
pub fn i2d_RSA_PUBKEY(k: *mut RSA, buf: *const *mut u8) -> c_int;
pub fn d2i_RSA_PUBKEY(k: *const *mut RSA, buf: *const *const u8, len: c_uint) -> *mut RSA;
pub fn i2d_RSAPrivateKey(k: *mut RSA, buf: *const *mut u8) -> c_int;