--- /dev/null
+--- whois-4.7.14/whois.c.orig 2006-07-21 14:27:55.524440000 +0200
++++ whois-4.7.14/whois.c 2006-07-21 14:29:06.354440000 +0200
+@@ -695,7 +695,12 @@
+ hints.ai_socktype = SOCK_STREAM;
+ hints.ai_flags = AI_IDN;
+
+- if ((err = getaddrinfo(server, port ? port : "nicname", &hints, &res)) != 0)
++ err = getaddrinfo(server, port ? port : "nicname", &hints, &res);
++ if (err == EAI_BADFLAGS) {
++ hints.ai_flags &= ~AI_IDN;
++ err = getaddrinfo(server, port ? port : "nicname", &hints, &res);
++ }
++ if (err != 0)
+ err_quit("getaddrinfo(%s): %s", server, gai_strerror(err));
+ for (ai = res; ai; ai = ai->ai_next) {
+ if ((fd = socket(ai->ai_family, ai->ai_socktype, ai->ai_protocol)) < 0)