commit: 051d75acf5e3fbca7c1083cb612e5f07a3a98919 Author: Frédéric Pierret (fepitre) <frederic.pierret <AT> qubes-os <DOT> org> AuthorDate: Tue Aug 4 13:12:08 2020 +0000 Commit: Zac Medico <zmedico <AT> gentoo <DOT> org> CommitDate: Mon Sep 7 22:49:53 2020 +0000 URL: https://gitweb.gentoo.org/proj/portage.git/commit/?id=051d75ac
rsync: ignore addrinfos with proxy settings Not doing so makes getting addrinfos failing due to "Temporary failure in name resolution" due to proxy settings. An alternative to this solution would be to define a socks.setdefaultproxy and passing socks.socksocket to socket. Bug: https://bugs.gentoo.org/740904 See: https://github.com/gentoo/portage/pull/607 Signed-off-by: Frédéric Pierret (fepitre) <frederic.pierret <AT> qubes-os.org> Signed-off-by: Zac Medico <zmedico <AT> gentoo.org> lib/portage/sync/modules/rsync/rsync.py | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/lib/portage/sync/modules/rsync/rsync.py b/lib/portage/sync/modules/rsync/rsync.py index 88b36ab79..35d1461e4 100644 --- a/lib/portage/sync/modules/rsync/rsync.py +++ b/lib/portage/sync/modules/rsync/rsync.py @@ -230,15 +230,16 @@ class RsyncSync(NewBase): addrinfos = None uris = [] - try: - addrinfos = getaddrinfo_validate( - socket.getaddrinfo(getaddrinfo_host, None, - family, socket.SOCK_STREAM)) - except socket.error as e: - writemsg_level( - "!!! getaddrinfo failed for '%s': %s\n" - % (_unicode_decode(hostname), str(e)), - noiselevel=-1, level=logging.ERROR) + if 'RSYNC_PROXY' not in self.spawn_kwargs['env']: + try: + addrinfos = getaddrinfo_validate( + socket.getaddrinfo( + getaddrinfo_host, None, family, socket.SOCK_STREAM)) + except socket.error as e: + writemsg_level( + "!!! getaddrinfo failed for '%s': %s\n" + % (_unicode_decode(hostname), str(e)), + noiselevel=-1, level=logging.ERROR) if addrinfos:
