[ https://issues.apache.org/jira/browse/MNG-7132?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17310621#comment-17310621 ]
Romain Manni-Bucau commented on MNG-7132: ----------------------------------------- Fully agree, I would prefer to rely on InetAdress in terms of impl but on some (old now - j7 last time I tested) JDK it is a bit slow but since it will end up loaded at some point maybe we don't care much except if mirror is loaded and no download are done (which happens luckily quite often). > org.eclipse.aether.util.repository.DefaultMirrorSelector#isLocal does not > handle local host/ip > ---------------------------------------------------------------------------------------------- > > Key: MNG-7132 > URL: https://issues.apache.org/jira/browse/MNG-7132 > Project: Maven > Issue Type: Bug > Reporter: Romain Manni-Bucau > Priority: Minor > > DefaultMirrorSelector used in > org.apache.maven.internal.aether.DefaultRepositorySystemSessionFactory#newRepositorySession > does not implement isLocal properly - more exactly it only handles 2 > particular cases whereas local can be way more numerous: > # ipv4 case: 127.x.y.z (test can be has 4 segments separated by a dot and > starts with 127.) > # ipv6 case: starts with 1 and ends with 0 (see > java.net.Inet6Address.Inet6AddressHolder#isLoopbackAddress) > # host case: not sure we want to handle it but except localhost hardcoded > string we could parse /etc/hosts (or windows specific location) too to > resolve the ip without going through InetAddress - see next point) and use > the ip with 1+2 rules. > this can be implemented as string parsing (faster) or reusing > [java.net|http://java.net/].InetAddress#isLoopbackAddress (which can fallback > in some resolution which can be slow at startup but works better overall and > is easier). > -- This message was sent by Atlassian Jira (v8.3.4#803005)