summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xsrc/ffi.rs1
-rw-r--r--src/ssl/mod.rs8
2 files changed, 9 insertions, 0 deletions
diff --git a/src/ffi.rs b/src/ffi.rs
index 46466d39..4dc7b0cc 100755
--- a/src/ffi.rs
+++ b/src/ffi.rs
@@ -408,6 +408,7 @@ extern "C" {
pub fn SSL_CTX_use_certificate_file(ctx: *mut SSL_CTX, cert_file: *const c_char, file_type: c_int) -> c_int;
pub fn SSL_CTX_use_PrivateKey_file(ctx: *mut SSL_CTX, key_file: *const c_char, file_type: c_int) -> c_int;
+ pub fn SSL_CTX_set_cipher_list(ssl: *mut SSL_CTX, s: *const c_char) -> c_int;
pub fn X509_add_ext(x: *mut X509, ext: *mut X509_EXTENSION, loc: c_int) -> c_int;
pub fn X509_digest(x: *mut X509, digest: *const EVP_MD, buf: *mut c_char, len: *mut c_uint) -> c_int;
diff --git a/src/ssl/mod.rs b/src/ssl/mod.rs
index 33112f7a..86b3ec83 100644
--- a/src/ssl/mod.rs
+++ b/src/ssl/mod.rs
@@ -276,6 +276,14 @@ impl SslContext {
}
}))
}
+
+ pub fn set_cipher_list(&mut self, cipher_list: &str) -> Option<SslError> {
+ wrap_ssl_result(cipher_list.with_c_str(|cipher_list| {
+ unsafe {
+ ffi::SSL_CTX_set_cipher_list(self.ctx, cipher_list)
+ }
+ }))
+ }
}
#[allow(dead_code)]