r3268 - in trunk/libmcrypto: include/libmcrypto include/libmcrypto/gnutls include/libmcrypto/openssl source source/gnutls source/openssl
svn at minisip.org
svn at minisip.org
Wed May 9 13:59:05 CEST 2007
Author: mikma
Date: 2007-05-03 15:50:10 +0200 (Thu, 03 May 2007)
New Revision: 3268
Modified:
trunk/libmcrypto/include/libmcrypto/cert.h
trunk/libmcrypto/include/libmcrypto/gnutls/cert.h
trunk/libmcrypto/include/libmcrypto/openssl/cert.h
trunk/libmcrypto/source/cert.cxx
trunk/libmcrypto/source/gnutls/cert.cxx
trunk/libmcrypto/source/openssl/cert.cxx
Log:
Convert some certificate pointers to MRef.
Modified: trunk/libmcrypto/include/libmcrypto/cert.h
===================================================================
--- trunk/libmcrypto/include/libmcrypto/cert.h 2007-05-03 13:49:39 UTC (rev 3267)
+++ trunk/libmcrypto/include/libmcrypto/cert.h 2007-05-03 13:50:10 UTC (rev 3268)
@@ -62,7 +62,7 @@
virtual ca_db* clone();
virtual void add_directory( std::string dir );
virtual void add_file( std::string file );
- virtual void add_certificate( certificate * cert );
+ virtual void add_certificate( MRef<certificate *> cert );
virtual std::list<MRef<ca_db_item*> > &get_items();
virtual MRef<ca_db_item*> get_next();
virtual void init_index();
@@ -76,7 +76,7 @@
virtual void add_item( MRef<ca_db_item*> item );
virtual MRef<ca_db_item*> create_dir_item( std::string dir );
virtual MRef<ca_db_item*> create_file_item( std::string file );
- virtual MRef<ca_db_item*> create_cert_item( certificate* cert );
+ virtual MRef<ca_db_item*> create_cert_item( MRef<certificate*> cert );
private:
std::list<MRef<ca_db_item*> >::iterator items_index;
Modified: trunk/libmcrypto/include/libmcrypto/gnutls/cert.h
===================================================================
--- trunk/libmcrypto/include/libmcrypto/gnutls/cert.h 2007-05-03 13:49:39 UTC (rev 3267)
+++ trunk/libmcrypto/include/libmcrypto/gnutls/cert.h 2007-05-03 13:50:10 UTC (rev 3268)
@@ -85,7 +85,7 @@
protected:
MRef<ca_db_item*> create_dir_item( std::string dir );
MRef<ca_db_item*> create_file_item( std::string file );
- MRef<ca_db_item*> create_cert_item( certificate* cert );
+ MRef<ca_db_item*> create_cert_item( MRef<certificate*> cert );
private:
gnutls_x509_crt_t * caList;
Modified: trunk/libmcrypto/include/libmcrypto/openssl/cert.h
===================================================================
--- trunk/libmcrypto/include/libmcrypto/openssl/cert.h 2007-05-03 13:49:39 UTC (rev 3267)
+++ trunk/libmcrypto/include/libmcrypto/openssl/cert.h 2007-05-03 13:50:10 UTC (rev 3268)
@@ -59,7 +59,7 @@
virtual std::string getMemObjectType() const {return "ossl_ca_db";}
void add_directory( std::string dir );
void add_file( std::string file );
- void add_certificate( certificate * cert );
+ void add_certificate( MRef<certificate *> cert );
private:
X509_STORE * cert_db;
Modified: trunk/libmcrypto/source/cert.cxx
===================================================================
--- trunk/libmcrypto/source/cert.cxx 2007-05-03 13:49:39 UTC (rev 3267)
+++ trunk/libmcrypto/source/cert.cxx 2007-05-03 13:50:10 UTC (rev 3268)
@@ -166,7 +166,7 @@
return item;
}
-MRef<ca_db_item*> ca_db::create_cert_item( certificate* cert ){
+MRef<ca_db_item*> ca_db::create_cert_item( MRef<certificate*> cert ){
MRef<ca_db_item*> item = new ca_db_item();
item->item = "";
@@ -184,7 +184,7 @@
add_item( item );
}
-void ca_db::add_certificate( certificate * cert ){
+void ca_db::add_certificate( MRef<certificate *> cert ){
MRef<ca_db_item*> item = create_cert_item( cert );
add_item( item );
}
Modified: trunk/libmcrypto/source/gnutls/cert.cxx
===================================================================
--- trunk/libmcrypto/source/gnutls/cert.cxx 2007-05-03 13:49:39 UTC (rev 3267)
+++ trunk/libmcrypto/source/gnutls/cert.cxx 2007-05-03 13:50:10 UTC (rev 3268)
@@ -74,10 +74,13 @@
certificate* certificate::load( const std::string cert_filename,
const std::string private_key_filename ){
MRef<priv_key*> priv_key = new gtls_priv_key( private_key_filename );
- certificate* cert = new gtls_certificate( cert_filename );
+ MRef<certificate*> cert = new gtls_certificate( cert_filename );
cert->set_pk( priv_key );
- return cert;
+
+ // The caller is responsible for deleting cert
+ cert->incRefCount();
+ return *cert;
}
// Import DER-encoded certificate from memory
@@ -1262,7 +1265,7 @@
return item;
}
-MRef<ca_db_item*> gtls_ca_db::create_cert_item( certificate* cert ){
+MRef<ca_db_item*> gtls_ca_db::create_cert_item( MRef<certificate*> cert ){
gtls_ca_db_item * item = new gtls_ca_db_item();
item->item = "";
Modified: trunk/libmcrypto/source/openssl/cert.cxx
===================================================================
--- trunk/libmcrypto/source/openssl/cert.cxx 2007-05-03 13:49:39 UTC (rev 3267)
+++ trunk/libmcrypto/source/openssl/cert.cxx 2007-05-03 13:50:10 UTC (rev 3268)
@@ -685,8 +685,8 @@
ca_db::add_file( file );
}
-void ossl_ca_db::add_certificate( certificate * cert ){
- ossl_certificate *ssl_cert = (ossl_certificate *)cert;
+void ossl_ca_db::add_certificate( MRef<certificate *> cert ){
+ ossl_certificate *ssl_cert = (ossl_certificate *)*cert;
X509_STORE_add_cert( cert_db, ssl_cert->get_openssl_certificate() );
ca_db::add_certificate( cert );
More information about the Minisip-devel
mailing list