Forum OpenACS CMS: Re: Problem installing Naviserver (Gentoo)

Collapse
Posted by Gustaf Neumann on

Dear Michael,

i think, i have found the problem. It seems to me, that for whatever reason, you have probably a version of OpenSSL installed, which has EC support turned off. The first clue came from your .i file, where the definition of evppkeyst does not contain eckeyst.

struct evp_pkey_st {
    int type;
    int save_type;
    int references;
    const EVP_PKEY_ASN1_METHOD *ameth;
    ENGINE *engine;
    union {
        char *ptr;
# ifndef OPENSSL_NO_RSA
        struct rsa_st *rsa;     /* RSA */
# endif
# ifndef OPENSSL_NO_DSA
        struct dsa_st *dsa;     /* DSA */
# endif
# ifndef OPENSSL_NO_DH
        struct dh_st *dh;       /* DH */
# endif
# ifndef OPENSSL_NO_EC
        struct ec_key_st *ec;   /* ECC */
# endif
    } pkey;
    int save_parameters;
    STACK_OF(X509_ATTRIBUTE) *attributes; /* [ 0 ] */
} /* EVP_PKEY */ ;

The second clue came from googling around, finding errors from other projects on Gentoo, where the missing EC support in OpenSSL was as well the cause.

It is not clear to me, why my build of OpenSSL on the same version of Gentoo was compiled with EC support, but not on yours. There is probably on Gentoo some magic place where some options for the compilation are stored. .. or maybe some version dependencies from other installed packages, etc. But i have no Gentoo experience, please find a Gentoo expert for more hints on this.

I have modified the NaviServer sources such it compiles now also against OpenSSL versions without OpenSSL support. However, I would recommend that you enable EC support also in OpenSSL on your machine for full functionality.

-g

PS: I'll check, how to shrink your posting with more than 28k lines above, which is probably in that detail not of interest for the normal reader.