From: Andy Shevchenko Date: Thu, 19 Sep 2013 10:41:02 +0000 (+0300) Subject: TransRead: don't parse URL twice in case of ssh proto X-Git-Tag: v3.0~18 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=1a588c7279718313c26b37c19897a8a3c38fc5ed;p=tools%2Fbmap-tools.git TransRead: don't parse URL twice in case of ssh proto _open_url() method already parses the URL. Let's use it instead of doing parsing second time. Signed-off-by: Andy Shevchenko Signed-off-by: Artem Bityutskiy --- diff --git a/bmaptools/TransRead.py b/bmaptools/TransRead.py index 171b31f..5790b15 100644 --- a/bmaptools/TransRead.py +++ b/bmaptools/TransRead.py @@ -339,7 +339,7 @@ class TransRead: except IOError as err: raise Error("cannot open file '%s': %s" % (self.name, err)) - def _open_url_ssh(self, url): + def _open_url_ssh(self, parsed_url): """ This function opens a file on a remote host using SSH. The URL has to have this format: "ssh://username@hostname:path". Currently we only @@ -348,8 +348,6 @@ class TransRead: import subprocess - # Parse the URL - parsed_url = urlparse.urlparse(url) username = parsed_url.username password = parsed_url.password path = parsed_url.path @@ -443,14 +441,15 @@ class TransRead: import socket parsed_url = urlparse.urlparse(url) - username = parsed_url.username - password = parsed_url.password if parsed_url.scheme == "ssh": # Unfortunately, liburl2 does not handle "ssh://" URLs - self._open_url_ssh(url) + self._open_url_ssh(parsed_url) return + username = parsed_url.username + password = parsed_url.password + if username and password: # Unfortunately, in order to handle URLs which contain user name # and password (e.g., http://user:password@my.site.org), we need to