Commit 293f1ce5 authored by Alex Crichton's avatar Alex Crichton
Browse files

Fixup for beta

Add derive(Clone) and don't negate unsigned numbers
parent f4761bb2
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
@@ -50,6 +50,9 @@ pub struct EVP_MD_CTX {
}

impl Copy for EVP_MD_CTX {}
impl Clone for EVP_MD_CTX {
    fn clone(&self) -> EVP_MD_CTX { *self }
}

#[repr(C)]
pub struct HMAC_CTX {
@@ -62,6 +65,9 @@ pub struct HMAC_CTX {
}

impl Copy for HMAC_CTX {}
impl Clone for HMAC_CTX {
    fn clone(&self) -> HMAC_CTX { *self }
}

#[repr(C)]
pub struct X509V3_CTX {
@@ -77,6 +83,9 @@ pub struct X509V3_CTX {
}

impl Copy for X509V3_CTX {}
impl Clone for X509V3_CTX {
    fn clone(&self) -> X509V3_CTX { *self }
}

#[repr(C)]
pub struct BIGNUM {
@@ -88,6 +97,9 @@ pub struct BIGNUM {
}

impl Copy for BIGNUM {}
impl Clone for BIGNUM {
    fn clone(&self) -> BIGNUM { *self }
}

pub type CRYPTO_EX_new = extern "C" fn(parent: *mut c_void, ptr: *mut c_void,
                                       ad: *const CRYPTO_EX_DATA, idx: c_int,
+3 −3
Original line number Diff line number Diff line
@@ -8,7 +8,7 @@ use ssl::error::SslError;

pub struct BigNum(*mut ffi::BIGNUM);

#[derive(Copy)]
#[derive(Copy, Clone)]
#[repr(C)]
pub enum RNGProperty {
    MsbMaybeZero = -1,
@@ -196,7 +196,7 @@ impl BigNum {
    pub fn div_word(&mut self, w: c_ulong) -> Result<c_ulong, SslError> {
        unsafe {
            let result = ffi::BN_div_word(self.raw(), w);
            if result != -1 as c_ulong {
            if result != !0 as c_ulong {
                Ok(result)
            } else {
                Err(SslError::get())
@@ -207,7 +207,7 @@ impl BigNum {
    pub fn mod_word(&self, w: c_ulong) -> Result<c_ulong, SslError> {
        unsafe {
            let result = ffi::BN_mod_word(self.raw(), w);
            if result != -1 as c_ulong {
            if result != !0 as c_ulong {
                Ok(result)
            } else {
                Err(SslError::get())
+2 −2
Original line number Diff line number Diff line
@@ -6,7 +6,7 @@ use std::io;
use ffi;

/// Message digest (hash) type.
#[derive(Copy)]
#[derive(Copy, Clone)]
pub enum Type {
    MD5,
    SHA1,
@@ -51,7 +51,7 @@ impl Type {
    }
}

#[derive(PartialEq, Copy)]
#[derive(PartialEq, Copy, Clone)]
enum State {
    Reset,
    Updated,
+1 −1
Original line number Diff line number Diff line
@@ -22,7 +22,7 @@ use std::io::prelude::*;
use crypto::hash::Type;
use ffi;

#[derive(PartialEq, Copy)]
#[derive(PartialEq, Copy, Clone)]
enum State {
    Reset,
    Updated,
+3 −3
Original line number Diff line number Diff line
@@ -9,7 +9,7 @@ use crypto::hash::Type as HashType;
use ffi;
use ssl::error::{SslError, StreamError};

#[derive(Copy)]
#[derive(Copy, Clone)]
enum Parts {
    Neither,
    Public,
@@ -17,7 +17,7 @@ enum Parts {
}

/// Represents a role an asymmetric key might be appropriate for.
#[derive(Copy)]
#[derive(Copy, Clone)]
pub enum Role {
    Encrypt,
    Decrypt,
@@ -26,7 +26,7 @@ pub enum Role {
}

/// Type of encryption padding to use.
#[derive(Copy)]
#[derive(Copy, Clone)]
pub enum EncryptionPadding {
    OAEP,
    PKCS1v15
Loading