diff options
author | Victor J. Orlikowski <vjo@duke.edu> | 2016-04-19 19:28:03 -0400 |
---|---|---|
committer | FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> | 2016-04-20 08:48:53 +0900 |
commit | f61bb5f9385a9fd177ea5cceefdec7af2410e756 (patch) | |
tree | d0cafbf185af335f96647f3f1736ed73d7398fcf | |
parent | d1495523eb4cb801021cbea0d9842a4ae4dda8d7 (diff) |
Eventlet throws a subclass of IOError when an SSL read timeout occurs. Ensure that the read loop continues in this case.
Signed-off-by: Victor J. Orlikowski <vjo@duke.edu>
Tested-by: Andy Hill <hillad@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
-rw-r--r-- | ryu/controller/controller.py | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/ryu/controller/controller.py b/ryu/controller/controller.py index 08304d21..1ae72876 100644 --- a/ryu/controller/controller.py +++ b/ryu/controller/controller.py @@ -194,6 +194,10 @@ class Datapath(ofproto_protocol.ProtocolDesc): ret = self.socket.recv(required_len) except SocketTimeout: continue + except ssl.SSLError: + # eventlet throws SSLError (which is a subclass of IOError) + # on SSL socket read timeout; re-try the loop in this case. + continue except (EOFError, IOError): break |