1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-08-08 17:42:12 +03:00

resolv: Move res_query functions into libc

This switches to public symbols without __ prefixes, due to improved
namespace management in glibc.

The script was used with --no-new-version to move the symbols
__res_nquery, __res_nquerydomain, __res_nsearch, __res_query,
__res_querydomain, __res_search, res_query, res_querydomain,
res_search.  The public symbols res_nquery, res_nquerydomain,
res_nsearch, res_ownok, res_query, res_querydomain, res_search
were added with make update-all-abi.

Reviewed-by: Carlos O'Donell <carlos@redhat.com>
Tested-by: Carlos O'Donell <carlos@redhat.com>
This commit is contained in:
Florian Weimer
2021-07-19 07:55:27 +02:00
parent 21a497cc58
commit ea9878ec27
69 changed files with 520 additions and 280 deletions

View File

@@ -276,7 +276,7 @@ __res_context_query (struct resolv_context *ctx, const char *name,
success:
return (n);
}
libresolv_hidden_def (__res_context_query)
libc_hidden_def (__res_context_query)
/* Common part of res_nquery and res_query. */
static int
@@ -296,23 +296,34 @@ context_query_common (struct resolv_context *ctx,
}
int
res_nquery(res_state statp,
const char *name, /* domain name */
int class, int type, /* class and type of query */
u_char *answer, /* buffer to put answer */
int anslen) /* size of answer buffer */
___res_nquery (res_state statp,
const char *name, /* Domain name. */
int class, int type, /* Class and type of query. */
unsigned char *answer, /* Buffer to put answer. */
int anslen) /* Size of answer buffer. */
{
return context_query_common
(__resolv_context_get_override (statp), name, class, type, answer, anslen);
}
versioned_symbol (libc, ___res_nquery, res_nquery, GLIBC_2_34);
#if OTHER_SHLIB_COMPAT (libresolv, GLIBC_2_2, GLIBC_2_34)
compat_symbol (libresolv, ___res_nquery, __res_nquery, GLIBC_2_2);
#endif
int
res_query (const char *name, int class, int type,
unsigned char *answer, int anslen)
___res_query (const char *name, int class, int type,
unsigned char *answer, int anslen)
{
return context_query_common
(__resolv_context_get (), name, class, type, answer, anslen);
}
versioned_symbol (libc, ___res_query, res_query, GLIBC_2_34);
#if OTHER_SHLIB_COMPAT (libresolv, GLIBC_2_0, GLIBC_2_2)
compat_symbol (libresolv, ___res_query, res_query, GLIBC_2_0);
#endif
#if OTHER_SHLIB_COMPAT (libresolv, GLIBC_2_2, GLIBC_2_34)
compat_symbol (libresolv, ___res_query, __res_query, GLIBC_2_2);
#endif
/* Formulate a normal query, send, and retrieve answer in supplied
buffer. Return the size of the response on success, -1 on error.
@@ -515,7 +526,7 @@ __res_context_search (struct resolv_context *ctx,
RES_SET_H_ERRNO(statp, TRY_AGAIN);
return (-1);
}
libresolv_hidden_def (__res_context_search)
libc_hidden_def (__res_context_search)
/* Common part of res_nsearch and res_search. */
static int
@@ -535,23 +546,34 @@ context_search_common (struct resolv_context *ctx,
}
int
res_nsearch(res_state statp,
const char *name, /* domain name */
int class, int type, /* class and type of query */
u_char *answer, /* buffer to put answer */
int anslen) /* size of answer */
___res_nsearch (res_state statp,
const char *name, /* Domain name. */
int class, int type, /* Class and type of query. */
unsigned char *answer, /* Buffer to put answer. */
int anslen) /* Size of answer. */
{
return context_search_common
(__resolv_context_get_override (statp), name, class, type, answer, anslen);
}
versioned_symbol (libc, ___res_nsearch, res_nsearch, GLIBC_2_34);
#if OTHER_SHLIB_COMPAT (libresolv, GLIBC_2_2, GLIBC_2_34)
compat_symbol (libresolv, ___res_nsearch, __res_nsearch, GLIBC_2_2);
#endif
int
res_search (const char *name, int class, int type,
unsigned char *answer, int anslen)
___res_search (const char *name, int class, int type,
unsigned char *answer, int anslen)
{
return context_search_common
(__resolv_context_get (), name, class, type, answer, anslen);
}
versioned_symbol (libc, ___res_search, res_search, GLIBC_2_34);
#if OTHER_SHLIB_COMPAT (libresolv, GLIBC_2_0, GLIBC_2_2)
compat_symbol (libresolv, ___res_search, res_search, GLIBC_2_0);
#endif
#if OTHER_SHLIB_COMPAT (libresolv, GLIBC_2_2, GLIBC_2_34)
compat_symbol (libresolv, ___res_search, __res_search, GLIBC_2_2);
#endif
/* Perform a call on res_query on the concatenation of name and
domain. */
@@ -615,31 +637,33 @@ context_querydomain_common (struct resolv_context *ctx,
}
int
res_nquerydomain(res_state statp,
const char *name,
const char *domain,
int class, int type, /* class and type of query */
u_char *answer, /* buffer to put answer */
int anslen) /* size of answer */
___res_nquerydomain (res_state statp,
const char *name,
const char *domain,
int class, int type, /* Class and type of query. */
unsigned char *answer, /* Buffer to put answer. */
int anslen) /* Size of answer. */
{
return context_querydomain_common
(__resolv_context_get_override (statp),
name, domain, class, type, answer, anslen);
}
versioned_symbol (libc, ___res_nquerydomain, res_nquerydomain, GLIBC_2_34);
#if OTHER_SHLIB_COMPAT (libresolv, GLIBC_2_2, GLIBC_2_34)
compat_symbol (libresolv, ___res_nquerydomain, __res_nquerydomain, GLIBC_2_2);
#endif
int
res_querydomain (const char *name, const char *domain, int class, int type,
unsigned char *answer, int anslen)
___res_querydomain (const char *name, const char *domain, int class, int type,
unsigned char *answer, int anslen)
{
return context_querydomain_common
(__resolv_context_get (), name, domain, class, type, answer, anslen);
}
#if SHLIB_COMPAT (libresolv, GLIBC_2_0, GLIBC_2_2)
# undef res_query
# undef res_querydomain
# undef res_search
weak_alias (__res_query, res_query);
weak_alias (__res_querydomain, res_querydomain);
weak_alias (__res_search, res_search);
versioned_symbol (libc, ___res_querydomain, res_querydomain, GLIBC_2_34);
#if OTHER_SHLIB_COMPAT (libresolv, GLIBC_2_0, GLIBC_2_2)
compat_symbol (libresolv, ___res_querydomain, res_querydomain, GLIBC_2_0);
#endif
#if OTHER_SHLIB_COMPAT (libresolv, GLIBC_2_2, GLIBC_2_34)
compat_symbol (libresolv, ___res_querydomain, __res_querydomain, GLIBC_2_2);
#endif