1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-07-29 11:41:21 +03:00

resolv: Deprecate unimplemented flags

RES_AAONLY, RES_PRIMARY, RES_NOCHECKNAME, RES_KEEPTSIG result
in compile-time warnings.  Some of these flags are still used in
applications.
This commit is contained in:
Florian Weimer
2016-10-07 17:41:45 +02:00
parent 314ba75e4a
commit bfbd1de159
6 changed files with 33 additions and 9 deletions

View File

@ -1,3 +1,14 @@
2016-10-07 Florian Weimer <fweimer@redhat.com>
resolv: Deprecate unimplemented flags.
* misc/sys/cdefs.h (__glibc_macro_warning1)
(__glibc_macro_warning): Define.
* resolv/resolv.h (RES_AAONLY, RES_PRIMARY, RES_NOCHECKNAME)
(RES_KEEPTSIG): Mark as deprecated.
* resolv/res_debug.c (p_option): Remove RES_AAONLY, RES_PRIMARY,
RES_NOCHECKNAME, RES_KEEPTSIG.
* resolv/res_init.c (res_setoptions): Remove RES_NOCHECKNAME handling.
2016-10-07 Stefan Liebler <stli@linux.vnet.ibm.com> 2016-10-07 Stefan Liebler <stli@linux.vnet.ibm.com>
* nptl/pt-longjmp.c (DEFINE_LONGJMP): Use libc_ifunc macro. * nptl/pt-longjmp.c (DEFINE_LONGJMP): Use libc_ifunc macro.

4
NEWS
View File

@ -59,6 +59,10 @@ Version 2.25
for the Linux quota interface which predates kernel version 2.4.22 has for the Linux quota interface which predates kernel version 2.4.22 has
been removed. been removed.
* The flags RES_AAONLY, RES_PRIMARY, RES_NOCHECKNAME, RES_KEEPTSIG defined
in the <resolv.h> header file have been deprecated. They were already
unimplemented.
* DNSSEC-related declarations and definitions have been removed from the * DNSSEC-related declarations and definitions have been removed from the
<arpa/nameser.h> header file, and libresolv will no longer attempt to <arpa/nameser.h> header file, and libresolv will no longer attempt to
decode the data part of DNSSEC record types. Previous versions of glibc decode the data part of DNSSEC record types. Previous versions of glibc

View File

@ -472,4 +472,14 @@
# endif # endif
#endif #endif
/* __glibc_macro_warning (MESSAGE) issues warning MESSAGE. This is
intended for use in preprocessor macros. */
#if __GNUC_PREREQ (4,8)
# define __glibc_macro_warning1(message) _Pragma (#message)
# define __glibc_macro_warning(message) \
__glibc_macro_warning1 (GCC warning message)
#else
# define __glibc_macro_warning(msg)
#endif
#endif /* sys/cdefs.h */ #endif /* sys/cdefs.h */

View File

@ -546,9 +546,7 @@ p_option(u_long option) {
switch (option) { switch (option) {
case RES_INIT: return "init"; case RES_INIT: return "init";
case RES_DEBUG: return "debug"; case RES_DEBUG: return "debug";
case RES_AAONLY: return "aaonly(unimpl)";
case RES_USEVC: return "use-vc"; case RES_USEVC: return "use-vc";
case RES_PRIMARY: return "primry(unimpl)";
case RES_IGNTC: return "igntc"; case RES_IGNTC: return "igntc";
case RES_RECURSE: return "recurs"; case RES_RECURSE: return "recurs";
case RES_DEFNAMES: return "defnam"; case RES_DEFNAMES: return "defnam";
@ -559,8 +557,6 @@ p_option(u_long option) {
case RES_NOALIASES: return "noaliases"; case RES_NOALIASES: return "noaliases";
case RES_USE_INET6: return "inet6"; case RES_USE_INET6: return "inet6";
case RES_ROTATE: return "rotate"; case RES_ROTATE: return "rotate";
case RES_NOCHECKNAME: return "no-check-names(unimpl)";
case RES_KEEPTSIG: return "keeptsig(unimpl)";
case RES_BLAST: return "blast"; case RES_BLAST: return "blast";
case RES_USEBSTRING: return "ip6-bytestring"; case RES_USEBSTRING: return "ip6-bytestring";
case RES_NOIP6DOTINT: return "no-ip6-dotint"; case RES_NOIP6DOTINT: return "no-ip6-dotint";

View File

@ -442,7 +442,6 @@ res_setoptions(res_state statp, const char *options, const char *source) {
{ STRnLEN ("no-ip6-dotint"), 0, RES_NOIP6DOTINT }, { STRnLEN ("no-ip6-dotint"), 0, RES_NOIP6DOTINT },
{ STRnLEN ("ip6-dotint"), 1, ~RES_NOIP6DOTINT }, { STRnLEN ("ip6-dotint"), 1, ~RES_NOIP6DOTINT },
{ STRnLEN ("rotate"), 0, RES_ROTATE }, { STRnLEN ("rotate"), 0, RES_ROTATE },
{ STRnLEN ("no-check-names"), 0, RES_NOCHECKNAME },
{ STRnLEN ("edns0"), 0, RES_USE_EDNS0 }, { STRnLEN ("edns0"), 0, RES_USE_EDNS0 },
{ STRnLEN ("single-request-reopen"), 0, RES_SNGLKUPREOP }, { STRnLEN ("single-request-reopen"), 0, RES_SNGLKUPREOP },
{ STRnLEN ("single-request"), 0, RES_SNGLKUP }, { STRnLEN ("single-request"), 0, RES_SNGLKUP },

View File

@ -177,9 +177,11 @@ struct res_sym {
*/ */
#define RES_INIT 0x00000001 /* address initialized */ #define RES_INIT 0x00000001 /* address initialized */
#define RES_DEBUG 0x00000002 /* print debug messages */ #define RES_DEBUG 0x00000002 /* print debug messages */
#define RES_AAONLY 0x00000004 /* authoritative answers only (!IMPL)*/ #define RES_AAONLY \
__glibc_macro_warning ("RES_AAONLY is deprecated") 0x00000004
#define RES_USEVC 0x00000008 /* use virtual circuit */ #define RES_USEVC 0x00000008 /* use virtual circuit */
#define RES_PRIMARY 0x00000010 /* query primary server only (!IMPL) */ #define RES_PRIMARY \
__glibc_macro_warning ("RES_PRIMARY is deprecated") 0x00000010
#define RES_IGNTC 0x00000020 /* ignore trucation errors */ #define RES_IGNTC 0x00000020 /* ignore trucation errors */
#define RES_RECURSE 0x00000040 /* recursion desired */ #define RES_RECURSE 0x00000040 /* recursion desired */
#define RES_DEFNAMES 0x00000080 /* use default domain name */ #define RES_DEFNAMES 0x00000080 /* use default domain name */
@ -190,8 +192,10 @@ struct res_sym {
#define RES_NOALIASES 0x00001000 /* shuts off HOSTALIASES feature */ #define RES_NOALIASES 0x00001000 /* shuts off HOSTALIASES feature */
#define RES_USE_INET6 0x00002000 /* use/map IPv6 in gethostbyname() */ #define RES_USE_INET6 0x00002000 /* use/map IPv6 in gethostbyname() */
#define RES_ROTATE 0x00004000 /* rotate ns list after each query */ #define RES_ROTATE 0x00004000 /* rotate ns list after each query */
#define RES_NOCHECKNAME 0x00008000 /* do not check names for sanity (!IMPL) */ #define RES_NOCHECKNAME \
#define RES_KEEPTSIG 0x00010000 /* do not strip TSIG records */ __glibc_macro_warning ("RES_NOCHECKNAME is deprecated") 0x00008000
#define RES_KEEPTSIG \
__glibc_macro_warning ("RES_KEEPTSIG is deprecated") 0x00010000
#define RES_BLAST 0x00020000 /* blast all recursive servers */ #define RES_BLAST 0x00020000 /* blast all recursive servers */
#define RES_USEBSTRING 0x00040000 /* IPv6 reverse lookup with byte #define RES_USEBSTRING 0x00040000 /* IPv6 reverse lookup with byte
strings */ strings */