142
142
)
143
143
from .util import NON_ASCII , WARNING_TYPE_EXPECTED
144
144
145
- logger = logging .getLogger (__name__ )
146
-
147
145
# openssl dhparam 2048 -out dh-2048.pem
148
146
dhparam = """\
149
147
-----BEGIN DH PARAMETERS-----
@@ -482,19 +480,11 @@ def create_ssl_nonblocking_connection(
482
480
requested_receive_buffer_size = request_send_buffer_size // 2
483
481
client_socket .setsockopt (SOL_SOCKET , SO_SNDBUF , request_send_buffer_size )
484
482
actual_sndbuf = client_socket .getsockopt (SOL_SOCKET , SO_SNDBUF )
485
- logger .debug (
486
- f"Attempted SO_SNDBUF: { request_send_buffer_size } , "
487
- f"Actual SO_SNDBUF: { actual_sndbuf } "
488
- )
489
483
490
484
server_socket .setsockopt (
491
485
SOL_SOCKET , SO_RCVBUF , requested_receive_buffer_size
492
486
)
493
487
actual_rcvbuf = server_socket .getsockopt (SOL_SOCKET , SO_RCVBUF )
494
- logger .debug (
495
- f"Attempted SO_RCVBUF: { requested_receive_buffer_size } , "
496
- f"Actual SO_RCVBUF: { actual_rcvbuf } "
497
- )
498
488
499
489
# set the connection state
500
490
client .set_connect_state ()
@@ -3135,9 +3125,7 @@ def _attempt_want_write_error(
3135
3125
)
3136
3126
return msg
3137
3127
3138
- def _drain_server_buffers (
3139
- self , server : Connection
3140
- ) -> None :
3128
+ def _drain_server_buffers (self , server : Connection ) -> None :
3141
3129
"""Reads from server SSL and raw sockets to drain any pending data."""
3142
3130
total_ssl_read = 0
3143
3131
consecutive_empty_ssl_reads = 0
@@ -3168,11 +3156,8 @@ def _perform_moving_buffer_test(
3168
3156
'bad write retry' error.
3169
3157
Returns True if 'bad write retry' occurs, False otherwise.
3170
3158
"""
3171
- logger .debug ("Phase 3: Performing moving buffer retry test" )
3172
-
3173
3159
# Attempt retry with different buffer but same size
3174
3160
msg2 = b"Z" * buffer_size
3175
- logger .debug (f"buffer location for msg2 is { id (msg2 ):#x} " )
3176
3161
try :
3177
3162
bytes_written = client .send (msg2 )
3178
3163
assert not want_bad_retry , (
@@ -3185,7 +3170,6 @@ def _perform_moving_buffer_test(
3185
3170
assert reason == "bad write retry" , (
3186
3171
f"Retry failed with unexpected SSL error: { e !r} ({ reason } )."
3187
3172
)
3188
- logger .debug (f"Got SSL error: { e !r} ({ reason } )." )
3189
3173
return True # Bad write retry
3190
3174
3191
3175
def _shutdown_connections (
@@ -3220,8 +3204,8 @@ def ssl_connection_setup(self, request):
3220
3204
request_buffer_size = request .param .get ("request_buffer_size" )
3221
3205
modeflag = request .param .get ("modeflag" )
3222
3206
3223
- client , server , sndbuf , rcvbuf = (
3224
- create_ssl_nonblocking_connection ( modeflag , request_buffer_size )
3207
+ client , server , sndbuf , rcvbuf = create_ssl_nonblocking_connection (
3208
+ modeflag , request_buffer_size
3225
3209
)
3226
3210
# Use a buffer size that is half the size
3227
3211
# of the allocated socket buffers
@@ -3236,9 +3220,7 @@ def ssl_connection_setup(self, request):
3236
3220
)
3237
3221
3238
3222
# Teardown: Clean up the connections after the test finishes
3239
- self ._shutdown_connections (
3240
- client , server
3241
- )
3223
+ self ._shutdown_connections (client , server )
3242
3224
3243
3225
@pytest .mark .parametrize (
3244
3226
"ssl_connection_setup" ,
@@ -3258,11 +3240,11 @@ def ssl_connection_setup(self, request):
3258
3240
)
3259
3241
def test_moving_buffer_behavior (self , ssl_connection_setup ):
3260
3242
"""Tests for possible "bad write retry" errors over an SSL connection.
3261
- If an SSL connection partially processes some data,
3262
- and then hits an `OpenSSL.SSL.WantWriteError`,
3263
- the connection may expect a retry. When PyOpenSSL creates
3264
- a new connection object, SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER is
3265
- applied by default. This mode allows for data to be sent from a
3243
+ If an SSL connection partially processes some data,
3244
+ and then hits an `OpenSSL.SSL.WantWriteError`,
3245
+ the connection may expect a retry. When PyOpenSSL creates
3246
+ a new connection object, SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER is
3247
+ applied by default. This mode allows for data to be sent from a
3266
3248
different buffer location, something that may happen if Python moves a
3267
3249
mutable object such as a bytearray as part of its memory management.
3268
3250
If the mode is turned off, OpenSSL will reject the resend with
0 commit comments