195601059c
IDN related declaration without implementation is a bad idea. Signed-off-by: Waldemar Brodkorb <wbx@openadk.org> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
55 lines
2.2 KiB
Diff
55 lines
2.2 KiB
Diff
From 5e9a78c8a839381add6faa61e196e6dad9143163 Mon Sep 17 00:00:00 2001
|
|
From: Thomas Claveirole <thomas.claveirole@green-communications.fr>
|
|
Date: Tue, 2 Feb 2016 12:13:09 +0100
|
|
Subject: [PATCH] include/netdb.h: Do not define IDN-related flags.
|
|
|
|
getaddrinfo() does not implement IDN encoding, and always fail when
|
|
provided an IDN flag (e.g., AI_IDN) with EAI_BADFLAGS. Some packages
|
|
(such as the VLC media player) check for AI_IDN before they use it;
|
|
providing an unimplemented AI_IDN in the libc makes these package
|
|
fail. As a result they make calls to getaddrinfo() with AI_IDN that
|
|
always fail while they could have made successful calls without AI_IDN
|
|
instead.
|
|
|
|
Thus, do not define IDN flags: it is better not to compile rather than
|
|
to compile a code that always fail.
|
|
|
|
Signed-off-by: Thomas Claveirole <thomas.claveirole@green-communications.fr>
|
|
Signed-off-by: Waldemar Brodkorb <wbx@uclibc-ng.org>
|
|
---
|
|
include/netdb.h | 11 -----------
|
|
1 file changed, 11 deletions(-)
|
|
|
|
diff --git a/include/netdb.h b/include/netdb.h
|
|
index a636b5f..95abe95 100644
|
|
--- a/include/netdb.h
|
|
+++ b/include/netdb.h
|
|
@@ -627,16 +627,6 @@ struct addrinfo
|
|
# define AI_ALL 0x0010 /* Return IPv4 mapped and IPv6 addresses. */
|
|
# define AI_ADDRCONFIG 0x0020 /* Use configuration of this host to choose
|
|
returned address type.. */
|
|
-# ifdef __USE_GNU
|
|
-# define AI_IDN 0x0040 /* IDN encode input (assuming it is encoded
|
|
- in the current locale's character set)
|
|
- before looking it up. */
|
|
-# define AI_CANONIDN 0x0080 /* Translate canonical name from IDN format. */
|
|
-# define AI_IDN_ALLOW_UNASSIGNED 0x0100 /* Don't reject unassigned Unicode
|
|
- code points. */
|
|
-# define AI_IDN_USE_STD3_ASCII_RULES 0x0200 /* Validate strings according to
|
|
- STD3 rules. */
|
|
-# endif
|
|
# define AI_NUMERICSERV 0x0400 /* Don't use name resolution. */
|
|
|
|
/* Error values for `getaddrinfo' function. */
|
|
@@ -658,7 +648,6 @@ struct addrinfo
|
|
# define EAI_NOTCANCELED -102 /* Request not canceled. */
|
|
# define EAI_ALLDONE -103 /* All requests done. */
|
|
# define EAI_INTR -104 /* Interrupted by a signal. */
|
|
-# define EAI_IDN_ENCODE -105 /* IDN encoding failed. */
|
|
# endif
|
|
|
|
# ifdef __USE_MISC
|
|
--
|
|
1.7.10.4
|
|
|