mirror of
https://sourceware.org/git/glibc.git
synced 2024-12-11 22:00:08 +00:00
c533244b8e
This commit avoids referencing the __inet_aton_exact@GLIBC_PRIVATE symbol from nscd. In master, the separately-compiled getaddrinfo implementation in nscd needs it, however such an internal ABI change is not desirable on a release branch if it can be avoided.
53 lines
1.8 KiB
C
53 lines
1.8 KiB
C
/* Copyright (C) 2004-2018 Free Software Foundation, Inc.
|
|
This file is part of the GNU C Library.
|
|
Contributed by Ulrich Drepper <drepper@cygnus.com>, 2004.
|
|
|
|
This program is free software; you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License as published
|
|
by the Free Software Foundation; version 2 of the License, or
|
|
(at your option) any later version.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program; if not, see <http://www.gnu.org/licenses/>. */
|
|
|
|
#include <alloca.h>
|
|
|
|
/* This file uses the getaddrinfo code but it compiles it without NSCD
|
|
support. We just need a few symbol renames. */
|
|
#define __ioctl ioctl
|
|
#define __getsockname getsockname
|
|
#define __socket socket
|
|
#define __recvmsg recvmsg
|
|
#define __bind bind
|
|
#define __sendto sendto
|
|
#define __strchrnul strchrnul
|
|
#define __getline getline
|
|
#define __qsort_r qsort_r
|
|
/* nscd uses 1MB or 2MB thread stacks. */
|
|
#define __libc_use_alloca(size) (size <= __MAX_ALLOCA_CUTOFF)
|
|
#define __getifaddrs getifaddrs
|
|
#define __freeifaddrs freeifaddrs
|
|
|
|
/* We do not want to export __inet_aton_exact. Get the prototype and
|
|
change its visibility to hidden. */
|
|
#include <arpa/inet.h>
|
|
__typeof__ (__inet_aton_exact) __inet_aton_exact
|
|
__attribute__ ((visibility ("hidden")));
|
|
|
|
/* We are nscd, so we don't want to be talking to ourselves. */
|
|
#undef USE_NSCD
|
|
|
|
#include <getaddrinfo.c>
|
|
|
|
/* Support code. */
|
|
#include <check_pf.c>
|
|
#include <check_native.c>
|
|
|
|
/* Some variables normally defined in libc. */
|
|
service_user *__nss_hosts_database attribute_hidden;
|