> What platform are you on?

> How do you know what version of OpenSSL you're using?

> (It can sometimes be quite tricky to suss out what OpenSSL twisted is using unless you know the internals fairly well, unfortunately; 'twist --version' really ought to print it out.)

I'm on (X)Ubuntu 16.10. And the system uses 1.0.2g-1ubuntu9.1.

But I built my own static wheel version of cryptography following https://cryptography.io/en/latest/installation/#static-wheels , with OPENSSL_VERSION="1.1.0e"

and pip installed the wheel in another virtualenv to test it, along with twisted[tls]

I checked OpenSSL version using this (that's what scrapy also does when printing versions):

$ python -c "import OpenSSL; print(OpenSSL.SSL.SSLeay_version(OpenSSL.SSL.SSLEAY_VERSION))"

OpenSSL 1.1.0e 16 Feb 2017

> What about with 1.0.2?

I just tested it again this morning with my system's default openssl:

$ python -c "import OpenSSL; print(OpenSSL.SSL.SSLeay_version(OpenSSL.SSL.SSLEAY_VERSION))"

OpenSSL 1.0.2g 1 Mar 2016

with the same snippet using Twisted Web Agent,

this is what wireshark shows in the ClientHello:

Extension: elliptic_curves

Type: elliptic_curves (0x000a)

Length: 28

Elliptic Curves Length: 26

Elliptic curves (13 curves)

Elliptic curve: secp256r1 (0x0017)

Elliptic curve: secp521r1 (0x0019)

Elliptic curve: brainpoolP512r1 (0x001c)

Elliptic curve: brainpoolP384r1 (0x001b)

Elliptic curve: secp384r1 (0x0018)

Elliptic curve: brainpoolP256r1 (0x001a)

Elliptic curve: secp256k1 (0x0016)

Elliptic curve: sect571r1 (0x000e)

Elliptic curve: sect571k1 (0x000d)

Elliptic curve: sect409k1 (0x000b)

Elliptic curve: sect409r1 (0x000c)

Elliptic curve: sect283k1 (0x0009)

Elliptic curve: sect283r1 (0x000a)