From: ThomasV Date: Wed, 7 May 2014 16:20:17 +0000 (+0200) Subject: sanitize payment request code X-Git-Url: https://git.novaco.in/?p=electrum-nvc.git;a=commitdiff_plain;h=0149ec5921c88513ce0bbb53cf0d8f2fa52cce13 sanitize payment request code --- diff --git a/lib/paymentrequest.py b/lib/paymentrequest.py index 5df5d6b..a9f076c 100644 --- a/lib/paymentrequest.py +++ b/lib/paymentrequest.py @@ -65,13 +65,21 @@ class PaymentRequest: u = urlparse.urlparse(self.url) self.domain = u.netloc - connection = httplib.HTTPConnection(u.netloc) if u.scheme == 'http' else httplib.HTTPSConnection(u.netloc) - connection.request("GET",u.geturl(), headers=REQUEST_HEADERS) - resp = connection.getresponse() + try: + connection = httplib.HTTPConnection(u.netloc) if u.scheme == 'http' else httplib.HTTPSConnection(u.netloc) + connection.request("GET",u.geturl(), headers=REQUEST_HEADERS) + resp = connection.getresponse() + except: + self.error = "cannot read url" + return - r = resp.read() paymntreq = paymentrequest_pb2.PaymentRequest() - paymntreq.ParseFromString(r) + try: + r = resp.read() + paymntreq.ParseFromString(r) + except: + self.error = "cannot parse payment request" + return sig = paymntreq.signature if not sig: