--- /usr/lib/portage/bin/emerge 2005-08-10 00:08:40.000000000 -0400 +++ /home/skyfw/portage/patches/emerge-diff 2005-08-10 00:12:35.000000000 -0400 @@ -2501,7 +2501,15 @@ del ips[0] if ips==[]: try: - ips=socket.gethostbyname_ex(hostname)[2] + ip6sockets = socket.getaddrinfo(hostname,None,10,socket.SOCK_STREAM) + random.shuffle(ip6sockets) + for addrinfo in ip6sockets: + ips.append('[' + addrinfo[4][0] + ']') + except Exception, e: + print "No IPv6 record found, trying IPv4:",str(e) + + try: + ips.extend(socket.gethostbyname_ex(hostname)[2]) except SystemExit, e: raise # Needed else can't exit except Exception, e: