diff options
Diffstat (limited to 'openssl/src/bn/mod.rs')
| -rw-r--r-- | openssl/src/bn/mod.rs | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/openssl/src/bn/mod.rs b/openssl/src/bn/mod.rs index 00a0a0ca..d548e9ef 100644 --- a/openssl/src/bn/mod.rs +++ b/openssl/src/bn/mod.rs @@ -1,7 +1,7 @@ use libc::{c_int, c_ulong, c_void}; use std::ffi::{CStr, CString}; use std::cmp::Ordering; -use std::{fmt, ptr}; +use std::{fmt, ptr, mem}; use ffi; use ssl::error::SslError; @@ -473,6 +473,11 @@ impl BigNum { n } + pub fn into_raw(self) -> *mut ffi::BIGNUM { + let mut me = self; + mem::replace(&mut me.0, ptr::null_mut()) + } + pub fn to_vec(&self) -> Vec<u8> { let size = self.num_bytes() as usize; let mut v = Vec::with_capacity(size); |