From: Christopher Larson <kergoth@gmail.com>
To: bitbake-devel@lists.openembedded.org
Subject: [PATCH] fetch2: quote/unquote url paths
Date: Mon, 21 May 2012 16:34:49 -0700 [thread overview]
Message-ID: <1337643289-21368-1-git-send-email-kergoth@gmail.com> (raw)
This ensures we can handle things like %-encoded characters in the path
portion of urls.
Signed-off-by: Christopher Larson <kergoth@gmail.com>
---
lib/bb/fetch2/__init__.py | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/lib/bb/fetch2/__init__.py b/lib/bb/fetch2/__init__.py
index e3ac4d2..dba8797 100644
--- a/lib/bb/fetch2/__init__.py
+++ b/lib/bb/fetch2/__init__.py
@@ -28,6 +28,7 @@ from __future__ import absolute_import
from __future__ import print_function
import os, re
import logging
+import urllib
import bb.persist_data, bb.utils
from bb import data
@@ -147,14 +148,14 @@ def decodeurl(url):
s1, s2 = s.split('=')
p[s1] = s2
- return (type, host, path, user, pswd, p)
+ return type, host, urllib.unquote(path), user, pswd, p
def encodeurl(decoded):
"""Encodes a URL from tokens (scheme, network location, path,
user, password, parameters).
"""
- (type, host, path, user, pswd, p) = decoded
+ type, host, path, user, pswd, p = decoded
if not path:
raise MissingParameterError('path', "encoded from the data %s" % str(decoded))
@@ -168,7 +169,7 @@ def encodeurl(decoded):
url += "@"
if host and type != "file":
url += "%s" % host
- url += "%s" % path
+ url += "%s" % urllib.quote(path)
if p:
for parm in p:
url += ";%s=%s" % (parm, p[parm])
--
1.7.10.2
next reply other threads:[~2012-05-21 23:45 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-05-21 23:34 Christopher Larson [this message]
2012-05-22 13:39 ` [PATCH] fetch2: quote/unquote url paths Richard Purdie
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1337643289-21368-1-git-send-email-kergoth@gmail.com \
--to=kergoth@gmail.com \
--cc=bitbake-devel@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox