I used these shell commands:
../glibc/scripts/update-copyrights $PWD/../gnulib/build-aux/update-copyright
(cd ../glibc && git commit -am"[this commit message]")
and then ignored the output, which consisted lines saying "FOO: warning:
copyright statement not found" for each of 6694 files FOO.
I then removed trailing white space from benchtests/bench-pthread-locks.c
and iconvdata/tst-iconv-big5-hkscs-to-2ucs4.c, to work around this
diagnostic from Savannah:
remote: *** pre-commit check failed ...
remote: *** error: lines with trailing whitespace found
remote: error: hook declined to update refs/heads/master
Starting with commit 29fddfc7df, the
tests posix/bug-ga2 and resolv/tst-leaks2 are test-container tests.
If test-container.c returns with EXIT_UNSUPPORTED, the tests with
mtrace() are not executed and the mtrace files do not exist.
Therefore the "mtrace-analysis-part" of those tests are marked
UNSUPPORTED if the mtrace files are missing.
Reported-by: Tulio Magno Quites Machado Filho <tuliom@linux.ibm.com>
Reviewed-by: Tulio Magno Quites Machado Filho <tuliom@linux.ibm.com>
The tests posix/bug-ga2-mem and resolv/mtrace-tst-leaks2 are failing on
fedora 33 as mtrace reports memory leaks.
The /etc/nsswitch.conf differs between
Fedora 32: hosts: files dns myhostname
Fedora 33: hosts: files resolve [!UNAVAIL=return] myhostname dns
Therefore /lib64/libnss_resolve.so.2 (from systemd) and the dependencies
libgcc_s.so.1 and libpthread.so.0 are loaded.
Usually all malloc'ed resources from getaddrinfo / gethostbyname are freed
and the libraries are dlclose'd in nss/nsswitch.c:libc_freeres_fn (free_mem).
Unfortunately, /lib64/libnss_resolve.so.2 is marked with DF_1_NODELETE.
As this library is not unmapped, you'll see "Memory not freed".
Therefore those tests are now only relying on libnss_files.so by making
them test-container tests and providing the required configuration files.
By moving the tests to tests-container, those are now running with
"make check". Therefore the mtrace part of the tests are also moved
from "make xcheck" to "make check".
bug-ga2.c is now using test-driver.c in order to support WAIT_FOR_DEBUGGER
environment variable.
If the transaction IDs are equal, the old check attributed both
responses to the first query, not recognizing the second response.
This fixes bug 26600.
Restore <rpc/netdb.h> as an installed header. Delete the dummy header
resolv/rpc/netdb.h because inet is not an optional glibc component
(so its <rpc/netdb.h> is always available).
Fixes commit acb527929d ("Move
non-deprecated RPC-related functions from sunrpc to inet") in
combination with commit 5500cdba40
("Remove --enable-obsolete-rpc configure flag").
This introduces a concept of trusted name servers, for which the
AD bit is passed through to applications. For untrusted name
servers (the default), the AD bit in responses are cleared, to
provide a safe default.
This approach is very similar to the one suggested by Pavel Šimerda
in <https://bugzilla.redhat.com/show_bug.cgi?id=1164339#c15>.
The DNS test framework in support/ is enhanced with support for
setting the AD bit in responses.
Tested on x86_64-linux-gnu.
Change-Id: Ibfe0f7c73ea221c35979842c5c3b6ed486495ccc
This functionality was deprecated in glibc 2.25.
This commit only includes the core changes to remove the
functionality. It does not remove the RES_USE_INET6 handling in the
individual NSS service modules and the res_use_inet6 function.
These changes will happen in future commits.
The Linux kernel suppresses some ICMP error messages by default for
UDP sockets. This commit enables full ICMP error reporting,
hopefully resulting in faster failover to working name servers.
The IPv4 address parser in the getaddrinfo function is changed so that
it does not ignore trailing whitespace and all characters after it.
For backwards compatibility, the getaddrinfo function still recognizes
legacy name syntax, such as 192.000.002.010 interpreted as 192.0.2.8
(octal).
This commit does not change the behavior of inet_addr and inet_aton.
gethostbyname already had additional sanity checks (but is switched
over to the new __inet_aton_exact function for completeness as well).
To avoid sending the problematic query names over DNS, commit
6ca53a2453 ("resolv: Do not send queries
for non-host-names in nss_dns [BZ #24112]") is needed.
The old implementation based on hsearch_r used an ad-hoc C string
encoding and produced an incorrect format on the wire for domain
names which contained bytes which needed escaping when printed.
This commit switches to ns_name_pton for the wire format conversion
(now that we have separate tests for it) and uses a tsearch tree
with a suitable comparison function to locate compression targets.
This patch, relative to a tree with
<https://sourceware.org/ml/libc-alpha/2017-11/msg00797.html> (pending
review) applied, obsoletes p_secstodate, making the underlying
function __p_secstodate into a compat symbol not available for new
binaries or ports. The calls in ns_print.c (part of incomplete
handling of TKEY) are changed to use %lu to print times instead of
trying to pretty-print the times any more.
Tested for x86_64.
* resolv/res_debug.c (p_secstodate): Condition definition on
[SHLIB_COMPAT (libresolv, GLIBC_2_0, GLIBC_2_27)]. Define
directly as __p_secstodate, and as a compat symbol. Do not use
libresolv_hidden_def.
* resolv/resolv.h (p_secstodate): Remove macro and function
declaration.
* resolv/ns_print.c (ns_sprintrrf): Print times with %lu, not
using p_secstodate.
* include/resolv.h (__p_secstodate): Do not use
libresolv_hidden_proto.
* resolv/Makefile (tests): Move tst-p_secstodate to ....
(tests-internal): ... here.
* resolv/tst-p_secstodate.c: Include <shlib-compat.h>. Condition
all contents on [TEST_COMPAT (libresolv, GLIBC_2_0, GLIBC_2_27)]
and declare and use __p_secstodate and use compat_symbol_reference
in that case.
[!TEST_COMPAT (libresolv, GLIBC_2_0, GLIBC_2_27)] (do_test): Add
implementation returning 77.
The resolv/res_debug.c function p_secstodate (which is a public
function exported from libresolv, taking an unsigned long argument)
does:
struct tm timebuf;
time = __gmtime_r(&clock, &timebuf);
time->tm_year += 1900;
time->tm_mon += 1;
sprintf(output, "%04d%02d%02d%02d%02d%02d",
time->tm_year, time->tm_mon, time->tm_mday,
time->tm_hour, time->tm_min, time->tm_sec);
If __gmtime_r returns NULL (because the year overflows the range of
int), this will dereference a null pointer. Otherwise, if the
computed year does not fit in four characters, this will cause a
buffer overrun of the fixed-size 15-byte buffer. With current GCC
mainline, there is a compilation failure because of the possible
buffer overrun.
I couldn't find a specification for how this function is meant to
behave, but Paul pointed to RFC 4034 as relevant to the cases where
this function is called from within glibc. The function's interface
is inherently problematic when dates beyond Y2038 might be involved,
because of the ambiguity in how to interpret 32-bit timestamps as such
dates (the RFC suggests interpreting times as being within 68 years of
the present date, which would mean some kind of interface whose
behavior depends on the present date).
This patch works on the basis of making a minimal fix in preparation
for obsoleting the function. The function is made to handle times in
the interval [0, 0x7fffffff] only, on all platforms, with <overflow>
used as the output string in other cases (and errno set to EOVERFLOW
in such cases). This seems to be a reasonable state for the function
to be in when made a compat symbol by a future patch, being compatible
with any existing uses for existing timestamps without trying to work
for later timestamps. Results independent of the range of time_t also
simplify the testcase.
I couldn't persuade GCC to recognize the ranges of the struct tm
fields by adding explicit range checks with a call to
__builtin_unreachable if outside the range (this looks similar to
<https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80776>), so having added
a range check on the input, this patch then disables the
-Wformat-overflow= warning for the sprintf call (I prefer that to the
use of strftime, as being more transparently correct without knowing
what each of %m and %M etc. is).
I do not know why this build failure should be new with mainline GCC
(that is, I don't know what GCC change might have introduced it, when
the basic functionality for such warnings was already in GCC 7).
I do not know if this is a security issue (that is, if there are
plausible ways in which a date before -999 or after 9999 from an
untrusted source might end up in this function). The system clock is
arguably an untrusted source (in that e.g. NTP is insecure), but
probably not to that extent (NTP can't communicate such wild
timestamps), and uses from within glibc are limited to 32-bit inputs.
Tested with build-many-glibcs.py that this restores the build for arm
with yesterday's mainline GCC. Also tested for x86_64 and x86.
[BZ #22463]
* resolv/res_debug.c: Include <libc-diag.h>.
(p_secstodate): Assert time_t at least as wide as u_long. On
overflow, use integer seconds since the epoch as output, or use
"<overflow>" as output and set errno to EOVERFLOW if integer
seconds since the epoch would be 14 or more characters.
(p_secstodate) [__GNUC_PREREQ (7, 0)]: Disable -Wformat-overflow=
for sprintf call.
* resolv/tst-p_secstodate.c: New file.
* resolv/Makefile (tests): Add tst-p_secstodate.
($(objpfx)tst-p_secstodate): Depend on $(objpfx)libresolv.so.
Remove the bogus targets (and source) that supposedly build ga_test.
This code was added to resolv very early in the development process
but does not appear to be an actual test program. The target for
building this file is tests but because the glibc Make system is
built the way it is, the target is overriden by higher-level tests
targets and, therefore, the ga_test program is never built. Removing
the target and the source code makes the resolv/Makefile less confusing.
Tested by building and running 'make check' on 64 bit host running
Kernel 4.10.0-19 configured with
--prefix=/home/hawkinsw/code/glibc-build/install
--enable-hardcoded-path-in-tests
--disable-mathvec
Reviewed-by: Carlos O'Donell <carlos@redhat.com>
This change provides additional resolver configuration state which
is not exposed through the _res ABI. It reuses the existing
initstamp field in the supposedly-private part of _res. Some effort
is undertaken to avoid memory safety issues introduced by applications
which directly patch the _res object.
With this commit, only the initstamp field is moved into struct
resolv_conf. Additional members will be added later, eventually
migrating the entire resolver configuration.
struct resolv_context objects provide a temporary resolver context
which does not change during a name lookup operation. Only when the
outmost context is created, the stub resolver configuration is
verified to be current (at present, only against previous res_init
calls). Subsequent attempts to obtain the context will reuse the
result of the initial verification operation.
struct resolv_context can also be extended in the future to store
data which needs to be deallocated during thread cancellation.
These __need macros are only used internally, by nptl/descr.h.
However, including all of resolv.h from descr.h causes build failures
due to resolv.h's dozens of pseudo-struct-field macros, some of which
collide with struct fields in NPTL internal data structures.
Similarly, including all of list.h from descr.h produces an include
cycle, atomic.h -> atomic-machine.h -> tls.h -> descr.h -> list.h ->
atomic.h, and then list.h tries to use atomic.h macros that haven't
been defined yet. So we do need mini-headers for these. In the
list.h case I called it include/list_t.h since it isn't going to be
installed.
* resolv/resolv.h: Remove __need_res_state logic.
Move definition of res_state and related constants to ...
* resolv/bits/types/res_state.h: ...this new file.
* resolv/Makefile: Install bits/types/res_state.h.
* include/bits/types/res_state.h: New wrapper.
* include/list.h: Remove __need_list_t logic.
Move definition of list_t to ...
* include/list_t.h: ...this new file.
* nptl/descr.h: Include list_t.h and bits/types/res_state.h
instead of list.h and resolv.h.
This bug did not affect name resolution because those functions
indirectly call ns_name_pack with a buffer which is always larger
than the generated query packet, even in the case of the
longest-possible domain name.
This change also removes the preprocessor-based function renaming.
It also applied to tests in resolv/, which ended up running against
the historic functions.
_endhtent was not part of the ABI because it is not listed in the
resolv/Versions file.
Two glibc makefiles use -Wno-strict-prototypes. I don't know if this
was needed before my recent conversion of many function definitions to
prototype style, but it's not needed now; this patch removes it.
Tested for x86_64 and x86 (testsuite, and that installed stripped
shared libraries are unchanged by the patch).
* posix/Makefile (CFLAGS-regex.c): Remove variable.
* resolv/Makefile (+cflags): Do not use -Wno-strict-prototypes.
With gcc-4.9, a new -fstack-protector-strong flag is available that is
between -fstack-protector (pretty weak) and -fstack-protector-all (pretty
strong) that provides good trade-offs between overhead but still providing
good coverage. Update the places in glibc that use ssp to use this flag
when it's available.
This also kills off the indirection of hardcoding the flag name in the
Makefiles and adding it based on a have-ssp boolean. Instead, the build
always expands the $(stack-protector) variable to the best ssp setting.
This makes the build logic a bit simpler and allows people to easily set
to a diff flag like:
make stack-protector=-fstack-protector-all
When "reorder" resolver option is enabled, threads of a multi-threaded process
could hang in gethostbyaddr_r, gethostbyname_r, or gethostbyname2_r.
Due to a trivial bug in _res_hconf_reorder_addrs, simultaneous
invocations of this function in a multi-threaded process could result to
_res_hconf_reorder_addrs returning without releasing the lock it holds,
causing other threads to block indefinitely while waiting for the lock
that is not going to be released.
[BZ #17977]
* resolv/res_hconf.c (_res_hconf_reorder_addrs): Fix unlocking
when initializing interface list, based on the bug analysis
and the patch proposed by Eric Newton.
* resolv/tst-res_hconf_reorder.c: New test.
* resolv/Makefile [$(have-thread-library) = yes] (tests): Add
tst-res_hconf_reorder.
($(objpfx)tst-res_hconf_reorder): Depend on $(libdl)
and $(shared-thread-library).
(tst-res_hconf_reorder-ENV): New variable.
This patch systematically renames miscellaneous tests so their outputs
use a *.out name (unless the test is just running some glibc program
with its conventional output file name, rather than a special program
at all, as in catgets tests generating *.cat). In the case of the
iconv test test-iconvconfig, output is redirected where it wasn't
before.
In various places the "generated" variable is updated to reflect the
revised test names; in iconvdata/Makefile a typo (mmtrace-tst-loading)
is also fixed. resolv/Makefile sets both "generate" (which appears
unused) and "generated". Bitrot in the settings of these variables
could no doubt be fixed so that "make clean" after build and testing
leaves results the same as after configure (and indeed the
tests-special / xtests-special variables could be used to simplify
things, by removing those files automatically rather than listing them
manually in these variables), and "make distclean" leaves an empty
build directory, but right now it appears various files don't get
deleted. I think they are liable to continue to bitrot in the absence
of routine testing that these targets actually work, given that
building in the source directory isn't supported and that was the main
use of such makefile targets.
Tested x86_64.
* elf/Makefile (tests-special): Rename tests to end with .out.
($(objpfx)noload-mem): Likewise.
($(objpfx)tst-leaks1-mem): Likewise.
($(objpfx)tst-leaks1-static-mem.out): Likewise.
* iconv/Makefile (xtests-special): Change test-iconvconfig to
$(objpfx)test-iconvconfig.out.
(test-iconvconfig): Change to $(objpfx)test-iconvconfig.out. Use
set -e inside subshell and redirect output to file.
* iconvdata/Makefile (generated): Rename tests to end with .out.
Correct type.
(tests-special): Rename tests to end with .out.
($(objpfx)mtrace-tst-loading): Likewise.
* intl/Makefile (generated): Likewise.
(tests-special): Likewise.
($(objpfx)mtrace-tst-gettext): Likewise.
* misc/Makefile (generated): Likewise.
(tests-special): Likewise.
($(objpfx)tst-error1-mem): Likewise.
* nptl/Makefile (tests-special): Likewise.
($(objpfx)tst-stack3-mem): Likewise.
(generated): Likewise.
* posix/Makefile (generated): Likewise.
(tests-special): Likewise.
(xtests-special): Likewise.
($(objpfx)tst-fnmatch-mem): Likewise.
($(objpfx)bug-regex2-mem): Likewise.
($(objpfx)bug-regex14-mem): Likewise.
($(objpfx)bug-regex21-mem): Likewise.
($(objpfx)bug-regex31-mem): Likewise.
($(objpfx)tst-vfork3-mem): Likewise.
($(objpfx)tst-rxspencer-no-utf8-mem): Likewise.
($(objpfx)tst-pcre-mem): Likewise.
($(objpfx)tst-boost-mem): Likewise.
($(objpfx)bug-ga2-mem): Likewise.
($(objpfx)bug-glob2-mem): Likewise.
* resolv/Makefile (generate): Likewise.
(tests-special): Likewise.
(xtests-special): Likewise.
(generated): Likewise.
($(objpfx)mtrace-tst-leaks): Likewise.
($(objpfx)mtrace-tst-leaks2): Likewise.
localedata:
* Makefile (generated): Rename tests to end with .out.
(tests-special): Likewise.
($(objpfx)mtrace-tst-leaks): Likewise.
This patch is a revised and updated version of
<https://sourceware.org/ml/libc-alpha/2014-01/msg00196.html>.
In order to generate overall summaries of the results of all tests in
the glibc testsuite, we need to identify and concatenate the files
with the results of individual tests.
Tomas Dohnalek's patch used $(common-objpfx)*/*.test-result for this.
However, the normal glibc approach is explicit enumeration of the
expected set of files with a given property, rather than all files
matching some pattern like that. Furthermore, we would like to be
able to mark tests as UNRESOLVED if the file with their results is for
some reason missing, and in future we would like to be able to mark
tests as UNSUPPORTED if they are disabled for a particular
configuration (rather than simply having them missing from the list of
tests as at present). Such handling of tests that were not run or did
not record results requires an explicit enumeration of tests.
For the tests following the default makefile rules, $(tests) (and
$(xtests)) provides such an enumeration. Others, however, are added
directly as dependencies of the "tests" and "xtests" makefile
targets. This patch changes the makefiles to put them in variables
tests-special and xtests-special, with appropriate dependencies on the
tests listed there then being added centrally.
Those variables are used in Rules and so need to be set before Rules
is included in a subdirectory makefile, which is often earlier in the
makefile than the dependencies were present before. We previously
discussed the question of where to include Rules; see the question at
<https://sourceware.org/ml/libc-alpha/2012-11/msg00798.html>, and a
discussion in
<https://sourceware.org/ml/libc-alpha/2013-01/msg00337.html> of why
Rules is included early rather than late in subdirectory makefiles.
It was necessary to avoid an indirection through the check-abi target
and get the check-abi-* targets for individual libraries into the
tests-special variable. The intl/ test $(objpfx)tst-gettext.out,
previously built only because of dependencies from other tests, was
also added to tests-special for the same reason.
The entries in tests-special are the full makefile targets, complete
with $(objpfx) and .out. If a future change causes tests to be named
consistently with a .out suffix, this can be changed to include just
the path relative to $(objpfx), without .out.
Tested x86_64, including that the same set of files is generated in
the build directory by a build and testsuite run both before and after
the patch (except for changes to the
elf/tst-null-argv.debug.out.<number> file name), and a build with
run-built-tests=no to verify there aren't any more obvious instances
of the issue Marcus Shawcroft reported with a previous version in
<https://sourceware.org/ml/libc-alpha/2014-01/msg00462.html>.
* Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
(tests): Depend on $(tests-special).
* Makerules (check-abi-list): New variable.
(check-abi): Depend on $(check-abi-list).
[$(subdir) = elf] (tests-special): Add
$(objpfx)check-abi-libc.out.
[$(build-shared) = yes && subdir] (tests-special): Add
$(check-abi-list).
[$(build-shared) = yes && subdir] (tests): Do not depend on
check-abi.
* Rules (tests): Depend on $(tests-special).
(xtests): Depend on $(xtests-special).
* catgets/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
* conform/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
* elf/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
* grp/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
* iconv/Makefile (xtests): Change dependencies to ....
(xtests-special): ... additions to this variable.
* iconvdata/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
* intl/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable. Also add
$(objpfx)tst-gettext.out.
* io/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
* libio/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
* malloc/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
* misc/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
* nptl/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
* nptl_db/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
* posix/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
(xtests): Change dependencies to ....
(xtests-special): ... additions to this variable.
* resolv/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
(xtests): Change dependencies to ....
(xtests-special): ... additions to this variable.
* stdio-common/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
(do-tst-unbputc): Remove target.
(do-tst-printf): Likewise.
* stdlib/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
* string/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
* sysdeps/x86/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
localedata:
* Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
In <https://sourceware.org/ml/libc-alpha/2014-01/msg00196.html> I
noted it was necessary to add includes of Makeconfig early in various
subdirectory makefiles for the tests-special variable settings added
by that patch to be conditional on configuration information. No-one
commented on the general question there of whether Makeconfig should
always be included immediately after the definition of subdir.
This patch implements that early inclusion of Makeconfig in each
directory (which is a lot easier than consistent placement of includes
of Rules). Includes are added if needed, or moved up if already
present. Subdirectory "all:" targets are removed, since Makeconfig
provides one.
There is potential for further cleanups I haven't done. Rules and
Makerules have code such as
ifneq "$(findstring env,$(origin headers))" ""
headers :=
endif
to override to empty any value of various variables that came from the
environment. I think there is a case for Makeconfig setting all the
subdirectory variables (other than subdir) to empty to ensure no
outside value is going to take effect if a subdirectory fails to
define a variable. (A list of such variables, possibly out of date
and incomplete, is in manual/maint.texi.) Rules and Makerules would
give errors if Makeconfig hadn't already been included, instead of
including it themselves. The special code to override values coming
from the environment would then be obsolete and could be removed.
Tested x86_64, including that installed binaries are identical before
and after the patch.
* argp/Makefile: Include Makeconfig immediately after defining
subdir.
* assert/Makefile: Likewise.
* benchtests/Makefile: Likewise.
* catgets/Makefile: Likewise.
* conform/Makefile: Likewise.
* crypt/Makefile: Likewise.
* csu/Makefile: Likewise.
(all): Remove target.
* ctype/Makefile: Include Makeconfig immediately after defining
subdir.
* debug/Makefile: Likewise.
* dirent/Makefile: Likewise.
* dlfcn/Makefile: Likewise.
* gmon/Makefile: Likewise.
* gnulib/Makefile: Likewise.
* grp/Makefile: Likewise.
* gshadow/Makefile: Likewise.
* hesiod/Makefile: Likewise.
* hurd/Makefile: Likewise.
(all): Remove target.
* iconvdata/Makefile: Include Makeconfig immediately after
defining subdir.
* inet/Makefile: Likewise.
* intl/Makefile: Likewise.
* io/Makefile: Likewise.
* libio/Makefile: Likewise.
(all): Remove target.
* locale/Makefile: Include Makeconfig immediately after defining
subdir.
* login/Makefile: Likewise.
* mach/Makefile: Likewise.
(all): Remove target.
* malloc/Makefile: Include Makeconfig immediately after defining
subdir.
(all): Remove target.
* manual/Makefile: Include Makeconfig immediately after defining
subdir.
* math/Makefile: Likewise.
* misc/Makefile: Likewise.
* nis/Makefile: Likewise.
* nss/Makefile: Likewise.
* po/Makefile: Likewise.
(all): Remove target.
* posix/Makefile: Include Makeconfig immediately after defining
subdir.
* pwd/Makefile: Likewise.
* resolv/Makefile: Likewise.
* resource/Makefile: Likewise.
* rt/Makefile: Likewise.
* setjmp/Makefile: Likewise.
* shadow/Makefile: Likewise.
* signal/Makefile: Likewise.
* socket/Makefile: Likewise.
* soft-fp/Makefile: Likewise.
* stdio-common/Makefile: Likewise.
* stdlib/Makefile: Likewise.
* streams/Makefile: Likewise.
* string/Makefile: Likewise.
* sunrpc/Makefile: Likewise.
(all): Remove target.
* sysvipc/Makefile: Include Makeconfig immediately after defining
subdir.
* termios/Makefile: Likewise.
* time/Makefile: Likewise.
* timezone/Makefile: Likewise.
(all): Remove target.
* wcsmbs/Makefile: Include Makeconfig immediately after defining
subdir.
* wctype/Makefile: Likewise.
libidn/ChangeLog:
* Makefile: Include Makeconfig immediately after defining subdir.
localedata/ChangeLog:
* Makefile: Include Makeconfig immediately after defining subdir.
(all): Remove target.
nptl/ChangeLog:
* Makefile: Include Makeconfig immediately after defining subdir.
nptl_db/ChangeLog:
* Makefile: Include Makeconfig immediately after defining subdir.
* include/resolv.h: Remove hidden proto declarations for __ns_*
functions. Add them for __dn_count_labels and __p_secstodate.
* include/arpa/nameser.h: Add a number of hidden proto declarations.
Define ns_msg_getflags macro here.
* resolv/res_debug.c: Add hidden definition for __dn_count_labels
and __p_secstodate.
* resolv/Versions: Export functions from <arpa/nameser.h> from
libresolv in version GLIBC_2.9.
* resolv/ns_name.c: Integrate changes from bind 9.5.0. Add necessary
hidden definitions.
* resolv/ns_netint.c: Likewise.
* resolv/ns_parse.c: Likewise.
* resolv/ns_print.c: Likewise.
* resolv/ns_samedomain.c: Likewise.
* resolv/ns_ttl.c: Likewise.
* resolv/arpa/nameser_compat.h: Likewise.
* resolv/arpa/nameser.h: Likewise. Remove macros which redirect
function calls.
* resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Use __ns_get16
instead of ns_get16.
* resolv/nss_dns/dns-host.c (getanswer_r): Use __ns_get16 and
__ns_get32 instead of ns_get16 and ns_get32 respectively.
(gaih_getanswer_slice): Likewise.
* resolv/Makefile (libresolv-routines): Add ns_date.
* resolv/ns_date.c: New file.
2007-04-30 Jakub Jelinek <jakub@redhat.com>
[BZ #4439]
* resolv/inet_ntop.c (inet_ntop4): Take terminating '\0' into
account in the size check.
* resolv/tst-inet_ntop.c: New test.
* resolv/Makefile (tests): Add tst-inet_ntop.
* sysdeps/posix/getaddrinfo.c (gaih_addrtuple): Change type of
addr to avoid casts.
(gethosts): Removed.
(gethosts2): Renamed to gethosts. Make it usable for family !=
AF_UNSPEC. Fix AI_V4MAPPED.
(gaih_inet): Remove use of old gethosts. Always use what used to be
gethosts2. If entry is found, try to use the same NSS module's
getcanonname_r function. Use gethostbyaddr for AI_CANONNAME only
if getcanonname_r was not available. Fix filtering of AI_V4MAPPED
addresses. Numerous cleanups.
* resolv/nss_dns/dns-canon.c: New file.
* resolv/Makefile (libnss_dns-routines): Add dns-canon.
* resolv/Versions (libnss_dns): Add _nss_dns_getcanonname_r.
* elf/Makefile: Add rules to build and run tst-dlopenrpath.
* elf/tst-dlopenrpath.c: New file.
* elf/tst-dlopenrpathmod.c: New file.
* intl/tst-gettext.sh: Adjust for change of de.po file to UTF-8.
2004-07-21 Jakub Jelinek <jakub@redhat.com>
* resolv/res_libc.c (res_init): If RES_INIT is set and
_res.nscount > 0, call __res_nclose and free nsaddrs.
* resolv/Makefile: Add rules to build and run tst-leaks2.
* resolv/tst-leaks2.c: New test.
* resolv/tst-leaks.c: New file by Daniel Jacobowitz <drow@mvista.com>.
* resolv/Makefile (tests): Add tst-leaks.
($(objpfx)tst-leaks): Depend on $(objpfx)libresolv.so.
(tst-leaks-ENV): New variable.
($(objpfx)mtrace-tst-leaks): New target.
(tests): Depend on it.
2001-07-06 Paul Eggert <eggert@twinsun.com>
* manual/argp.texi: Remove ignored LGPL copyright notice; it's
not appropriate for documentation anyway.
* manual/libc-texinfo.sh: "Library General Public License" ->
"Lesser General Public License".
2001-07-06 Andreas Jaeger <aj@suse.de>
* All files under GPL/LGPL version 2: Place under LGPL version
2.1.
2001-03-06 Jakub Jelinek <jakub@redhat.com>
* resolv/Depend: New file.
* resolv/Makefile (extra-libs, tests): Build libanl and ga_test only
when libpthread is built.
* Versions.def: Add libanl definition.
* shlig-versions: Add entry for libanl.
* resolv/Makefile (distribute): Add gai_misc.h and ga_test.c.
(routines): Add gai_sigqueue.
(extra-libs): Add libanl.
(libanl-routines): New variable.
Add rules to build libanl and ga_test.
* resolv/Versions [libc] (GLIBC_2.2.3): Add __gai_sigqueue.
[libanl]: New library.
* resolv/netdb.h: Add definitions for libanl.
* resolv/getaddrinfo_a.c: New file.
* resolv/gai_cancel.c: New file.
* resolv/gai_error.c: New file.
* resolv/gai_misc.c: New file.
* resolv/gai_misc.h: New file.
* resolv/gai_notify.c: New file.
* resolv/gai_suspend.c: New file.
* resolv/ga_test.c: New file.
* sysdeps/generic/gai_sigqueue.c: New file.
* sysdeps/unix/sysv/linux/gai_sigqueue.c: New file.
* sysdeps/generic/bits/siginfo.h: Allow __need_sigevent_t being defined
and provide only that definition.
* sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: Likewise.
* sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
* sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
* sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/bits/siginfo.h: Likewise.
* rt/aio_misc.c: Fix typos in comments.
* rt/lio_listio.c: Pretty printing. Little optimization in request
list handling.
* elf/rtld.c: Remove commented out code.
here, before we might move the stack.
(posixland_init): Set __libc_argc, __libc_argc, and __environ here.
(init1): And not here.
* sysdeps/i386/dl-machine.h (RTLD_START): Fix code broken by last
change, to restore argc value in call-clobbered register after
RTLD_START_SPECIAL_INIT, which will contain a call.
* elf/dl-deps.c (_dl_map_object_deps): Fix size calculations for
allocating and initializing L->l_initfini.
* resolv/Makefile (headers): Add bits/netdb.h, so it gets installed.
1999-12-13 Andreas Jaeger <aj@suse.de>
* resolv/resolv.h: Remove K&R compatibility.
* resolv/res_libc.c: Move definition of _res after res_init,
res_init should use the threaded specific context.
* resolv/Makefile (+cflags): Remove -Wno-comment since it's not
needed anymore.
* locale/langinfo.h: Add constants for wide character collation data.
* locale/categories.def: Add appropriate entries for collate entries.
* locale/C-collate.c: Add initializers for new entries.
* locale/programs/ld-collate.c: Implement output of wide character
tables.
* locale/programs/ld-ctype.c (allocate_arrays): Change algorithm to
compute wide character table size a bit: it now gives up a bit of
total table size for fewer levels.
1999-12-03 Andreas Jaeger <aj@suse.de>
* nss/getXXbyYY.c: Include <resolv.h>
(FUNCTION_NAME): Use res_ninit instead of res_init.
* nss/getXXbyYY_r.c [NEED__RES]: Include <resolv.h> for _res
declaration and prototypes.
Remove extra _res declaration.
(INTERNAL): Use thread aware res_ninit function.
* inet/gethstbyad_r.c: Include <resolv.h>.
* resolv/res_data.c: Update from Bind 8.2.2-P5. Moved res_init to
res_libc.c. Disabled unneeded functions.
* resolv/res_libc.c: New file.
* Versions.def: Add version GLIBC_2.2 for libpthread.
Add versions GLIBC_2.1 and GLIBC_2.2 for libresolv.
* include/resolv.h: Add internal interfaces.
* resolv/Makefile (routines): Add new files.
(libresolv-routines): Likewise.
(distribute): Likewise.
* resolv/gethnamaddr.c: Use thread safe resolver functions.
* resolv/nss_dns/dns-host.c: Likewise.
* resolv/nss_dns/dns-network.c: Likewise.
* resolv/arpa/nameser.h: Update from Bind 8.2.2-P5.
* resolv/nsap_addr.c: Likewise.
* resolv/res_comp.c: Likewise.
* resolv/res_debug.c: Likewise.
* resolv/res_init.c: Likewise.
* resolv/res_mkquery.c: Likewise.
* resolv/res_query.c: Likewise.
* resolv/res_send.c: Likewise.
* resolv/resolv.h: Likewise.
* resolv/Versions: Add __res_state and __res_ninit with version
GLIBC_2.2 to libc.
Add new interfaces with version GLIBC_2.2 to libresolv.
* resolv/Banner: Update.
* include/arpa/nameser_compat.h: New file.
* resolv/ns_name.c: New file from Bind 8.2.2-P5.
* resolv/ns_netint.c: Likewise.
* resolv/ns_parse.c: Likewise.
* resolv/ns_print.c: Likewise.
* resolv/ns_samedomain.c: Likewise.
* resolv/ns_ttl.c: Likewise.
* resolv/arpa/nameser_compat.h: Likewise.
* resolv/res_debug.h: Likewise.
Some patches are based on work done by Adam D. Bradley
<artdodge@cs.bu.edu>.
* sysdeps/unix/sysv/linux/configure.in: Remove check for ldconfig,
set always use_ldconfig instead.
1998-11-20 Ulrich Drepper <drepper@cygnus.com>
* aclocal.m4 (LIBC_PROG_BINUTILS): Also add AR and RANLIB using the
same method.
* configure.in: Don't define AR and RANLIB here.
* inet/gethstbyad_r.c: Define NEED__RES_HCONV and POSTPROCESS for
host name res_hconf code.
* inet/gethstbynm_r.c: Likewise.
* nss/getXXbyYY_r.c: Include resolv/res_hconf.h if NEED__RES_HCONF
is defined. Call res_hconf_init if necessary. If POSTPROCESS is
defined execute the code.
* resolv/Makefile (routines): Add res_hconf.
(headers): Add res_hconf.h.
* resolv/res_hconf.c: Pretty print.
* resolv/res_hconf.h: Likewise.
1998-11-20 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/generic/bits/byteswap.h: Fix typos in non-GCC
definitions. Reported by Scott Bambrough <scottb@corelcomputer.com>.
1998-11-20 1998 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* math/libm-test.c: Raise some epsilons a bit.
1998-11-20 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* Makeconfig ($(common-objpfx)sysd-sorted): Fix portability problems.
1998-11-20 Ulrich Drepper <drepper@cygnus.com>
* Makefile (distribute): Add scripts/gen-sorted.awk.
1998-05-15 14:36 Ulrich Drepper <drepper@cygnus.com>
* posix/wordexp-test.c: Avoid duplicate messages.
* sysdeps/generic/setenv.c: Use __tfind and __tsearch, not tfind and
tsearch. Correctly interpret values returned by those functions.
(unsetenv): Store pointer to string, not pointer to string pointer.
* time/tzfile.c (__tzfile_compute): Take new arguments. Store
DST information and offset in them.
* time/tzset.c (__tz_convert): Pass extra parameters to
__tzfile_compute. Compute equivalent values for use of tz_rules.
1998-05-15 00:49:11 Zack Weinberg <zack@rabi.phys.columbia.edu>
* iconvdata/Makefile (gen-8bit-table): Use move-if-change and
stamp files to avoid unnecessary recompilation.
(gen-8bit-gap-table): Likewise.
(move-if-change): New variable.
(all generated .h rules): Change to be .stmp rules.
(%.h): New rule; depend on %.stmp; no commands.
(distribute): Add gen-8bit.sh, gen-8bit-gap.sh,
gen-8bit-gap-1.sh.
1998-05-15 01:09 Zack Weinberg <zack@rabi.phys.columbia.edu>
* Makerules (libc-map): Deleted.
(load-map-file): Set to the appropriate compiler switch, not
just the file name. If libfoo-map is not set, look for a
libfoo.map in the current directory and $(..).
(map-file): New variable, contains just the mapfile name.
(build-shlib): Adjust for new value of load-map-file.
(libc.so): Correct dependencies.
* extra-lib.mk: Correct shlib dependencies since libfoo-map
may not be set anymore.
* elf/Makefile: Set ld-map to $(..)libc.map, not $(libc-map).
Delete libdl-map. Tweak ld.so link rule to work with changed
variable settings in Makerules.
* iconvdata/Makefile: Tweak build-module to work with changed
variable settings in Makerules.
* db/Makefile: Delete libdb-map.
* hesiod/Makefile: Delete libnss_hesiod-map.
* linuxthreads/Makefile: Delete libpthread-map.
* locale/Makefile: Delete libBrokenLocale-map.
* login/Makefile: Delete libutil-map.
* math/Makefile: Delete libm-map.
* md5-crypt/Makefile: Delete libcrypt-map.
* nis/Makefile: Delete libnsl-map, libnss_nis-map,
libnss_nisplus-map, and libnss_compat-map.
* nss/Makefile: Delete libnss_files-map, libnss_db-map, and
libnss_ldap-map.
* resolv/Makefile: Delete libresolv-map and libnss_dns-map.
* rt/Makefile: Delete librt-map.
1998-05-15 01:06 Zack Weinberg <zack@rabi.phys.columbia.edu>
* configure.in: Instead of substituting `yes' or `no' for whether
--no-whole-archive is available, set @no_whole_archive@ to the
appropriate gcc switch or the empty string. Likewise for
-fno-exceptions.
* config.make.in: Replace have-no-whole-archive with
no-whole-archive and have-no-exceptions with no-exceptions.
* Makerules: Delete stanzas setting no-whole-archive and
no-exceptions.
* sunrpc/Makefile: Use move-if-change to update generated .h
and .c files.
1998-05-13 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* wcsmbs/wcsmbsload.c (extract_charset_name): Use strcspn instead
of strchr loop.
1998-05-15 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* time/tzfile.c (__tzfile_read): Remove unused variable info.
(__tzfile_compute): Likewise.
1998-05-15 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/unix/sysv/linux/bits/socket.h (AF_SNA,PF_SNA): Add new
defines from Linux 2.1.102.
1998-04-04 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* resolv/Makefile: Include ../Makeconfig - needed for building
static NSS module.
1998-04-04 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* hesiod/Makefile (libnss_hesiod-inhibit-o): Remove condition for
static-nss since we don't want hesiod in the static NSS.
* nss/Makefile: Build only nss_files as static.
* nss/function.def: Remove support for service db.
1998-04-04 09:44 H.J. Lu <hjl@gnu.org>
* Makeconfig (CPPFLAGS-.oS): Add -DPIC.
1998-04-04 18:29 Tim Waugh <tim@cyberelk.demon.co.uk>
* posix/wordexp-test.c: Make IFS per test-case.
<1997-06-12 21:22 Ulrich Drepper <drepper@cygnus.com>
* Makefile (libc-map): Define before including Makerules.
* Makerules (lib%.so): Depend on $(lib%-map).
(build-shlib): Adapt rule for above change.
(libc.so): Depend on $(libc-map).
* db/Makefile (libcdb-map): New definition.
* elf/Makefile (libdl-map): New definition.
* elf/dl-lookup.c: Don't use relative include path.
(undefined_msg): New variable. Use single string in all functions.
(do_lookup): Correctly recognize default version.
Return -2 if no version information is available.
Stop processing hash entries when string was found.
Don't bark about missing versioned symbol in file with original
reference if it is a weak symbol.
(_dl_lookup_symbol): Use undefined_msg.
(_dl_lookup_versioned_symbol): Likewise.
Give extra information if no verdef info is available.
* elf/dl-version.c (file_needed): Remove first argument. We must
seek in the whole search list.
(match_symbol): Correct check for available verdef info.
(_dl_check_map_versions): Correct call of find_needed.
* locale/Makefile (libBrokenLocale-map): New definition.
* login/Makefile (libutil-map): New definition.
* math/Makefile (libm-map): New definition.
* md5-crypt/Makefile (libcrypt-map): New definition.
* nis/Makefile (libnsl-map, libnss_compat-map, libnss_nis-map,
libnss_nisplus-map): New definition.
* nss/Makefile (libnss_files-map, libnss_db-map): New definitions.
* resolv/Makefile (libresolv-map, libnss_dns-map): New definitions.
* libc.map: New file.
* db/libdb.map: New file.
* elf/libdl.map: New file.
* locale/libBrokenLocale.map: New file.
* login/libutil.map: New file.
* math/libm.map: New file.
* md5-crypt/libcrypt.map: New file.
* nis/libnss_compat.map: New file.
* nis/libnsl.map: New file.
* nis/libnss_nis.map: New file.
* nis/libnss_nisplus.map: New file.
* nss/libnss_files.map: New file.
* nss/libnss_db.map: New file.
* resolv/libnss_dns.map: New file.
* resolv/libresolv.map: New file.
* sysdeps/i386/dl-machine.h (elf_machine_rel): Don't do anything
for R_386_NONE entries.
* Makefile (manual/dir-add.info): New rule.
* Makerules: Add vpath definition for .x files.
* Makerules (distinfo): Make sure target directory exists.
* argp/argp-help.c (argp_args_usage): Don't modify `fdoc' value
since it is used to distinguish filtered strings from unmodifed
strings.
* elf/dl-lookup.c (do_lookup): Optimize STT_* recognition.
* elf/dl-reloc.c: Fix typo.
* inet/arpa/tftp.h (struct tftphdr): Change type of tu_block to
`unsigned short'.
* manual/Makefile (dir-add.texi): Also emit wrapper text for
info/install-info.
(distribute): Add dir-add.texi and dir-add.info.
(mostlyclean): Add dir-add.info.
(realclean): Add dir-add.texi.
(install): Add entries in `dir' file using install-info.
* manual/libc.texinfo: Add @dircategory and @direntry text.
Reported by Miles Bader <miles@gnu.ai.mit.edu>.
* manual/pattern.texi: Correct description of GLOB_MAGCHAR and
GLOB_NOMAGIC. Changes by Roland McGrath <roland@gnu.ai.mit.edu>.
* nis/nis_addmember.c: Little optimizations.
* nis/nis_call.c: Likewise.
* nis/nis_creategroup.c: Likewise.
* nis/nis_defaults.c: Likewise.
* nis/nis_destroygroup.c: Likewise.
* nis/nis_ismember.c: Likewise.
* nis/nis_local_names.c: Likewise.
* nis/nis_print_group_entry.c: Likewise.
* nis/nis_verifygroup.c: Likewise.
* posix/unistd.h: Fix comment for getcwd.
* stdlib/Makefile (headers): Remove inttypes.h. It's a system
dependent header.
* sysdeps/wordsize-32/Dist: New file.
* sysdeps/wordsize-32/Makefile: New file.
* sysdeps/wordsize-64/Dist: New file.
* sysdeps/wordsize-64/Makefile: New file.
* sunrpc/Makefile: Adopt comment for real situation.
* sysdeps/i386/add_n.S: Add ASM_TYPE_DIRECTIVE and AS_SIZE_DIRECTIVE.
* sysdeps/i386/addmul_1.s: Likewise.
* sysdeps/i386/lshist.s: Likewise.
* sysdeps/i386/rshift.s: Likewise.
* sysdeps/i386/sub_n.s: Likewise.
* sysdeps/i386/submul_1.s: Likewise.
* sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER):
Add .type and .size.
1997-06-12 13:32 Philip Blundell <Philip.Blundell@pobox.com>
* libc/sysdeps/unix/arm/brk.S: New file.
* libc/sysdeps/unix/arm/sysdep.S: Likewise.
* libc/sysdeps/unix/sysv/linux/arm/sysdep.S: Likewise.
1997-06-11 11:51 Thorsten Kukuk <kukuk@vt.uni-paderborn.de>
* nis/nss_nisplus/nisplus-spwd.c (_nss_nisplus_parse_spent):
Check if we have shadow information.
1997-06-08 19:33 Thorsten Kukuk <kukuk@vt.uni-paderborn.de>
* nis/nis_getservlist.c (nis_getservlist): Use calloc instead of
malloc, alloc memory for nis_server struct.
* nis/nis_getservlist.c (nis_freeservlist): Give the memory for
the nis_server struct free, too.
* nis/nis_removemember (nis_removemember): Fix for loop.
1997-06-12 12:45 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/i386/fpu/__math.h (__M_SQRT2): Define here since we
cannot rely on M_SQRT2 being defined. (log1p): Use __M_SQRT2 not
M_SQRT2.
* math/math.h (_Mldbl): Define even if M_* constants are not
defined.
Reported by corsepiu@faw.uni-ulm.de.
1997-06-12 03:08 Philip Blundell <Philip.Blundell@pobox.com>
* nss/getXXbyYY_r.c (do_weak_alias): Remove extra parentheses.
1997-06-11 13:22 Ulrich Drepper <drepper@cygnus.com>
* misc/regexp.h (compile): Allow use of macro INIT for variable
declaration. Add documentation for INIT.
Reported by Robert Bihlmeyer <robbe@orcus.priv.at>.
1997-06-11 10:47 Philip Blundell <Philip.Blundell@pobox.com>
* sysdeps/unix/sysv/linux/net/if_arp.h: Add two new hardware types.
1997-06-10 11:31 H.J. Lu <hjl@gnu.ai.mit.edu>
* sysdeps/powerpc/strlen.s: Use -0x101 instead of 0xfffffeff
for a signed 16-bit value.
1997-06-07 07:54 H.J. Lu <hjl@gnu.ai.mit.edu>
* sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c
(_dl_sysdep_read_whole_file): Deleted.
* sysdeps/powerpc/fenvbits.h (__FE_ALL_INVALID): Changed
to FE_ALL_INVALID.
* sysdeps/powerpc/fraiseexcpt.c (__FE_INVALID_SOFTWARE):
Changed to FE_INVALID_SOFTWARE.
(__FPSCR_STICKY_BITS): Changed to FPSCR_STICKY_BITS.
* sysdeps/libm-ieee754/s_fmin.c: Fix a typo.
1997-06-07 18:48 H.J. Lu <hjl@gnu.ai.mit.edu>
* shlib-versions (.*-.*-linux.*): Set libc to 6.
1997-06-08 15:35 Thorsten Kukuk <kukuk@vt.uni-paderborn.de>
* nis/nis_add.c (nis_add): Use nis_leaf_of_r instead of nis_name_of_r.
* nis/nis_addmember.c (nis_addmember): Fix a lot of pointer errors.
* nis/nis_clone.c: Likewise.
* nis/nis_removemember.c (nis_removemember): Likewise.
* nis/nis_table.c: Likewise.
* nis/nss_nis/nis-hosts.c: Use addr, not p for inet_pton call.
* nis/nss_nisplus/nisplus-hosts.c: Likewise.
* nis/nss_nis/nis-netgrp.c (_nss_nis_setnetgrent): Check for
group == NULL.
1997-06-08 21:21 Mark Kettenis <kettenis@phys.uva.nl>
* login/login.c, login/utmp_daemon.c, login/utmp_file.c,
login/getutent_r.c, login/utmpname.c: Cleanup `#if _LIBC' and
`#ifndef _LIBC' fragments.
* login/programs/utmpd.c: Define DEFAULT_USER.
(drop_priviliges): Use it.
(main): Set locale and text domain.
* login/programs/utmpd-private.h: Declare proc_utmp_eq.
* login/programs/database.c (proc_utmp_eq): Removed.
* login/programs/request.c (proc_utmp_eq): Made global. Only use
ut_id field if valid.
* login/utmp_file.c (proc_utmp_eq): Restore patch made by Miles
Bader that was lost when adding the daemon backend; Only use ut_id
field if valid.
1997-06-05 23:10 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/Dist: Remove netatalk/atalk.h and
netinet/icmp.h, add netatalk/at.h.
* sysdeps/unix/sysv/linux/powerpc/Dist: Remove termios.h.
* sysdeps/unix/sysv/linux/sparc/Dist: Remove start.c.
1997-06-04 19:22 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* stdlib/testsort.c (compare): Fix parameter types.
1997-06-04 19:05 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* md5-crypt/Makefile (distribute): Fix name of file.
1997-06-04 19:02 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* login/Makefile (utmpd-routines): Remove utmpd again, which is
already added implicitly through $(others).
1997-06-05 13:43 Fila Kolodny <fila@filapc.ibi.com>
* sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add netipx/ipx.h.
1997-06-05 13:25 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* md5-crypt/md5-crypt.c: Add prototype for __md5_crypt.
1997-06-05 17:08 Ulrich Drepper <drepper@cygnus.com>
* string/argz-addsep.c: Correct weak alias.
Reported by Ben Pfaff <pfaffben@pilot.msu.edu>.
* locale/setlocale.c (setlocale): Free variable with locale path
before returning.
(setname): Don't test for _nl_current[category] being NULL before
freeing.
Reported by Ben Pfaff <pfaffben@pilot.msu.edu>.
1997-06-04 12:41 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* manual/intro.texi (XPG): Correct some typos.
* manual/libc.texinfo (Program Arguments): Menu updated.
* nis/nis_local_names.c (nis_local_host): Fix pointer errors.
1997-05-21 17:50 Ulrich Drepper <drepper@cygnus.com>
* elf/Makefile (dl-routines): Add dl-sysdepio.
* elf/dl-support.c (_dl_sysdep_fatal): Removed.
* sysdeps/generic/dl-sysdep.c: Move definition of _dl_sysdep_fatal,
_dl_sysdep_error and _dl_sysdep_warning to ...
* sysdeps/generic/dl-sysdepio.c: ...here.
* sysdeps/mach/hurd/dl-sysdep.c: Move the functions to ...
* sysdeps/mach/hurd/dl-sysdepio.c: ...here.
* sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c: Remove definition
of functions.
Bug reported by Marcus G. Daniels <marcus@cathcart.sysc.pdx.edu>.
* db/Makefile (libdb.so): Depend on libc.so for dynamic loading
and for Linux ld.so.
* login/Makefile (libutil.so): Likewise.
* math/Makefile (libm.so): Likewise.
* md5-crypt/Makefile (libcrypt.so): Likewise.
* nis/Makefile (libnss_%.so): Likewise.
* resolv/Makefile (libnss_dns.so): Likewise.
1997-05-20 14:01 Miles Bader <miles@gnu.ai.mit.edu>
* argp-help.c (_help): Supply STATE to argp_args_usage.
(argp_args_usage): Add filtering of the args doc string.
(comma): Print cluster headers for the first entry too.
* argp.h (ARGP_KEY_HELP_ARGS_DOC): New macro.
Patches by Jean-Franois Bignolles <bignolle@ecoledoc.ibp.fr>.
Include <config.h> if HAVE_CONFIG_H is defined.
* sunrpc/xdr_float.c: Likewise.