tProtect proxy against ill-formed server responses - electrum - Electrum Bitcoin wallet HTML git clone https://git.parazyd.org/electrum DIR Log DIR Files DIR Refs DIR Submodules --- DIR commit 91049c8af8255fedea9e151490fa13b4a023b743 DIR parent 68e57bbaa7696244db016947eb33106a72948631 HTML Author: Neil Booth <kyuupichan@gmail.com> Date: Thu, 27 Aug 2015 15:09:00 +0900 Protect proxy against ill-formed server responses Diffstat: M lib/network_proxy.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) --- DIR diff --git a/lib/network_proxy.py b/lib/network_proxy.py t@@ -16,6 +16,8 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. +import sys +import traceback import threading import Queue t@@ -73,7 +75,11 @@ class NetworkProxy(util.DaemonThread): continue if response is None: break - self.process(response) + # Protect against ill-formed or malicious server responses + try: + self.process(response) + except: + traceback.print_exc(file=sys.stderr) self.trigger_callback('stop') if self.network: self.network.stop()