mirror of
https://git.freebsd.org/ports.git
synced 2025-07-06 20:09:14 -04:00
o Bump PORTREVISION Approved by: portmgr (krion) Obtained from: John Hoffman BitTornado Developer <theshadow@degreez.net>
45 lines
1.4 KiB
Python
45 lines
1.4 KiB
Python
--- BitTorrent/zurllib.py.orig Wed Jan 5 20:41:27 2005
|
|
+++ BitTorrent/zurllib.py Wed Jan 5 20:41:50 2005
|
|
@@ -10,7 +10,7 @@
|
|
|
|
# Written by John Hoffman
|
|
|
|
-from httplib import HTTPConnection
|
|
+from httplib import HTTPConnection, HTTPException
|
|
from urlparse import urlparse
|
|
import socket
|
|
from gzip import GzipFile
|
|
@@ -20,6 +20,15 @@
|
|
|
|
MAX_REDIRECTS = 10
|
|
|
|
+class btHTTPcon(HTTPConnection): # attempt to add automatic connection timeout
|
|
+ def connect(self):
|
|
+ HTTPConnection.connect(self)
|
|
+ try:
|
|
+ self.sock.settimeout(30)
|
|
+ except:
|
|
+ pass
|
|
+
|
|
+
|
|
class urlopen:
|
|
def __init__(self, url):
|
|
self.tries = 0
|
|
@@ -39,11 +48,14 @@
|
|
if query:
|
|
url += '?'+query
|
|
# if fragment:
|
|
- self.connection = HTTPConnection(netloc)
|
|
- self.connection.request('GET', url, None,
|
|
+ try:
|
|
+ self.connection = btHTTPcon(netloc)
|
|
+ self.connection.request('GET', url, None,
|
|
{ 'User-Agent': 'BitTorrent/' + version,
|
|
'Accept-Encoding': 'gzip' } )
|
|
- self.response = self.connection.getresponse()
|
|
+ self.response = self.connection.getresponse()
|
|
+ except HTTPException, e:
|
|
+ raise IOError, ('http error', str(e))
|
|
status = self.response.status
|
|
if status in (301,302):
|
|
try:
|