Protect proxy against ill-formed server responses

This commit is contained in:
Neil Booth 2015-08-27 15:09:00 +09:00
parent 68e57bbaa7
commit 91049c8af8
1 changed files with 7 additions and 1 deletions

View File

@ -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()