From e97669858da2981c29e41ed707fe1f971e4f9af1 Mon Sep 17 00:00:00 2001 From: Maximilian Hils Date: Sat, 28 Feb 2015 04:06:58 +0100 Subject: [PATCH 1/3] add SSL_MODE_* constants --- OpenSSL/SSL.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/OpenSSL/SSL.py b/OpenSSL/SSL.py index 2731d64a8..8e4cd6c35 100644 --- a/OpenSSL/SSL.py +++ b/OpenSSL/SSL.py @@ -130,6 +130,12 @@ class _buffer(object): SSL_CB_HANDSHAKE_START = _lib.SSL_CB_HANDSHAKE_START SSL_CB_HANDSHAKE_DONE = _lib.SSL_CB_HANDSHAKE_DONE +SSL_MODE_ENABLE_PARTIAL_WRITE = _lib.SSL_MODE_ENABLE_PARTIAL_WRITE +SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER = _lib.SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER +SSL_MODE_AUTO_RETRY = _lib.SSL_MODE_AUTO_RETRY +SSL_MODE_RELEASE_BUFFERS = _lib.SSL_MODE_RELEASE_BUFFERS +SSL_MODE_SEND_FALLBACK_SCSV = _lib.SSL_MODE_SEND_FALLBACK_SCSV + class Error(Exception): """ An error occurred in an `OpenSSL.SSL` API. @@ -298,7 +304,7 @@ def __init__(self, method): # SSL_CTX_set_mode(self->ctx, SSL_MODE_ENABLE_PARTIAL_WRITE | # SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER | # SSL_MODE_AUTO_RETRY); - self.set_mode(_lib.SSL_MODE_ENABLE_PARTIAL_WRITE) + self.set_mode(SSL_MODE_ENABLE_PARTIAL_WRITE) def load_verify_locations(self, cafile, capath=None): From eacafe33d20092d3380f7ed74ac6bcdae13bfe3d Mon Sep 17 00:00:00 2001 From: Maximilian Hils Date: Sat, 28 Feb 2015 04:13:03 +0100 Subject: [PATCH 2/3] SSL_MODE_SEND_FALLBACK_SCSV is not always available --- OpenSSL/SSL.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/OpenSSL/SSL.py b/OpenSSL/SSL.py index 8e4cd6c35..fa28711b4 100644 --- a/OpenSSL/SSL.py +++ b/OpenSSL/SSL.py @@ -134,7 +134,11 @@ class _buffer(object): SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER = _lib.SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER SSL_MODE_AUTO_RETRY = _lib.SSL_MODE_AUTO_RETRY SSL_MODE_RELEASE_BUFFERS = _lib.SSL_MODE_RELEASE_BUFFERS -SSL_MODE_SEND_FALLBACK_SCSV = _lib.SSL_MODE_SEND_FALLBACK_SCSV +try: + SSL_MODE_SEND_FALLBACK_SCSV = _lib.SSL_MODE_SEND_FALLBACK_SCSV +except AttributeError: + pass + class Error(Exception): """ From 30b31fe1348c6aff3049076d0058068ba3f6766d Mon Sep 17 00:00:00 2001 From: Maximilian Hils Date: Sat, 28 Feb 2015 04:18:14 +0100 Subject: [PATCH 3/3] SSL_MODE_RELEASE_BUFFERS is not available in OpenSSL 0.9.8 --- OpenSSL/SSL.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/OpenSSL/SSL.py b/OpenSSL/SSL.py index fa28711b4..919180b12 100644 --- a/OpenSSL/SSL.py +++ b/OpenSSL/SSL.py @@ -133,7 +133,10 @@ class _buffer(object): SSL_MODE_ENABLE_PARTIAL_WRITE = _lib.SSL_MODE_ENABLE_PARTIAL_WRITE SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER = _lib.SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER SSL_MODE_AUTO_RETRY = _lib.SSL_MODE_AUTO_RETRY -SSL_MODE_RELEASE_BUFFERS = _lib.SSL_MODE_RELEASE_BUFFERS +try: + SSL_MODE_RELEASE_BUFFERS = _lib.SSL_MODE_RELEASE_BUFFERS +except AttributeError: + pass try: SSL_MODE_SEND_FALLBACK_SCSV = _lib.SSL_MODE_SEND_FALLBACK_SCSV except AttributeError: