[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-04-16 Thread Stefan Krah
Stefan Krah added the comment: In case anyone wonders why the FreeBSD bot works again: I've installed OpenSSL from source. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21015 ___

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-04-16 Thread Antoine Pitrou
Antoine Pitrou added the comment: In case anyone wonders why the FreeBSD bot works again: I've installed OpenSSL from source. Did you install the same version? -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21015

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-04-16 Thread Stefan Krah
Stefan Krah added the comment: Antoine Pitrou rep...@bugs.python.org wrote: Did you install the same version? No, I used the latest version + FIPS. Since FreeBSD 9.0 is EOL, I did not feel like investigating too much. :) -- ___ Python tracker

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-04-16 Thread Roundup Robot
Roundup Robot added the comment: New changeset d6501421b86b by Antoine Pitrou in branch '3.4': Try to fix buildbot failures on old OpenSSLs ( 1.0.0) - followup to issue #21015 http://hg.python.org/cpython/rev/d6501421b86b New changeset 1305410bff2d by Antoine Pitrou in branch 'default': Try to

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-04-16 Thread Antoine Pitrou
Antoine Pitrou added the comment: So, I think I've found the issue. On OpenSSL 1.0.0, the ECDH ciphers exist but the ECDH cipher alias doesn't. I've committed a patch which should fix the issue, although the set_ciphers() call may be entirely useless given our current default cipher list.

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-04-16 Thread Ned Deily
Ned Deily added the comment: That does indeed make the test now pass on OS X 10.9: test_default_ecdh_curve (test.test_ssl.ThreadedTests) ... server: new connection from ('127.0.0.1', 60758) server: connection cipher is now ('AECDH-AES256-SHA', 'TLSv1/SSLv3', 256) server: selected protocol

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-04-16 Thread Antoine Pitrou
Antoine Pitrou added the comment: The buildbots seem happy as well, so I'm closing this. -- resolution: - fixed stage: needs patch - committed/rejected status: open - closed ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21015

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-04-14 Thread Mark Dickinson
Mark Dickinson added the comment: The docs[1] for SSL_set_ecdh_auto say: These functions were first added to OpenSSL 1.0.2. From looking at Modules/_ssl.c, it looks as though we're trying to use them when the version is = 0.9.8. [1]

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-04-14 Thread Antoine Pitrou
Antoine Pitrou added the comment: The docs[1] for SSL_set_ecdh_auto say: These functions were first added to OpenSSL 1.0.2. From looking at Modules/_ssl.c, it looks as though we're trying to use them when the version is = 0.9.8. If that was the issue at hand we would get a compile error, no?

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-04-14 Thread Mark Dickinson
Mark Dickinson added the comment: Yep, true. Ignore me. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21015 ___ ___ Python-bugs-list mailing

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-04-14 Thread Mark Dickinson
Changes by Mark Dickinson dicki...@gmail.com: -- Removed message: http://bugs.python.org/msg216123 ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21015 ___

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-04-14 Thread Jeff Ramnani
Jeff Ramnani added the comment: Really? Apple's packaging looks almost criminal here. Apple has deprecated their bundled version of OpenSSL. This issue has more details, http://bugs.python.org/issue17128 -- nosy: +jramnani ___ Python tracker

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-04-14 Thread Stefan Krah
Stefan Krah added the comment: FreeBSD 9.0 has the same broken install: $ openssl version OpenSSL 0.9.8y 5 Feb 2013 $ ls /usr/include/openssl/ecd* /usr/include/openssl/ecdh.h /usr/include/openssl/ecdsa.h I'm inclined to view this as an OS

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-04-10 Thread Geoffrey Spear
Changes by Geoffrey Spear geoffsp...@gmail.com: -- nosy: +geoffreyspear ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21015 ___ ___

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-04-10 Thread Antoine Pitrou
Antoine Pitrou added the comment: The OpenSSL command advertise itself as 0.9.8y but it doesn't include any ECDH ciphers. Really? Apple's packaging looks almost criminal here. FreeBSD 9 is failing as well: It's not necessarily the same issue as on OS X. Stefan, can you post the output of

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-04-10 Thread Stefan Krah
Stefan Krah added the comment: This is for FreeBSD-9 (which, to be fair, has EOL status): [stefan@freebsd-amd64 ~]$ openssl ciphers -v DHE-RSA-AES256-SHA SSLv3 Kx=DH Au=RSA Enc=AES(256) Mac=SHA1 DHE-DSS-AES256-SHA SSLv3 Kx=DH Au=DSS Enc=AES(256) Mac=SHA1 AES256-SHA

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-04-07 Thread STINNER Victor
STINNER Victor added the comment: test_default_ecdh_curve() is still failing on x86 Ubuntu Shared 3.x: http://buildbot.python.org/all/builders/x86%20Ubuntu%20Shared%203.x/builds/9964/steps/test/logs/stdio == ERROR:

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-04-07 Thread Stefan Krah
Stefan Krah added the comment: FreeBSD 9 is failing as well: http://buildbot.python.org/all/builders/AMD64%20FreeBSD%209.0%203.x/builds/6583/steps/test/logs/stdio -- nosy: +skrah ___ Python tracker rep...@bugs.python.org

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-04-05 Thread Ned Deily
Ned Deily added the comment: test_default_ecdh_curve is failing on current OS X systems (10.9 Mavericks and 10.8 Mountain Lion, at least) using the system-supplied OpenSSL libraries: == ERROR: test_default_ecdh_curve

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-03-22 Thread Nick Coghlan
Nick Coghlan added the comment: Marking this as buildbot, as Donald suspects it's the culprit for the current SSL related buildbot failures after merging issue 20995. Also Donald, welcome to the I broke (some of) the buildbots club, although you did come up with something more exotic than the

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-03-22 Thread Donald Stufft
Donald Stufft added the comment: I always have to do things the hard way ;) Note that my patch changes the set_ecdh_curve() method to no longer require a name. If that is too big of a change for Python 3.4 we can just hardcode the same name inside of ssl.py for 3.4 --

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-03-22 Thread Antoine Pitrou
Antoine Pitrou added the comment: I don't think it makes much sense to have a default argument to set_ecdh_curve(). It's probably better to just copy mod_ssl's initialization (which selects prime256v1 on not-so-new OpenSSLs). -- ___ Python tracker

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-03-22 Thread Antoine Pitrou
Antoine Pitrou added the comment: Here is a patch working with both 1.0.2 (set_ecdh_auto) and 1.0.1 (fallback on prime256v1). -- Added file: http://bugs.python.org/file34565/ssl_ecdh_auto.patch ___ Python tracker rep...@bugs.python.org

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-03-22 Thread Antoine Pitrou
Antoine Pitrou added the comment: Perhaps we should add a test for this. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21015 ___ ___

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-03-22 Thread Antoine Pitrou
Antoine Pitrou added the comment: New patch with a test. -- Added file: http://bugs.python.org/file34566/ssl_ecdh_auto2.patch ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21015 ___

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-03-22 Thread Donald Stufft
Donald Stufft added the comment: The reason I made a default argument to set_ecdh_curve is that I couldn't find any information about what happens if you set a ecdh curve _twice_ within a a OpenSSL SSL Context. So I played it safe and made it a default argument that only gets called if you

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-03-22 Thread Donald Stufft
Donald Stufft added the comment: I know it doesn't segfault or raise an error if you do that, but I don't know if it: 1) Replaces the already called ECDH Curve 2) Adds to the already called ECDH Curve 3) Silently Does Nothing. If it's 2 or 3 then your patch will make

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-03-22 Thread Antoine Pitrou
Antoine Pitrou added the comment: I know it doesn't segfault or raise an error if you do that, but I don't know if it: 1) Replaces the already called ECDH Curve 2) Adds to the already called ECDH Curve 3) Silently Does Nothing. Judging by OpenSSL's code, it replaces the already called

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-03-22 Thread Donald Stufft
Donald Stufft added the comment: Works for me, that's what it appears like to me too. +1 -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21015 ___

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-03-22 Thread Antoine Pitrou
Antoine Pitrou added the comment: Here is an updated patch with proper releasing the EC_KEY structure. (note that the patch has a slight performance implication: creating a SSLContext becomes more costly - around 100µs more here) -- Added file:

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-03-22 Thread Donald Stufft
Donald Stufft added the comment: Looks good to me, do you want to commit it Antoine? -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21015 ___

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-03-22 Thread Alex Gaynor
Changes by Alex Gaynor alex.gay...@gmail.com: -- nosy: +alex ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21015 ___ ___ Python-bugs-list mailing

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-03-22 Thread Antoine Pitrou
Antoine Pitrou added the comment: I will :) -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21015 ___ ___ Python-bugs-list mailing list

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-03-22 Thread Roundup Robot
Roundup Robot added the comment: New changeset 869277faf3dc by Antoine Pitrou in branch '3.4': Issue #21015: SSL contexts will now automatically select an elliptic curve for ECDH key exchange on OpenSSL 1.0.2 and later, and otherwise default to prime256v1.

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-03-22 Thread Antoine Pitrou
Antoine Pitrou added the comment: The Ubuntu LTS buildbot seems to feel better now, closing. -- resolution: - fixed stage: - committed/rejected status: open - closed ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21015

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-03-21 Thread Antoine Pitrou
New submission from Antoine Pitrou: From the OpenSSL changelog: *) Support for automatic EC temporary key parameter selection. If enabled the most preferred EC parameters are automatically used instead of hardcoded fixed parameters. Now a server just has to call:

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-03-21 Thread Donald Stufft
Donald Stufft added the comment: Heh, I was just getting ready to figure out if I should write this ticket or not :) I think we should do this. Nginx also defaults to prime256v1 (which is NIST P-256), DJB seems to think that's an unsafe curve though (http://safecurves.cr.yp.to/). --

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-03-21 Thread Donald Stufft
Donald Stufft added the comment: Ok, looks like everyone just uses prime256v1, so we should use that! -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21015 ___

[issue21015] support SSL_CTX_set_ecdh_auto on newer OpenSSLs

2014-03-21 Thread Donald Stufft
Donald Stufft added the comment: I don't have a new enough OpenSSL to test against SSL_CTX_set_ecdh_auto and I don't really know C very well so I didn't want to do try to handle that. That being said, here is a patch that allows you to call SSLContext().set_ecdh_curve() without any argument,