diff options
| author | Lior Neudorfer <liorus@gmail.com> | 2015-01-04 17:13:06 +0200 |
|---|---|---|
| committer | Sergey Shepelev <temotor@gmail.com> | 2015-02-10 03:53:38 +0300 |
| commit | 5ec3a3cba8029b577db1631f9db52f99954e4f54 (patch) | |
| tree | 5eab10b47f98463a334789159f7f6e0348bfb25f | |
| parent | 50f794042528c61af84ebc08ccac4c81022800fc (diff) | |
| download | eventlet-5ec3a3cba8029b577db1631f9db52f99954e4f54.tar.gz | |
Make sure SSL retries are done using the exact same data buffer
| -rw-r--r-- | eventlet/green/ssl.py | 5 |
1 files changed, 4 insertions, 1 deletions
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: |
