[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[tor-commits] [flashproxy/master] Tolerate failures in opening listeners.
commit 203776bc531591278b96ebead68ef472363f4fbf
Author: David Fifield <david@xxxxxxxxxxxxxxx>
Date: Fri Mar 1 21:31:24 2013 -0800
Tolerate failures in opening listeners.
Carry on as long as we have at least one local and one remote listener. In
reproduce it).
---
flashproxy-client | 18 ++++++++++++++++--
1 files changed, 16 insertions(+), 2 deletions(-)
diff --git a/flashproxy-client b/flashproxy-client
index c229a3f..e9795fa 100755
--- a/flashproxy-client
+++ b/flashproxy-client
@@ -1124,17 +1124,31 @@ def main():
# Remote sockets, accepting remote WebSocket connections from proxies.
remote_listen = []
for addr in options.remote_addrs:
- listen = listen_socket(addr)
+ try:
+ listen = listen_socket(addr)
+ except socket.error, e:
+ log(u"Failed to listen remote on %s: %s." % (addr, str(e)))
+ continue
remote_listen.append(listen)
log(u"Listening remote on %s." % format_sockaddr(listen.getsockname()))
+ if not remote_listen:
+ log(u"Failed to open any remote listeners, quitting.")
+ pt_cmethoderror("Failed to open any remote listeners.")
# Local sockets, accepting SOCKS requests from localhost
local_listen = []
for addr in options.local_addrs:
- listen = listen_socket(addr)
+ try:
+ listen = listen_socket(addr)
+ except socket.error, e:
+ log(u"Failed to listen local on %s: %s." % (addr, str(e)))
+ continue
local_listen.append(listen)
log(u"Listening local on %s." % format_sockaddr(listen.getsockname()))
if options.managed:
pt_cmethod("websocket", listen.getsockname())
+ if not local_listen:
+ log(u"Failed to open any local listeners, quitting.")
+ pt_cmethoderror("Failed to open any local listeners.")
if options.managed:
pt_cmethods_done()
_______________________________________________
tor-commits mailing list
tor-commits@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits