X-Git-Url: https://git.distorted.org.uk/~mdw/tripe/blobdiff_plain/870ff51ad8e7fd068afb22c25701577d54828edb..89640f3f83c29967e524d754bf130bc452bdefe2:/mon/tripemon.in diff --git a/mon/tripemon.in b/mon/tripemon.in index 24709344..593b2e8b 100644 --- a/mon/tripemon.in +++ b/mon/tripemon.in @@ -324,12 +324,14 @@ class Peer (MonitorObject): def _setaddr(me, addr): """Set the peer's address.""" if addr[0] == 'INET': - ipaddr, port = addr[1:] + af, ipaddr, port = addr try: - name = S.gethostbyaddr(ipaddr)[0] - me.addr = 'INET %s:%s [%s]' % (name, port, ipaddr) - except S.herror: - me.addr = 'INET %s:%s' % (ipaddr, port) + name, _ = S.getnameinfo((ipaddr, int(port)), + S.NI_NUMERICSERV | S.NI_NAMEREQD) + except S.gaierror: + me.addr = '%s %s:%s' % (af, ipaddr, port) + else: + me.addr = '%s %s:%s [%s]' % (af, name, port, ipaddr) else: me.addr = ' '.join(addr)