- std::shared_ptr<BIO> slip1( BIO_new( toBio<SlipBIO>() ), BIO_free );
- static_cast<SlipBIO*>( slip1->ptr )->setTarget( std::make_shared<OpensslBIOWrapper>( b ), false );
+ std::shared_ptr<BIO_METHOD> m( toBio<SlipBIO>(), BIO_meth_free );
+ std::shared_ptr<BIO> slip1( BIO_new( m.get() ), BIO_free );
+ static_cast<SlipBIO *>( slip1->ptr )->setTarget( std::make_shared<OpensslBIOWrapper>( b ), false );