Преглед изворни кода

activate AI_IDN by default to support IDN domains

AI_IDN is a glibc extension, but we can worry about this at the time
actually anyone is seriously trying apt on non-glibc systems.

Closes: 763437
David Kalnischkies пре 10 година
родитељ
комит
920c367267
1 измењених фајлова са 2 додато и 0 уклоњено
  1. 2 0
      methods/connect.cc

+ 2 - 0
methods/connect.cc

@@ -165,6 +165,8 @@ static bool ConnectToHostname(std::string const &Host, int const Port,
       memset(&Hints,0,sizeof(Hints));
       memset(&Hints,0,sizeof(Hints));
       Hints.ai_socktype = SOCK_STREAM;
       Hints.ai_socktype = SOCK_STREAM;
       Hints.ai_flags = 0;
       Hints.ai_flags = 0;
+      if (_config->FindB("Acquire::Connect::IDN", true) == true)
+	 Hints.ai_flags |= AI_IDN;
       // see getaddrinfo(3): only return address if system has such a address configured
       // see getaddrinfo(3): only return address if system has such a address configured
       // useful if system is ipv4 only, to not get ipv6, but that fails if the system has
       // useful if system is ipv4 only, to not get ipv6, but that fails if the system has
       // no address configured: e.g. offline and trying to connect to localhost.
       // no address configured: e.g. offline and trying to connect to localhost.