Leonid Plyushch
5 years ago
2 changed files with 3 additions and 106 deletions
@ -1,102 +0,0 @@ |
|||
Changes: |
|||
|
|||
= Do not set default pastbin url based on distribution used.
|
|||
|
|||
= Fix warning about deprecated methords in 'pasteURLopener' - applied patch from Debian.
|
|||
|
|||
= Fix paths to configuration directories.
|
|||
|
|||
diff -uNr pastebinit-1.5/pastebinit pastebinit-1.5.mod/pastebinit
|
|||
--- pastebinit-1.5/pastebinit 2016-03-01 07:52:32.000000000 +0200
|
|||
+++ pastebinit-1.5.mod/pastebinit 2019-07-27 14:05:27.571525242 +0300
|
|||
@@ -27,28 +27,15 @@
|
|||
from ConfigParser import NoOptionError |
|||
from ConfigParser import SafeConfigParser as ConfigParser |
|||
from urllib import urlencode |
|||
- from urllib import FancyURLopener
|
|||
+ from urllib import request
|
|||
else: |
|||
from configparser import ConfigParser, NoOptionError |
|||
from urllib.parse import urlencode |
|||
- from urllib.request import FancyURLopener
|
|||
+ from urllib import request
|
|||
|
|||
# Set the default pastebin |
|||
defaultPB = "pastebin.com" |
|||
|
|||
-# Now try to override it with a distributor pastebin
|
|||
-try:
|
|||
- import platform
|
|||
- release = platform.linux_distribution()[0].lower()
|
|||
- if release == 'debian':
|
|||
- defaultPB = "paste.debian.net"
|
|||
- elif release == 'fedora':
|
|||
- defaultPB = "fpaste.org"
|
|||
- elif release == 'ubuntu':
|
|||
- defaultPB = "paste.ubuntu.com"
|
|||
-except ImportError:
|
|||
- pass
|
|||
-
|
|||
try: |
|||
import getopt |
|||
import gettext |
|||
@@ -72,12 +59,13 @@
|
|||
version = "1.5" |
|||
configfile = os.path.expanduser("~/.pastebinit.xml") |
|||
|
|||
- # Custom urlopener to handle 401's
|
|||
- class pasteURLopener(FancyURLopener):
|
|||
+ class PasteRequest(request.Request):
|
|||
version = "Pastebinit v%s" % version |
|||
|
|||
- def http_error_401(self, url, fp, errcode, errmsg, headers, data=None):
|
|||
- return None
|
|||
+ def __init__(self, *args, **opts):
|
|||
+ super(PasteRequest, self).__init__(*args, **opts)
|
|||
+ if 'User-agent' not in self.headers:
|
|||
+ self.add_header('User-agent', self.version)
|
|||
|
|||
def preloadPastebins(): |
|||
# Check several places for config files: |
|||
@@ -86,8 +74,8 @@
|
|||
# - user's overrides in ~/.pastebin.d |
|||
# Files found later override files found earlier. |
|||
pastebind = {} |
|||
- for confdir in ['/usr/share/pastebin.d', '/etc/pastebin.d',
|
|||
- '/usr/local/etc/pastebin.d',
|
|||
+ for confdir in ['@TERMUX_PREFIX@/share/pastebin.d', '@TERMUX_PREFIX@/etc/pastebin.d',
|
|||
+ '@TERMUX_PREFIX@/local/etc/pastebin.d',
|
|||
os.path.expanduser('~/.pastebin.d'), |
|||
os.path.join( |
|||
os.path.dirname( |
|||
@@ -410,25 +398,25 @@
|
|||
else: |
|||
post_format = 'standard' |
|||
|
|||
- url_opener = pasteURLopener()
|
|||
+ req = PasteRequest(fetch_url)
|
|||
|
|||
if post_format == 'json': |
|||
if json: |
|||
- params = json.dumps(params)
|
|||
- url_opener.addheader('Content-type', 'text/json')
|
|||
+ params = bytes(json.dumps(params), encoding='US-ASCII')
|
|||
+ req.add_header('Content-type', 'text/json')
|
|||
else: |
|||
print(_("Could not find any json library."), file=sys.stderr) |
|||
sys.exit(1) |
|||
else: |
|||
# Convert to a format usable with the HTML POST |
|||
- params = urlencode(params)
|
|||
+ params = bytes(urlencode(params), encoding='US-ASCII')
|
|||
|
|||
# Send the informations and be redirected to the final page |
|||
if verbose: |
|||
print("POSTing to: %s\nParams: %s" % ( |
|||
fetch_url, str(params)), file=sys.stderr) |
|||
try: |
|||
- page = url_opener.open(fetch_url, params)
|
|||
+ page = request.urlopen(req, params)
|
|||
except Exception as e: |
|||
print(_("Failed to contact the server: %s") % e, file=sys.stderr) |
|||
sys.exit(1) |
Loading…
Reference in new issue