classification
Title: _ssl won't compile with OSX 10.9 SDK
Type: compile error Stage: commit review
Components: Extension Modules, macOS Versions: Python 3.4
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: christian.heimes Nosy List: christian.heimes, python-dev, ronaldoussoren
Priority: normal Keywords: 3.3regression

Created on 2013-11-21 15:09 by ronaldoussoren, last changed 2013-11-21 15:47 by ronaldoussoren. This issue is now closed.

Messages (4)
msg203634 - (view) Author: Ronald Oussoren (ronaldoussoren) * (Python committer) Date: 2013-11-21 15:09
I get a compilation error for _ssl when building on OSX 10.9 using the 10.9 SDK, the relevant error:

/Users/ronald/Projects/python/rw/default/Modules/_ssl.c:1029:24: error: no member named 'crldp' in 'struct x509_st'
    dps = certificate->crldp;
          ~~~~~~~~~~~  ^

Looking at /usr/include/openssl/x509.h in the 10.9 SDK that does not have a crldp member:

struct x509_st
        {
        X509_CINF *cert_info;
        X509_ALGOR *sig_alg;
        ASN1_BIT_STRING *signature;
        int valid;
        int references;
        char *name;
        CRYPTO_EX_DATA ex_data;
        /* These contain copies of various extension values */
        long ex_pathlen;
        long ex_pcpathlen;
        unsigned long ex_flags;
        unsigned long ex_kusage;
        unsigned long ex_xkusage;
        unsigned long ex_nscert;
        ASN1_OCTET_STRING *skid;
        struct AUTHORITY_KEYID_st *akid;
        X509_POLICY_CACHE *policy_cache;
#ifndef OPENSSL_NO_RFC3779
        STACK_OF(IPAddressFamily) *rfc3779_addr;
        struct ASIdentifiers_st *rfc3779_asid;
#endif
#ifndef OPENSSL_NO_SHA
        unsigned char sha1_hash[SHA_DIGEST_LENGTH];
#endif
        X509_CERT_AUX *aux;
        } /* X509 */;

Note that OSX ships a fairly ancient version of OpenSSL, libssl.dylib is 0.9.8. 

(Marked as a regression because 3.3 and 2.7 can be build with the system version of OpenSSL).
msg203635 - (view) Author: Christian Heimes (christian.heimes) * (Python committer) Date: 2013-11-21 15:14
It's my fault and related to #18379. I'll fix it.
msg203640 - (view) Author: Roundup Robot (python-dev) Date: 2013-11-21 15:27
New changeset 40bfddda43d4 by Christian Heimes in branch 'default':
Issue #19682: Fix compatibility issue with old version of OpenSSL that
http://hg.python.org/cpython/rev/40bfddda43d4
msg203645 - (view) Author: Ronald Oussoren (ronaldoussoren) * (Python committer) Date: 2013-11-21 15:47
That's quick...   The patch fixes the issue for me as well.

Thanks!
History
Date User Action Args
2013-11-21 15:47:34ronaldoussorensetstatus: open -> closed
resolution: fixed
messages: + msg203645

stage: needs patch -> commit review
2013-11-21 15:27:42python-devsetnosy: + python-dev
messages: + msg203640
2013-11-21 15:14:59christian.heimessetassignee: ronaldoussoren -> christian.heimes

messages: + msg203635
nosy: + christian.heimes
2013-11-21 15:09:42ronaldoussorencreate