X-Git-Url: https://code.wpia.club/?p=cassiopeia.git;a=blobdiff_plain;f=src%2Fcrypto%2FX509.cpp;fp=src%2Fcrypto%2FX509.cpp;h=d99ab68302ac2d699fb380bd6a277db755e066e8;hp=aad5c8f900dd68789015baa107cc50a60b81f6b1;hb=9c88683457862a86656172dfba127717bf41b86a;hpb=da9f337a893bd317460118f89efa83a3427f797f diff --git a/src/crypto/X509.cpp b/src/crypto/X509.cpp index aad5c8f..d99ab68 100644 --- a/src/crypto/X509.cpp +++ b/src/crypto/X509.cpp @@ -190,13 +190,12 @@ void X509Cert::setExtensions( std::shared_ptr caCert, std::vector gens = std::shared_ptr( - sk_GENERAL_NAME_new_null(), - []( GENERAL_NAMES * ref ) { - if( ref ) { - sk_GENERAL_NAME_pop_free( ref, GENERAL_NAME_free ); - } - } ); + auto freeGeneralNames = []( GENERAL_NAMES * ref ) { + if( ref ) { + sk_GENERAL_NAME_pop_free( ref, GENERAL_NAME_free ); + } + }; + std::shared_ptr gens = std::shared_ptr( sk_GENERAL_NAME_new_null(), freeGeneralNames ); for( auto& name : sans ) { GENERAL_NAME *gen = GENERAL_NAME_new(); @@ -270,11 +269,10 @@ std::shared_ptr X509Cert::sign( std::shared_ptr caK throw std::runtime_error( "Failed to retrieve certificate serial of signed certificate." ); } - std::shared_ptr serStr( - BN_bn2hex( ser.get() ), - []( char* p ) { - OPENSSL_free( p ); - } ); // OPENSSL_free is a macro... + auto freeMem = []( char *p ) { + OPENSSL_free( p ); + };// OPENSSL_free is a macro... + std::shared_ptr serStr( BN_bn2hex( ser.get() ), freeMem ); res->serial = serStr ? std::string( serStr.get() ) : ""; return res;