Ho uno script di upload Dropbox su una vecchia scatola di NAS che ho, di recente sto ottenendo il seguente errorePython riferimento vecchia versione SSL
SSL certificate error: [Errno 1] _ssl.c:504: error:0D0890A1:asn1 encoding routines:ASN1_verify:unknown message digest algorithm
credo che questo sia dovuto al openssl essere fuori data la casella
Così ho scaricato openssl, l'ho compilato dal sorgente e l'ho installato, ora quando eseguo quanto segue sembra essere aggiornato correttamente.
openssl version
OpenSSL 1.0.1h 5 Jun 2014
Ma sembrerebbe che Python faccia ancora riferimento a una vecchia versione, come aggiornarla?
python -c "import ssl; print ssl.OPENSSL_VERSION"
OpenSSL 0.9.7m 23 Feb 2007
Oh mio, 0.9.7 ... Hai bisogno di migrare a 0.9.8. 1.0.1 * non è * compatibile binario. – jww
Avrai bisogno di ricompilare Python contro il più recente OpenSSL. –
@Paul: il collegamento Python è statico? Pensavo che usasse il collegamento dinamico a OpenSSL. Da 'Modules/Setup.dist':' -L $ (SSL)/lib -lssl -lcrypto'. Se è dinamico, ha solo bisogno di impostare 'LD_PRELOAD', puntare all'oggetto condiviso 0.9.8 e quindi avviare Python. – jww