From 5ec3a3cba8029b577db1631f9db52f99954e4f54 Mon Sep 17 00:00:00 2001 From: Lior Neudorfer Date: Sun, 4 Jan 2015 17:13:06 +0200 Subject: [PATCH] Make sure SSL retries are done using the exact same data buffer --- eventlet/green/ssl.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/eventlet/green/ssl.py b/eventlet/green/ssl.py index 220bedd..fdd3a4e 100644 --- a/eventlet/green/ssl.py +++ b/eventlet/green/ssl.py @@ -162,11 +162,14 @@ class GreenSSLSocket(_original_sslsocket): self.__class__) amount = len(data) count = 0 + data_to_send = data while (count < amount): - v = self.send(data[count:]) + v = self.send(data_to_send) count += v if v == 0: trampoline(self, write=True, timeout_exc=timeout_exc('timed out')) + else: + data_to_send = data[count:] return amount else: while True: