You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@trafficserver.apache.org by "Felix Buenemann (JIRA)" <ji...@apache.org> on 2015/03/15 05:41:38 UTC

[jira] [Comment Edited] (TS-3443) Configure openssl tls1.h detection faulty

    [ https://issues.apache.org/jira/browse/TS-3443?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14362204#comment-14362204 ] 

Felix Buenemann edited comment on TS-3443 at 3/15/15 4:40 AM:
--------------------------------------------------------------

On 5.2.0 I am getting the following error:
checking openssl/tls1.h usability... no
checking openssl/tls1.h presence... yes
configure: WARNING: openssl/tls1.h: present but cannot be compiled
configure: WARNING: openssl/tls1.h:     check for missing prerequisite headers?
configure: WARNING: openssl/tls1.h: see the Autoconf documentation
configure: WARNING: openssl/tls1.h:     section "Present But Cannot Be Compiled"
configure: WARNING: openssl/tls1.h: proceeding with the compiler's result
configure: WARNING:     ## ------------------------------------------- ##
configure: WARNING:     ## Report this to dev@trafficserver.apache.org ##
configure: WARNING:     ## ------------------------------------------- ##
checking for openssl/tls1.h... no

On master:
checking for openssl/tls1.h... no

And looking at config.log:
configure:23364: checking for openssl/tls1.h
configure:23364: cc -c -g -pipe -Wall -Wno-deprecated-declarations -Qunused-arguments -O3 -fno-strict-aliasing -Ddarwin -D_LARGEFILE64_SOURCE=1 -D_COMPILE64BIT_SOURCE=1 -D_GNU_SOURCE -D_REENTRANT -D__STDC_LIMIT_MACROS=1 -D__STDC_FORMAT_MACROS=1 -I/usr/local/opt/openssl/include -DOPENSSL_NO_SSL_INTERN conftest.c >&5
In file included from conftest.c:48:
/usr/local/opt/openssl/include/openssl/tls1.h:333:52: warning: type specifier missing, defaults to 'int' [-Wimplicit-int]
int SSL_check_chain(SSL *s, X509 *x, EVP_PKEY *pk, STACK_OF(X509) *chain);
                                                   ^
/usr/local/opt/openssl/include/openssl/tls1.h:333:67: error: expected ')'
int SSL_check_chain(SSL *s, X509 *x, EVP_PKEY *pk, STACK_OF(X509) *chain);
                                                                  ^
/usr/local/opt/openssl/include/openssl/tls1.h:333:20: note: to match this '('
int SSL_check_chain(SSL *s, X509 *x, EVP_PKEY *pk, STACK_OF(X509) *chain);
                   ^
1 warning and 1 error generated.
configure:23364: $? = 1



was (Author: felixbuenemann):
On 5.2.0 I am getting the following error:
checking openssl/tls1.h usability... no
checking openssl/tls1.h presence... yes
configure: WARNING: openssl/tls1.h: present but cannot be compiled
configure: WARNING: openssl/tls1.h:     check for missing prerequisite headers?
configure: WARNING: openssl/tls1.h: see the Autoconf documentation
configure: WARNING: openssl/tls1.h:     section "Present But Cannot Be Compiled"
configure: WARNING: openssl/tls1.h: proceeding with the compiler's result
configure: WARNING:     ## ------------------------------------------- ##
configure: WARNING:     ## Report this to dev@trafficserver.apache.org ##
configure: WARNING:     ## ------------------------------------------- ##
checking for openssl/tls1.h... no

On master:
#include <openssl/ssl.h>

And looking at config.log:
configure:23364: checking for openssl/tls1.h
configure:23364: cc -c -g -pipe -Wall -Wno-deprecated-declarations -Qunused-arguments -O3 -fno-strict-aliasing -Ddarwin -D_LARGEFILE64_SOURCE=1 -D_COMPILE64BIT_SOURCE=1 -D_GNU_SOURCE -D_REENTRANT -D__STDC_LIMIT_MACROS=1 -D__STDC_FORMAT_MACROS=1 -I/usr/local/opt/openssl/include -DOPENSSL_NO_SSL_INTERN conftest.c >&5
In file included from conftest.c:48:
/usr/local/opt/openssl/include/openssl/tls1.h:333:52: warning: type specifier missing, defaults to 'int' [-Wimplicit-int]
int SSL_check_chain(SSL *s, X509 *x, EVP_PKEY *pk, STACK_OF(X509) *chain);
                                                   ^
/usr/local/opt/openssl/include/openssl/tls1.h:333:67: error: expected ')'
int SSL_check_chain(SSL *s, X509 *x, EVP_PKEY *pk, STACK_OF(X509) *chain);
                                                                  ^
/usr/local/opt/openssl/include/openssl/tls1.h:333:20: note: to match this '('
int SSL_check_chain(SSL *s, X509 *x, EVP_PKEY *pk, STACK_OF(X509) *chain);
                   ^
1 warning and 1 error generated.
configure:23364: $? = 1


> Configure openssl tls1.h detection faulty
> -----------------------------------------
>
>                 Key: TS-3443
>                 URL: https://issues.apache.org/jira/browse/TS-3443
>             Project: Traffic Server
>          Issue Type: Bug
>          Components: Build
>            Reporter: Felix Buenemann
>             Fix For: 6.0.0
>
>
> The configure check for tls1.h fails, because at least on openssl 1.0.2 tls1.h depends on a macro from openssl/safestack.h.
> I've created [pull request #180 on github|https://github.com/apache/trafficserver/pull/180] to fix the detection by including openssl/ssl.h in the configure check, which in turn includes safestack.h. Given that ssl.h is already required that solution should be fully backwards compatible to older versions that might not require safestack.h.
> This problem affects at least master and 5.2.0.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)