commit 91049c8af8255fedea9e151490fa13b4a023b743
parent 68e57bbaa7696244db016947eb33106a72948631
Author: Neil Booth <kyuupichan@gmail.com>
Date: Thu, 27 Aug 2015 15:09:00 +0900
Protect proxy against ill-formed server responses
Diffstat:
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/lib/network_proxy.py b/lib/network_proxy.py
@@ -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
@@ -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()