00001 /* 00002 * Copyright 2003 Michael A. Marsh, Cornell University. All rights reserved. 00003 * This software is released under the modified BSD license. 00004 * See the file LICENSE in the top-level directory for details. 00005 */ 00006 // 00007 // $Id: SecureBigNumber.cc,v 1.3 2004/05/19 15:56:38 mmarsh Exp $ 00008 // 00009 // $Log: SecureBigNumber.cc,v $ 00010 // Revision 1.3 2004/05/19 15:56:38 mmarsh 00011 // Added copyright and license statements. 00012 // 00013 // Revision 1.2 2003/11/04 22:31:46 mmarsh 00014 // *** empty log message *** 00015 // 00016 // 00017 00018 #include "SecureBigNumber.h" 00019 00020 using namespace CODEX_ASN1; 00021 00022 SecureBigNumber::SecureBigNumber() : 00023 BigNumber() 00024 { 00025 } 00026 00027 SecureBigNumber::SecureBigNumber( BIGNUM * pBN ) : 00028 BigNumber( pBN ) 00029 { 00030 } 00031 00032 SecureBigNumber::SecureBigNumber( const ASN1_INTEGER* asn1 ) : 00033 BigNumber( asn1 ) 00034 { 00035 } 00036 00037 SecureBigNumber::SecureBigNumber( const BigNumber& aBN ) : 00038 BigNumber( aBN ) 00039 { 00040 } 00041 00042 SecureBigNumber::~SecureBigNumber() 00043 { 00044 if ( m_initialized ) 00045 { 00046 if ( NULL != m_value ) BN_clear( m_value ); 00047 // There's no clear function for ASN.1 objects. 00048 if ( NULL != m_asn1 ) memset(m_asn1->data,0,m_asn1->length); 00049 } 00050 }
1.4.1