Split out _hide_url_passwd() and use it more.
authorZac Medico <zmedico@gentoo.org>
Mon, 14 May 2012 05:29:40 +0000 (22:29 -0700)
committerZac Medico <zmedico@gentoo.org>
Mon, 14 May 2012 05:29:40 +0000 (22:29 -0700)
pym/portage/dbapi/bintree.py
pym/portage/getbinpkg.py
pym/portage/package/ebuild/fetch.py

index 08fdad02bc74a3a0a9200dbd0cec38d9f4019c9f..51c093658fcffc7a84c6c4786c175532148c76b3 100644 (file)
@@ -11,7 +11,7 @@ portage.proxy.lazyimport.lazyimport(globals(),
        'portage.output:EOutput,colorize',
        'portage.locks:lockfile,unlockfile',
        'portage.package.ebuild.doebuild:_vdb_use_conditional_atoms',
-       'portage.package.ebuild.fetch:_check_distfile',
+       'portage.package.ebuild.fetch:_check_distfile,_hide_url_passwd',
        'portage.update:update_dbentries',
        'portage.util:atomic_ofstream,ensure_dirs,normalize_path,' + \
                'writemsg,writemsg_stdout',
@@ -36,7 +36,6 @@ from portage import _unicode_encode
 import codecs
 import errno
 import io
-import re
 import stat
 import subprocess
 import sys
@@ -916,7 +915,7 @@ class binarytree(object):
                                                        noiselevel=-1)
                        except EnvironmentError as e:
                                writemsg(_("\n\n!!! Error fetching binhost package" \
-                                       " info from '%s'\n") % base_url)
+                                       " info from '%s'\n") % _hide_url_passwd(base_url))
                                writemsg("!!! %s\n\n" % str(e))
                                del e
                                pkgindex = None
@@ -992,7 +991,7 @@ class binarytree(object):
                        writemsg_stdout("\n")
                        writemsg_stdout(
                                colorize("GOOD", _("Fetching bininfo from ")) + \
-                               re.sub(r'//(.+):.+@(.+)/', r'//\1:*password*@\2/', base_url) + "\n")
+                               _hide_url_passwd(base_url) + "\n")
                        remotepkgs = portage.getbinpkg.dir_get_metadata(
                                base_url, chunk_size=chunk_size)
 
index 7dec20a4418a46ea0b7cf25c6996fd0f5044d4fc..212f78889ab2b9458ce81a21b16834e43c20f8cc 100644 (file)
@@ -1,5 +1,5 @@
 # getbinpkg.py -- Portage binary-package helper functions
-# Copyright 2003-2011 Gentoo Foundation
+# Copyright 2003-2012 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 from portage.output import colorize
@@ -10,6 +10,7 @@ from portage import os
 from portage import _encodings
 from portage import _unicode_decode
 from portage import _unicode_encode
+from portage.package.ebuild.fetch import _hide_url_passwd
 from _emerge.Package import _all_metadata_keys
 
 import sys
@@ -578,7 +579,8 @@ def dir_get_metadata(baseurl, conn=None, chunk_size=3000, verbose=1, usingcache=
        try:
                filelist = dir_get_list(baseurl, conn)
        except portage.exception.PortageException as e:
-               sys.stderr.write(_("!!! Error connecting to '%s'.\n") % baseurl)
+               sys.stderr.write(_("!!! Error connecting to '%s'.\n") %
+                       _hide_url_passwd(baseurl))
                sys.stderr.write("!!! %s\n" % str(e))
                del e
                return metadata[baseurl]["data"]
index 022d3e89a188c537ebc2d33e6b9c7467a50fd2ab..b795b282604c42f44fe74462333c20fcc4c44cd7 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright 2010-2011 Gentoo Foundation
+# Copyright 2010-2012 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 from __future__ import print_function
@@ -46,6 +46,9 @@ _userpriv_spawn_kwargs = (
        ("umask",  0o02),
 )
 
+def _hide_url_passwd(url):
+       return re.sub(r'//(.+):.+@(.+)', r'//\1:*password*@\2', url)
+
 def _spawn_fetch(settings, args, **kwargs):
        """
        Spawn a process with appropriate settings for fetching, including
@@ -949,7 +952,7 @@ def fetch(myuris, mysettings, listonly=0, fetchonly=0,
                                                locfetch=fetchcommand
                                                command_var = fetchcommand_var
                                        writemsg_stdout(_(">>> Downloading '%s'\n") % \
-                                               re.sub(r'//(.+):.+@(.+)/',r'//\1:*password*@\2/', loc))
+                                               _hide_url_passwd(loc))
                                        variables = {
                                                "DISTDIR": mysettings["DISTDIR"],
                                                "URI":     loc,