You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
52 lines
2.1 KiB
52 lines
2.1 KiB
4 years ago
|
From 351e67e1a7259ac31ec3a7c2d5e850e60f622a5a Mon Sep 17 00:00:00 2001
|
||
|
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
|
||
|
Date: Tue, 31 Jan 2017 19:55:33 -0500
|
||
|
Subject: [PATCH] nss-util: silence warning about deprecated RES_USE_INET6
|
||
|
MIME-Version: 1.0
|
||
|
Content-Type: text/plain; charset=UTF-8
|
||
|
Content-Transfer-Encoding: 8bit
|
||
|
|
||
|
src/nss-resolve/nss-resolve.c: In function ‘_nss_resolve_gethostbyname_r’:
|
||
|
src/nss-resolve/nss-resolve.c:680:13: warning: RES_USE_INET6 is deprecated
|
||
|
NSS_GETHOSTBYNAME_FALLBACKS(resolve);
|
||
|
^~~~~~~~~~~~~~~~~~~~~~~~~
|
||
|
|
||
|
In glibc bz #19582, RES_USE_INET6 was deprecated. This might make sense for
|
||
|
clients, but they didn't take into account nss module implementations which
|
||
|
*must* continue to support the option. glibc internally defines
|
||
|
DEPRECATED_RES_USE_INET6 which can be used without emitting a warning, but
|
||
|
it's not exported publicly. Let's do the same, and just copy the definition
|
||
|
to our header.
|
||
|
|
||
|
(cherry picked from commit 6154d33de3f15bbd5d5df718103af9c37ba0a768)
|
||
|
|
||
|
Resolves: #1799002
|
||
|
---
|
||
|
src/shared/nss-util.h | 6 +++++-
|
||
|
1 file changed, 5 insertions(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/src/shared/nss-util.h b/src/shared/nss-util.h
|
||
|
index 230a986040..01524289c5 100644
|
||
|
--- a/src/shared/nss-util.h
|
||
|
+++ b/src/shared/nss-util.h
|
||
|
@@ -25,6 +25,10 @@
|
||
|
#include <netdb.h>
|
||
|
#include <resolv.h>
|
||
|
|
||
|
+#ifndef DEPRECATED_RES_USE_INET6
|
||
|
+# define DEPRECATED_RES_USE_INET6 0x00002000
|
||
|
+#endif
|
||
|
+
|
||
|
#define NSS_GETHOSTBYNAME_PROTOTYPES(module) \
|
||
|
enum nss_status _nss_##module##_gethostbyname4_r( \
|
||
|
const char *name, \
|
||
|
@@ -90,7 +94,7 @@ enum nss_status _nss_##module##_gethostbyname_r( \
|
||
|
int *errnop, int *h_errnop) { \
|
||
|
enum nss_status ret = NSS_STATUS_NOTFOUND; \
|
||
|
\
|
||
|
- if (_res.options & RES_USE_INET6) \
|
||
|
+ if (_res.options & DEPRECATED_RES_USE_INET6) \
|
||
|
ret = _nss_##module##_gethostbyname3_r( \
|
||
|
name, \
|
||
|
AF_INET6, \
|