>    This means you cannot pass an 'X509 **' as a 'char **'. 
> Unfortunately 'X509 *' and 'char *' are not compatible types because
> 'X509' and 'char' are not compatible. They are not both unions, they
> are not both structures.

But you can pass 'X509 **' as 'void *'.  So...
        void x509func(void* p) { X509** pp = (X509**)p; ... }
        void trampoline(void* p) { x509func(p); }
        void caller(void) { X509* p; trampoline(&p); }

should (MUST?) work just fine.

        /r$

--
STSM, Senior Security Architect
SOA Appliances
Application Integration Middleware

______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [email protected]
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to