Custombuild error during update: EXIM

keisko

Verified User
Joined
Oct 31, 2011
Messages
34
Hi,

I'm getting following error during custombuild update:
Code:
gcc tls.c
In file included from tls.c:120:
tls-openssl.c:78:3: warning: #warning "OpenSSL library version too old; define DISABLE_OCSP in Makefile"
In file included from tls.c:120:
tls-openssl.c: In function 'init_ecdh':
tls-openssl.c:662: error: 'EC_KEY' undeclared (first use in this function)
tls-openssl.c:662: error: (Each undeclared identifier is reported only once
tls-openssl.c:662: error: for each function it appears in.)
tls-openssl.c:662: error: 'ecdh' undeclared (first use in this function)
In file included from tls.c:121:
tlscert-openssl.c: In function 'asn1_time_copy':
tlscert-openssl.c:121: warning: passing argument 2 of 'ASN1_TIME_print' discards qualifiers from pointer target type
make[1]: *** [tls.o] Error 1
make[1]: Leaving directory `/usr/local/directadmin/custombuild/exim-4.86/build-Linux-x86_64'
make: *** [all] Error 2

I've Centos 5.11 Final
openssl-devel-0.9.8e-36.0.1.el5_11.x86_64
openssl-devel-0.9.8e-36.0.1.el5_11.x86_64


How may I fix this issue?

Thanks.
 
Hello,

i have on server on centos 5. I custom compile to openssl 1.0.2d. I disable repo for openssl and recompile all services + restart directadmin and SSH server.

For now it is working ok.
 
Hi,

I'm getting following error during custombuild update:
Code:
gcc tls.c
In file included from tls.c:120:
tls-openssl.c:78:3: warning: #warning "OpenSSL library version too old; define DISABLE_OCSP in Makefile"
In file included from tls.c:120:
tls-openssl.c: In function 'init_ecdh':
tls-openssl.c:662: error: 'EC_KEY' undeclared (first use in this function)
tls-openssl.c:662: error: (Each undeclared identifier is reported only once
tls-openssl.c:662: error: for each function it appears in.)
tls-openssl.c:662: error: 'ecdh' undeclared (first use in this function)
In file included from tls.c:121:
tlscert-openssl.c: In function 'asn1_time_copy':
tlscert-openssl.c:121: warning: passing argument 2 of 'ASN1_TIME_print' discards qualifiers from pointer target type
make[1]: *** [tls.o] Error 1
make[1]: Leaving directory `/usr/local/directadmin/custombuild/exim-4.86/build-Linux-x86_64'
make: *** [all] Error 2

I've Centos 5.11 Final
openssl-devel-0.9.8e-36.0.1.el5_11.x86_64
openssl-devel-0.9.8e-36.0.1.el5_11.x86_64


How may I fix this issue?

Thanks.
Same problem for me too.
 
Run ./build exim until you get the message to retry the build (because it failed).
DON'T enter y or n but press ctrl+z to push the build to the background

Run this code:

Code:
echo "DISABLE_OCSP=yes" >> ./exim-4.86/Local/Makefile
echo "OPENSSL_NO_ECDH=yes" >> ./exim-4.86/Local/Makefile

and this:

Code:
vi ./exim-4.86/src/tls-openssl.c

Find and change code:

Code:
static BOOL
init_ecdh(SSL_CTX * sctx, host_item * host)
{
EC_KEY * ecdh;

to

Code:
static BOOL
init_ecdh(SSL_CTX * sctx, host_item * host)
{
[B]#ifndef OPENSSL_NO_ECDH[/B]
EC_KEY * ecdh;
[B]#endif[/B]

then get the build process back to the foreground with:

Code:
fg

The process is still waiting for you to enter 'y' or 'n', although you don't see that.
type 'y' and press enter. The build will 'make' exim again without extracting the tar.gz and will succeed.


credits to user sysdev for his instruction from this post.
 
Thanks for the credits, zEitEr :)

It would be nice if the buildscript would check if there was a ./patches/ directory and if so, check if there was a <package-version>.patch file. Then it could run the patch after extracting the tag.gz's. That's maybe a 5 line function that would make life a lot easier for those having a few hundred servers :)

John
 
Last edited:
You're welcome. I like your idea and hope it will be realized. For this you might need to post a feature request or contact the custombuild developers.
 
I just tested again with ./custombuild update_versions
it worked, I didn't do anything..

Latest version of Exim: 4.86
Installed version of Exim: 4.86
 
I guess it was Directadmin staff who has patched tls-openssl.c, so no more need to do anything from this thread.
 
Back
Top