Following scenario: I have an engine that implements e.g. RSA decryption. That engine links against a library that links against libcrypto to perform RSA decryption. Now if I have an application that sets the default library to be my engine, won't I end up in an infinite loop ? Or the other way around: - Is there a way to change the default engine from within my engine before calling out to the library ? - Can the library itself select "software-only" as an engine ? I guess I don't have a concrete problem in my specific case, since I have app_data attached to any key and if my engine receives a key without app_data, it will just call SSLeay() functions. But what if that was not the case ? Thanks a lot for any help, Andreas