diff options
author | Florian Weimer <fweimer@redhat.com> | 2017-06-30 11:31:41 +0200 |
---|---|---|
committer | Florian Weimer <fweimer@redhat.com> | 2017-06-30 11:31:41 +0200 |
commit | 6781d8e693eb9e1251875222db5c9885d7ebb596 (patch) | |
tree | 1d1aadb852c3fbaec07e0b22de9f6259f6c7e83f | |
parent | d85f99679d89fb47426301620b7a980388fddcfd (diff) | |
download | glibc-6781d8e693eb9e1251875222db5c9885d7ebb596.zip glibc-6781d8e693eb9e1251875222db5c9885d7ebb596.tar.gz glibc-6781d8e693eb9e1251875222db5c9885d7ebb596.tar.bz2 |
resolv: Turn _res_opcodes into a compatibility symbol
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | NEWS | 3 | ||||
-rw-r--r-- | include/resolv.h | 3 | ||||
-rw-r--r-- | resolv/res_debug.c | 14 |
4 files changed, 21 insertions, 6 deletions
@@ -1,5 +1,12 @@ 2017-06-30 Florian Weimer <fweimer@redhat.com> + * resolv/res_debug.c (_res_opcodes): Rename ... + (res_opcodes): ... as compatibility symbol. + (fp_nquery): Use res_opcodes. + * include/resolv.h (_res_opcodes): Remove declaration. + +2017-06-30 Florian Weimer <fweimer@redhat.com> + * include/resolv.h (res_pquery): Remove declaration. * resolv/res_data.c (fp_nquery, fp_query, p_query): Remove functions. @@ -234,6 +234,9 @@ Version 2.26 will now randomly pick a name server from the configuration as a starting point. (Previously, the second name server was always used.) +* The _res_opcodes variable has been removed from libresolv. It had been + exported by accident. + Security related changes: * The DNS stub resolver limits the advertised UDP buffer size to 1200 bytes, diff --git a/include/resolv.h b/include/resolv.h index 4d5b51e..2938506 100644 --- a/include/resolv.h +++ b/include/resolv.h @@ -90,8 +90,5 @@ libresolv_hidden_proto (__b64_ntop) libresolv_hidden_proto (__dn_count_labels) libresolv_hidden_proto (__p_secstodate) -extern const char *_res_opcodes[]; -libresolv_hidden_proto (_res_opcodes) - # endif /* _RESOLV_H_ && !_ISOMAC */ #endif diff --git a/resolv/res_debug.c b/resolv/res_debug.c index 182aeef..55d1fe9 100644 --- a/resolv/res_debug.c +++ b/resolv/res_debug.c @@ -106,6 +106,7 @@ #include <stdlib.h> #include <string.h> #include <time.h> +#include <shlib-compat.h> #ifdef SPRINTF_CHAR # define SPRINTF(x) strlen(sprintf/**/x) @@ -115,7 +116,12 @@ extern const char *_res_sectioncodes[] attribute_hidden; -const char *_res_opcodes[] = +/* _res_opcodes was exported by accident as a variable. */ +#if SHLIB_COMPAT (libresolv, GLIBC_2_0, GLIBC_2_26) +static const char *res_opcodes[] = +#else +static const char res_opcodes[][9] = +#endif { "QUERY", "IQUERY", @@ -134,7 +140,9 @@ const char *_res_opcodes[] = "ZONEINIT", "ZONEREF", }; -libresolv_hidden_data_def (_res_opcodes) +#if SHLIB_COMPAT (libresolv, GLIBC_2_0, GLIBC_2_26) +strong_alias (res_opcodes, _res_opcodes) +#endif static const char *p_section(int section, int opcode); @@ -259,7 +267,7 @@ fp_nquery (const unsigned char *msg, int len, FILE *file) if ((!pfcode) || (pfcode & RES_PRF_HEADX) || rcode) fprintf(file, ";; ->>HEADER<<- opcode: %s, status: %s, id: %d\n", - _res_opcodes[opcode], p_rcode(rcode), id); + res_opcodes[opcode], p_rcode(rcode), id); if ((!pfcode) || (pfcode & RES_PRF_HEADX)) putc(';', file); if ((!pfcode) || (pfcode & RES_PRF_HEAD2)) { |