Sat Sep 7 18:41:17 1996 Richard Henderson <rth@tamu.edu>
* Makeconfig (+link): Filter out start, pre & postinit from the
generic depenancies as well.
* Rules: Add start, pre & postinit to the dependancies of
$(others) and $(tests).
* configure.in: elf_dirs missing "sysdeps" component.
* locale/Makefile (distribute): Add locale.c and localedef.c.
Sun Sep 8 02:36:02 1996 Ulrich Drepper <drepper@cygnus.com>
* locale/SYS_libc.c (_libc_intl_domainname): Change value to "libc".
This is consistent with all other GNU packages. We shouldn't
take care for a possible clash. Somebody will name the domain
of a package libc if it is not the libc itself.
* MakeTAGS ($P/SYS_libc.pot): Rename to $P/libc.pot.
* po/Makefile (domainname): Change to libc.
(distribute): Now ship libc.pot.
* catgets/gencat.c (usage): Use `PACKAGE' for package name in
version information banner.
Change bug report address to bug-glibc@prep not @gnu.
* db/makedb.c (PACKAGE): New macro. Set to _libc_intl_domain.
(main): Use `PACKAGE' for package name in version information
banner.
Change bug report address to bug-glibc@prep not @gnu.
* locale/programs/locale.c (main): Use `PACKAGE' for package name
in version information banner.
Change bug report address to bug-glibc@prep not @gnu.
* locale/programs/localedef.c (main): Likewise.
* version.h (VERSION): Bump to 1.94.
* libio/iofdopen: Initialize _lock field only if _IO_MTSAFE_IO.
Sat Sep 7 14:00:33 1996 David Mosberger-Tang <davidm@azstarnet.com>
* catgets/catgets.c (catopen): Allocate sizeof(*result) bytes
instead of sizeof(nl_catd) (which is just a pointer!).
Sat Sep 7 19:39:19 1996 Ulrich Drepper <drepper@cygnus.com>
* Makefile ($(objpfx)version-info.h): Generate from Banner files.
* version.c (banner): Add contents of version-info.h to string.
* Makerules: If $($(subdir)-version) is available name versioned
shared library according to this value instead of glibc's version.
* libio/Banner: New file.
* elf/eval.c (funcall): Write error message in case function is
not found.
(eval): Recognize `_' in names.
Thu Sep 5 03:20:42 1996 Ulrich Drepper <drepper@cygnus.com>
Change configuration and Makefiles to allow add-ons to have a
sysdeps/ directory hierachy.
* configure.in: Test for sysdeps/ directory in add-ons. Before
all test and searches in these hierachies, too.
* Makeconfig (full-config-subdirs): Define based on $(config-sysdirs).
Extend with $(..) if not absolute path.
Use $(full-config-subdirs) where $(config-sysdirs) was used.
* Makefile ($(objpfx)sysd-dirs): Use config-sysdirs.
* MakeTAGS: Use $(full-config-subdirs).
* Makerules: Change comment to libc.so link script.
(sysdirs): Define based on $(full-config-subdirs).
(sysd-Makefile): Define using config-sysdirs.
(sysd-rules): Likewise.
* sysdeps/unix/Makefile (sysd-syscalls): Define based on +sysdep-dirs.
* sysdeps/unix/make-syscalls.sh: Remove basedir argument.
Wed Sep 4 01:32:21 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/m68k/fpu/k_cos.c: Rewritten for better accuracy.
* sysdeps/m68k/fpu/k_sin.c: Likewise.
* sysdeps/m68k/fpu/k_tan.c: Likewise.
Thu Sep 5 01:06:09 1996 Richard Henderson <rth@tamu.edu>
* malloc/free.c (free): Protect by using __libc_malloc_lock.
* malloc/malloc-find.c (malloc_find_object_address): Likewise.
* malloc/malloc-size.c (malloc_usable_size): Likewise.
* malloc/malloc-walk.c (malloc_walk): Likewise.
* malloc/memalign.c (memalign): Likewise.
* malloc/realloc.c (realloc): Likewise.
* malloc/malloc.c: Define __libc_malloc_lock.
(_malloc_internal): Don't use `malloc'. Instead look for
`__malloc_hook' or call `_malloc_internal'.
(malloc): Protect by using `__libc_malloc_lock'.
* malloc/malloc.h: Declare `__libc_malloc_lock'.
Mon Sep 2 22:42:59 1996 Richard Henderson <rth@tamu.edu>
* sysdeps/alpha/elf/start.S: Use weak_alias for __start
instead of the hard definition.
* sysdeps/alpha/dl-machine.h (RTLD_START): Add type info for
_start and _dl_start_user.
* sysdeps/unix/sysv/linux/alpha/init-first.h (SYSDEP_CALL_INIT):
Make _dl_starting_up weak. Add type info for NAME.
Mon Sep 2 22:15:14 1996 Richard Henderson <rth@tamu.edu>
* Makefile (all): Add extra_solibs pass.
(+subdir_targets): Same.
* Rules (extra_solibs): New phony empty target for subdirs without
extra libs.
* extra-lib.mk: Build lib*.so* in extra_solibs not lib-noranlib.
* manual/Makefile: Add dummy extra_solibs target.
Sun Sep 1 15:41:22 1996 Richard Henderson <rth@tamu.edu>
* Makeconfig (+link): Add $(link-extra-libs).
(link-extra-libs): New variable which expands to the full paths of
the other libraries needed by a program, as controled by LDLIBS-$(@F).
* db/Makefile: Use LDLIBS-makedb to link libdb not a dependency, as
the later attempts to install the library before linking it.
* sysdeps/unix/alpha/sysdep.S: Align errno.
* sysdeps/unix/sysv/linux/alpha/ioperm.c (struct platform): Add
hae_shift entry.
(io): Move bus_memory_base and sparse_bus_memory_base into struct.
(_hae_shift): New function.
* sysdeps/unix/sysv/linux/alpha/sys/io.h: New file. Prototypes
for the bus query functions.
Sat Aug 31 18:14:54 1996 Richard Henderson <rth@tamu.edu>
* elf/dl-close.c (_dl_close): In static executables, map->l_prev
can be NULL when unloading a library.
* elf/dl-open.c (_dl_open): Pass __environ instead of __libc_envp
to the library .init function.
* sysdeps/alpha/dl-machine.h (elf_machine_rela): Since we omitted
part of the COPY reloc processing earlier, omit the rest now --
we'll get into less trouble later when some fool does use a COPY.
* sysdeps/unix/sysv/linux/init-first.c (init): Accept argc et al as
parameters. Move all argc and __libc_multiple_libcs calculation out
to init-first.h. Use __environ not __libc_envp.
* sysdeps/unix/sysv/linux/alpha/init-first.h: Rewrite.
* sysdeps/unix/sysv/linux/i386/init-first.h: Rewrite.
Thu Aug 29 20:26:40 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/posix/profil.c (profil): Don't clobber saved timer and
signal settings when profiling was already turned on.
* csu/gmon-start.c (__gmon_start__) [HAVE_INITFINI]: Protect from
being called twice.
Wed Sep 4 01:31:50 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/i386/mmap.S: Test for
0 < return value < -4096 and not < 0 to decide about failure.
Reported by Andreas Jaeger.
Tue Sep 3 19:04:05 1996 Ulrich Drepper <drepper@cygnus.com>
* stdio-common/vfscanf.c (__vfscanf): Don't count EOF char
in %c format.
Sat Aug 31 18:10:51 1996 Ulrich Drepper <drepper@cygnus.com>
* wcsmbs/wchar.h: Define prototypes for wcstoq and wcstouq only
#ifdef __USE_GNU.
Sat Aug 31 12:34:29 1996 Ulrich Drepper <drepper@cygnus.com>
* version.c: Add missing newline character in banner.
* sysdeps/unix/sysv/linux/alpha/Dist: Correct typo.
* sysdeps/unix/sysv/linux/i386/Dist: Likewise.
Sat Aug 31 03:07:39 1996 Ulrich Drepper <drepper@cygnus.com>
* intl/l10nflist.c (_nl_normalize_codeset): We convert to lower
case, so don't prepend uppercase `ISO' for only numeric arg.
actually center.
(\unnchfplain): Just call \chfplain.
(\chfplain): Rewrite to be generally callable.
(\centerparametersmaybe): Hook, a no-op except with @centerchap.
Fri Aug 30 19:55:27 1996 Ulrich Drepper <drepper@cygnus.com>
* libio/genops.c: Make _cleanup an alias of _IO_cleanup.
Reported by Erik Troan.
Fri Aug 30 15:40:04 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/Dist: Add sys/procfs.h and
sys/sysmacros.h. Reported by Curtiss <1CMC3466@IBM.MTSAC.EDU>.
Fri Aug 30 13:53:32 1996 Andreas Jaeger <aj@arthur.pfalz.de>
* sysdeps/unix/mman/syscalls.list: `mmap' has 6 arguments, not 5.
Fri Aug 30 13:01:10 1996 NIIBE Yutaka <gniibe@mri.co.jp>
* sysdeps/i386/fpu/__math.h (tan): Pop 1.0 in ST to get
real result.
Fri Aug 30 03:33:33 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/libm-ieee754/s_cbrtl.c: New file. `long double'
implementation.
* sysdeps/unix/sysv/linux/i386/Dist: Add clone.S.
Fri Aug 30 13:39:21 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* Makerules (BUILD_CFLAGS): Use @(common-objpfx) for config.h, not
$(..). Some rules (like sysdeps/posix/Makefile for mk-stdiolim)
do `cd' commands.
(sed-remove-objpfx): Don't substitute for $(objpfx) anymore;
$(common-objpfx) is good enough.
* Rules (common-generated): Provide default (empty) value.
(dummy.o, dummy.c, empty.o, empty.c): Put these in
$(common-generated), not $(generated), and without $(..).
(subdir_echo-distinfo): Treat $(common-generated) just like
$(generated).
(generated): Depend on the (suitably mutated) $(common-generated)
files too.
* Makerules (common-clean): Remove common-generated files too.
* sysdeps/mach/hurd/Makefile (generated): Don't put errnos.d and
stamp-errnos here.
(common-generated): Do put errnos.d and stamp-errnos here.
(rpath-link): Don't use +=; $(rpath-link) is a colon separated list.
* sysdeps/mach/hurd/Makefile (before-compile): Add auth; also add
auth to following rule to get it built.
$(common-objpfx). All uses in dependency lists changed.
Fri Aug 30 01:26:44 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/i386/Dist: Add close.S.
* sysdeps/unix/sysv/linux/m68k/Dist: Likewise.
* sysdeps/unix/sysv/linux/alpha/Dist: Likewise.
* version.c: Add comment about where to report bugs to.
* catgets/gencat.c (usage): Likewise.
* db/makedb.c (usage): Likewise.
* locale/programs/locale.c (usage): Likewise.
* locale/programs/localedef.c (usage): Likewise.
* manual/socket.texi: A little bit better wording.
Thu Aug 29 18:03:06 1996 Ulrich Drepper <drepper@cygnus.com>
* Makerules: Make sure directory exists before generating stamp file.
(BUILD_CFLAGS): Always refer to using $(..).
* manual/Makefile: Make sure directory exists before generating
stamp file.
(make-target-directory): Add macro definition.
* sysdeps/generic/Makefile: Make sure directory exists before
generating stamp file.
* Makefile (distribute): Add autolock.sh. Reported by Fila Kolodny.
Tue Aug 27 10:06:22 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
When compiling in separate directory put objects into
subdirectories matching the source layout.
* Makeconfig (objpfx) [ifdef objdir]: Append $(subdir).
When looking for configparms try in $(common-objpfx).
Use $(common-objpfx)SUBDIR to find objects from other subdirectory
builds.
* Makerules: Add $(objpfx) to vpath list.
(make-dummy-dep): Use $(common-objpfx) to avoid creating dummy.d
more than once. All uses in dependency lists changed.
(+make-deps): Make target directory.
(sed-remove-objpfx): Substitute $(common-objpfx).
(do-ar, build-extra-lib, $(common-objpfx)stub-$(subdir)): Use
$(objpfx) instead of $(objdir) for cd command.
(O%-lib): Always find libc relative to $(..).
(subdir-stamps): Collect stamp files from subdirs.
(common-mostlyclean): Remove stub file in $(common-objpfx).
* MakeTAGS ($P/siglist.pot): Find siglist.c in stdio-common.
* Rules (dep-dummy-lib): Use $(common-objpfx) to avoid creating to
more than once.
($(objpfx)dummy.c, $(objpfx)empty.c): Change target name to use
$(common-objfpx). All uses in dependency lists changed.
(generated): Prepend $(..) to names.
* bare/Makefile ($(objpfx)lib$(config-vendor).a): Remove $(objpfx)
from $@.
* nss/Makefile ($(objpfx)libnss_dns.so, $(objpfx)libnss_db.so):
Use $(common-objpfx) instead of $(..) in dependencies.
* sysdeps/mach/Makefile (mach-objpfx): Unconditionally use
$(common-objpfx) instead of $(..) and (objpfx).
* sysdeps/mach/hurd/Makefile (hurd-objpfx): Likewise.
(rpath-link): Likewise.
(rpcuserlibs): Likewise.
* sysdeps/unix/Makefile [$(subdir) = stdio-common]: Check for
errlist.c in $(objpfx), not $(common-objpfx).
($(common-objpfx)s-proto.d): Special rule not covered by pattern
rule.
* sysdeps/unix/make-syscalls.sh: Make syscall rules depending on
s-proto.d in $(common-objpfx), not $(objpfx).
Thu Aug 29 17:45:49 1996 Ulrich Drepper <drepper@cygnus.com>
* nss/nsswitch.c (nss_dlerror_run): Free returned error
string.
Thu Aug 29 15:53:33 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/libm-ieee754/e_acoshl.c: New file. `long double'
implementation.
* sysdeps/libm-ieee754/e_atanhl.c: Likewise.
* sysdeps/libm-ieee754/e_remainderl.c: Likewise.
* sysdeps/libm-ieee754/e_scalbl.c: Likewise.
* sysdeps/libm-ieee754/s_asinhl.c: Likewise.
* sysdeps/libm-ieee754/s_cosl.c: Likewise.
* sysdeps/libm-ieee754/s_sinl.c: Likewise.
* sysdeps/libm-ieee754/s_tanhl.c: Likewise.
* sysdeps/libm-ieee754/s_tanl.c: Likewise.
* stdio-common/printf_fp.c (__printf_fp): Use default value '.' if
* mach/Makefile (MIGFLAGS-mach/mach4): Define variable.
mach/Machrules (mig.uh, mig.__h): Include $(user-MIGFLAGS) and
$(MIGFLAGS-$*) here too, as well as in the code-generating MiG calls.
Thu Aug 29 12:00:30 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* stdio/fseek.c (fseek): Don't assume we know the file position;
other handles may have changed it. So set STREAM.__offset to -1
before calling __stdio_check_offset to make sure we have a correct
value.
Thu Aug 29 00:28:08 1996 Ulrich Drepper <drepper@cygnus.com>
* stdio-common/printf_fp.c (__printf_fp): Use default value `.` if
`decimal' char is 0.
* C-numeric.c (not_available): New constant.
(_nl_C_LC_NUMERIC): Use `not_available' for grouping value.
* nss/nsswitch.conf: Example configuration file.
* nss/db-Makefile: Example Makefile for generation of databases
for nss_db.
* nss/Makefile (distribute): Add nsswitch.conf and db-Makefile.
1996-08-28 Paul Eggert <eggert@twinsun.com>
* C-messages.c (_nl_C_LC_MESSAGES): Set yesexpr to "^[yY]" and
noexpr to "^[nN]"; this conforms to POSIX.2.
* C-time.c (_nl_C_LC_TIME): Change %d to %e in d_t_format, to
conform to POSIX.2.
1996-08-28 Paul Eggert <eggert@twinsun.com>
* C-monetary.c (not_available): New constant.
(_nl_C_LC_MONETARY): Set mon_decimal_point to "", and set
mon_grouping, int_frac_digits, frac_digits, p_cs_precedes,
p_sep_by_space, n_cs_precedes, n_sep_by_space, p_sign_posn, and
n_sign_posn to CHAR_MAX, as required by the POSIX Standard.
Wed Aug 28 23:12:28 1996 Ulrich Drepper <drepper@cygnus.com>
* nss/nss_db/db-XXX.c: Correct function names. They must be
`_nss_db_*' instead of `_nss_files_*'.
(lookup): `parse_line' returns 1 if succesful.
* nss/nss_files/files-service.c (servbyname): Key for database
must also contain protocol names.
(servbypt): Likewise.
Test must also check for protocol. Add `proto' argument.
Tue Aug 27 09:56:13 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* MakeTAGS ($P/subdirs.pot): Prefix all file names, not only the
first one.
Fri Aug 16 16:11:25 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* nss/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r): Treat
EPFNOSUPPORT and EAFNOSUPPORT as implying NSS_STATUS_UNAVAIL just
like ECONNREFUSED already does.
(_nss_dns_gethostbyaddr_r): Likewise.
* nss/nss_dns/dns-network.c (_nss_dns_getnetbyname_r): Likewise.
(_nss_dns_getnetbyaddr_r): Likewise.
* sysdeps/mach/hurd/socket.c (socket): For message transmission
and RPC errors that indicate that the socket server is not really
present and able to do its job, turn the error into EPFNOSUPPORT.
* sysdeps/generic/sbrk.c (__sbrk): Get kernel brk address
always only if in static libc or if statically linked program
uses libc.so.
Tue Aug 27 17:45:21 1996 Ulrich Drepper <drepper@cygnus.com>
* Makerules: Add some test for correct version of GNU Make.
* io/fcntl.h: Undo change from Mon Aug 26 22:22:17 1996.
* sysdeps/unix/sysv/linux/fcntlbits.h: Place macros here instead.
* sysdeps/generic/dl-sysdep.c: Initialize break address to
avoid overwriting last page (OK, Roland).
Tue Aug 27 16:20:37 1996 Ulrich Drepper <drepper@cygnus.com>
* resolv/resolv.h: Update from BIND-4.9.5-T3A.
* resolv/arpa/nameser.h: Likewise.
* resolv/res_init.c: Likewise.
* resolv/res_debug.c: Likewise.
* resolv/res_mkquery.c: Likewise.
Tue Aug 27 15:47:04 1996 Ulrich Drepper <drepper@cygnus.com>
* elf/dl-error.c (catch): Define errstring element not as const.
(_dl_catch_error): ERRSTRING argument is not const pointer.
Initialize *ERRSTRING and *OBJNAME separately.
* elf/link.h: Change prototype for `_dl_catch_error'.
* elf/dl-load.c (_dl_map_object): Use separate variable for
copied NAME to avoid `const' warning.
* elf/dlerror.c: Make `last_errstring' variable not const pointer.
* elf/rtld.c: Implement reading of /etc/ld.so.preload. This
provides preloading even for SUID binaries.
Add some more casts to avoid signed<->unsigned warnings.
Tue Aug 27 15:40:28 1996 NIIBE Yutaka <gniibe@mri.co.jp>
* posix/sys/types.h: Define loff_t.
* sysdeps/unix/sysv/linux/gnu/types.h: Define __loff_t.
Mon Aug 26 16:31:33 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* sysdeps/mach/hurd/setitimer.c (setitimer_locked): Tolerate NEW
being null; in that case don't touch the timer at all (but do
return something in OLD if necessary).
Mon Aug 26 13:35:16 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* sysdeps/mach/hurd/i386/init-first.c (__libc_multiple_libcs): New
variable.
* sysdeps/i386/init-first.c: Likewise.
* sysdeps/stub/init-first.c: Likewise.
Mon Aug 26 22:22:17 1996 Ulrich Drepper <drepper@cygnus.com>
* io/fcntl.h: Add definition for BSD F* macros.
* misc/init-misc.c (__init_misc): Make static.
* misc/Makefile: Pass -fkeep-inline-functions flag for init-misc.c.
* configure.in: Add test for -fno-exception option of gcc.
* config.make.in: Add definition of have-no-exceptions.
* Makerules: Define no-exceptions based on have-no-exceptions.
* csu/Makefile: When translating initfini.c pass $(no-exceptions).
This is necessary for gcc >= ss-960816.
Mon Aug 26 17:16:48 1996 Richard Henderson <rth@tamu.edu>
* sysdeps/alpha/dl-machine.h: Clear startup flag.
Fri Aug 16 21:17:50 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makerules (o-iterator-doit): Simplify reference to autolock
script.
Fri Aug 16 21:17:50 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makerules (o-iterator-doit): Simplify reference to autolock
script.
Sat Aug 24 15:27:41 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/mach/hurd/getcwd.c
(_hurd_canonicalize_directory_name_internal): After resizing the
buffer move the current contents to the end. Correctly relocate
file name pointer to upper half of the buffer.
Mon Aug 26 15:49:59 1996 Ulrich Drepper <drepper@cygnus.com>
* rtld.c (dl_main): Remove code to call ld.so initializer. This
was introduced for compatibility with Linux ld.so and would not
be used anymore. Now we don't have any good values to use as the
parameters to the initializer so simply remove it.
Sun Aug 25 18:25:52 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* gmon/gmon.c (ERR): Don't write the terminating NUL.
* sysdeps/posix/profil.c (profil): Disable the profiling timer at
first.
(profil_count): Use 64 bit arithmethic to avoid overflow.
* sysdeps/generic/machine-gmon.h (MCOUNT): Fix argument order.
* sysdeps/generic/ftime.c: Likewise.
Mon Aug 26 02:01:37 1996 Ulrich Drepper <drepper@cygnus.com>
* elf/dl-open.c (_dl_open): Call library initializer with
correct command line arguments and environment information.
* elf/rtld.c (dl_main): Provide arguments to initializer of
ld.so itself.
Sun Aug 25 19:15:46 1996 Ulrich Drepper <drepper@cygnus.com>
* shadow/Makefile (routines): Add lckpwdf.
* shadow/lckpwdf.c: New file.
* sysdeps/i386/fpu_control.h (_FPU_GETCW, _FPU_SETCW): Force
argument `cw' to be placed in memory. Patch by Torbjorn Granlund.
Sun Aug 25 12:53:37 1996 Ulrich Drepper <drepper@cygnus.com>
* configure.in: Add definition for `__eh_pc' and `__throw' in
test for --no-whole-archive. The compiler generates dependencies
for this but none of the standard librares and startup files
are used. Necessary for gcc >= ss-960816.
Sun Aug 25 01:31:33 1996 Ulrich Drepper <drepper@cygnus.com>
* elf/dl-error.c (_dl_signal_error): If error is catched, malloc
return string since string might be on stack.
* elf/dl-lookup.c (_dl_lookup_symbol): Undo change of
Wed Aug 21 10:14:59 1996.
* elf/dlerror.c (dlerror): Free error string after printing.
(_dlerror_run): If error string was not printed since last error
free string.
* rtld.c (dl_main): Free error string in case of error.
Sat Aug 24 03:16:47 1996 Ulrich Drepper <drepper@cygnus.com>
* misc/syslog.c (vsyslog): Don't use `localtime' or `gmtime' since
this changes the global state for `localtime' and `gmtime'. Use
`__localtime_r'/`__gmtime_r' instead.
* resolv/res_debug.c (__p_secstodate): Likewise.
* sysdeps/generoc/ftime.c: Likewise.
* sysdeps/posix/gettimeofday.c: Likewise.
Reported by Paul Eggert.
* time/gmtime.c: De-ANSI-fy.
* time/strftime.c: Don't call non-reentrant functions which change
state.
Wed Aug 21 10:14:59 1996 Richard Henderson <rth@tamu.edu>
* elf/dl-lookup.c (_dl_lookup_symbol): Malloc the error string rather
than putting it on the stack.
Wed Aug 21 10:12:42 1996 Richard Henderson <rth@tamu.edu>
* elf/rtld.c (dl_main): When looking up symbols in response to --list,
don't find .plt entries.
Mon Aug 19 23:18:12 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/m68k/dl-machine.h (RTLD_START): Optimize clearing
_dl_starting_up.
Tue Aug 20 17:42:10 1996 Miles Bader <miles@gnu.ai.mit.edu>
* stdio/linewrap.c (line_wrap_stream): Initialize D->seek.
Sat Aug 17 12:19:37 1996 David Mosberger-Tang <davidm@azstarnet.com>
* login/pututline_r.c (__pututline_r): Fix handling of case where
getutid_r() fails with ESRCH. Reported by Miquel van Smoorenburg.
Wed Aug 14 14:10:54 1996 David Mosberger-Tang <davidm@azstarnet.com>
* sysdeps/unix/sysv/linux/alpha/ioperm.c (platform): Change entry
for "Jensen" so _bus_base() returns 0 on that platform. Use
_bus_base_sparse() to determine base address of sparse memory.
* sysdeps/unix/sysv/linux/sys/io.h: Enclose #include <asm/io.h>
and declarations in __BEGIN_DECLS/__END_DECLS.
Sun Aug 18 13:37:09 1996 Ulrich Drepper <drepper@cygnus.com>
* err.h: New file. Wrapper around misc/err.h.
Correct solution of multiple initialization problem by
Roland McGrath.
* csu/initfini.c: Remove global variable __libc_is_static.
* elf/rtld.c: Introduce new global variable _dl_starting_up.
It's nonzero during the startup.
* elf/dl-open.c (_dl_open): When _dl_start function is not
available (i.e., if in static libc) set `__libc_multiple_libcs'
to nonzero value.
* sysdeps/unix/sysv/linux/init-first.c (__libc_multiple_libc):
New global variable.
(init): Undo change of Fri Aug 2 03:12:40 1996.
Initialize `__libc_multiple_libcs' to nonzero only if this is
a shared lib called from a statically linked program and don't
call `personality' and `setfpucw' in this case either.
* sysdeps/generic/sbrk.c: Undo change of Fri Aug 2 03:12:40 1996.
Don't call brk(0) until `__libc_multiple_libcs' is nonzero.
* sysdeps/i386/dl-machine.h (RTLD_START): Clear _dl_starting_up
before jumping to user code.
* sysdeps/m68k/dl-machine.h (RTLD_START): Likewise.
Fri Aug 16 04:59:01 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/init-first.c: Remove hack from
Thu Aug 8 12:40:20 1996.
* sysdeps/unix/sysv/linux/Makefile [$(subdir) = csu]: Use
-fkeep-inline-functions flag instead.
Fri Aug 16 01:24:33 1996 Ulrich Drepper <drepper@cygnus.com>
* inet/ruserpass.c (userpass): Allocate buffer for .netrc file
name dynamically. Reported by Alan Cox.
Uncomment warnings and mark as translatable.
* time/strftime (strftime): Add implementation for %s and %z
format. Change behaviour for unknown format character: now
simply print it. This matches the behaviour of printf.
Reported by Jim Meyering.
* manual/time.texi: Document all formats and flags of strftime.
Thu Aug 15 18:02:51 1996 Ulrich Drepper <drepper@cygnus.com>
* elf/rtld.c (dl_main): Loaded object has type lt_executable,
not lt_library.
* misc/sys/select.h: Define fd_set using typedef, not #define.
Proposed by David Mosberger-Tang.
Thu Aug 15 12:48:21 1996 Ulrich Drepper <drepper@cygnus.com>
* po/header.pot: Use real description line.
Thu Aug 15 04:42:44 1996 Ulrich Drepper <drepper@cygnus.com>
* elf/rtld.c (dl_main): When started with --verify prevent
any warning. Just exit with an error.
* elf/ldd.sh.in: Don't run given object directly. This fails for
libraries. Instead use $RTLD again.
* sysdeps/generic/sbrk.c (__sbrk): Get kernel brk address
always only if in static libc or if statically linked program
uses libc.so.
Thu Aug 15 02:08:59 1996 Ulrich Drepper <drepper@cygnus.com>
* manual/nss.texi: New file. Document NSS.
* manual/nsswitch.texi: New file. Example configuration.
* manual/string.texi: Document stpncpy, strdupa, and strndupa.
* manual/example/strdupa.c: New file. Example for strdupa.
Wed Aug 14 21:36:16 1996 Ulrich Drepper <drepper@cygnus.com>
* stdlib/strtod.c (STRTOD): Correct assertion about size of
wint_t and wchar_t. Reported by David Mosberger-Tang.
Mon Aug 12 22:40:16 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* elf/dl-lookup.c (_dl_lookup_symbol): Remove fifth parameter
RELOC_ADDR and make NOPLT a set of flags. All callers
changed. Delete condition that checks for resolving to the
location being filled in. Add condition to skip the
executable's symbols if requested.
* elf/link.h: Change declaration of _dl_lookup_symbol
accordingly.
(DL_LOOKUP_NOEXEC, DL_LOOKUP_NOPLT): New definitions.
* elf/dl-reloc.c (RESOLVE): Remove second parameter and rename
NOPLT to FLAGS.
* elf/dl-runtime.c (RESOLVE): Likewise.
* elf/rtld.c (RESOLVE): Likewise.
* sysdeps/m68k/dl-machine.h (elf_machine_rela): Pass
DL_LOOKUP_NOEXEC as second argument to the RESOLVE macro if
processing a copy reloc, DL_LOOKUP_NOPLT for a jump slot
reloc, zero otherwise.
* sysdeps/alpha/dl-machine.h (elf_machine_rela): Likewise.
* sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
* sysdeps/mips/dl-machine.h (elf_machine_rel): Likewise.
Wed Aug 14 17:57:08 1996 Ulrich Drepper <drepper@cygnus.com>
* MakeTAGS: Clean up use of --omit-header and -n for xgettext.
* po/header.pot: Add empty line at end.
Sun Aug 11 13:45:33 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* MakeTAGS (all-pot): Remove $P/errlist.pot, all error messages
are now in $P/stdio-common.pot.
(XGETTEXTFLAGS-errlist.pot): Variable removed.
Mon Aug 12 19:25:03 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makerules (do-ar, o-iterator-doit): Compute path to autolock
script at run time, not configure time.
* config.make.in, configure.in: Undo previous change.
Wed Aug 14 13:20:02 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/i386/close.S: Push return value of thread
on stack as argument for `_exit'. Reported by Andreas Schwab.
Mon Aug 12 19:36:25 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/m68k/clone.S: New file.
Wed Aug 14 04:22:35 1996 Richard Henderson <rth@tamu.edu>
* elf/dl-load.c (_dl_map_object): Save name in malloced memory.
(_dl_map_object_from_fd): Free name on error.
Wed Aug 14 13:00:09 1996 Ulrich Drepper <drepper@cygnus.com>
* string/strdup.c: Use result of memcpy to avoid reloading.
Tue Aug 13 00:55:03 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* shadow/sgetspent_r.c (__sgetspent_r): Copy string to buffer, not
the other way round.
* resolv/Makefile (libresolv-routines): Add base64, inet_net_ntop,
inet_net_pton, inet_net.
* resolv/arpa/nameser.h (__BIND): Update version number.
Mon Aug 12 19:03:22 1996 Thomas Bushnell n/BSG <thomas@psilocin.gnu.ai.mit.edu>
* sysdeps/generic/gnu/types.h: Declare __fd_mask as `unsigned long'.
* mach/Makefile (mach/mach_host.uh): Depend on
$(objpfx)/mach-syscalls.mk.
($(objpfx)mach-shortcuts.h): Depend on $(objpfx)mach/mach_host.h.
(This fixes a make loop; thanks to Marcus Daniels
<marcus@sysc.pdx.edu> for the patch.)
Tue Aug 13 20:51:21 1996 Ulrich Drepper <drepper@cygnus.com>
* stdlib/canonicalize.c (canonicalize): Add cast to prevent
warning.
* Makerules (o-iterator-doit): Use autolock.sh when running ranlib.
Tue Aug 13 18:26:45 1996 Ulrich Drepper <drepper@cygnus.com>
* nss/nsswitch.c (__nss_configure_lookup): Use fact that list is
sorted.
Update from bind-4.9.5-T1A.
* resolv/Makefile (routines): Add inet_net_ntop, inet_net_pton,
inet_net.
(libresolv-routines): Add base64.
* resolv/gethnamaddr.c: Include <sys/types.h>.
* resolv/getnetnamadr.c: Likewise.
* resolv/herror.c: Likewise.
* resolv/inet_addr.c: Likewise.
* resolv/nsap_addr.c: Likewise.
* resolv/res_comp.c: Likewise.
* resolv/res_data.c: Likewise.
* resolv/res_init.c: Likewise.
* resolv/res_mkquery.c: Likewise.
* resolv/res_query.c: Likewise.
* resolv/res_send.c: Likewise.
* resolv/gethnamaddr.c [! SPRINTF_CHAR] (SPRINTF): Cast return
value of sprintf.
* resolv/inet_ntop.c: Likewise.
* resolv/gethnamaddr.c [BSD]: Include <stdlib.h>.
Remove prototype of gethostbyname_ipv4.
* resolv/inet_ntop.c, resolv/inet_pton.c: Use ISO C `mem*'
functions instead of BSD `b*' functions.
* resolv/nsap_addr.c: Add copyright message.
* resolv/res_comp.c: Remove comment explaining label format.
(res_mailok): Correct check.
* resolv/res_debug: Include missing headers.
(__fp_nquery): Handle `unused', `ad', and `cd' bits.
(__p_fqnname): New function to print FQDN from compressed name.
(__p_rr): Use __p_fqnname. Correct printing of ". Handle T_TXT
correctly. Add handling of T_KEY and T_SIG.
Handle class and type names by using name arrays instead of
explicit `switch'es.
(__sym_ston, __sym_ntos, __sym_ntop): New functions to use arrays.
(__dn_count_labels, __p_secstodate): New functions.
* resolv/resolv.h (__RES): Update version number.
(res_sym): New type.
Add #defines for new functions.
Declare sym_ntos, sym_ntop, b64_ntop, b64_pton, __p_fqnname,
__p_secstodate, dn_count_labels.
* resolv/arpa/nameser.h (__BIND): Update verison number.
Add KEYFLAG_* and ALGORITHM_* symbols.
(HEADER): Add `ad' and `cd' flags.
* inet/ient.h: Add prototypes for inet_neta, inet_net_ntop,
and inet_net_pton.
* manual/maint.texi: Document that we use bind-4.9.5.
* INSTALL: Ditto.
Mon Aug 12 16:41:52 1996 Thomas Bushnell n/BSG <thomas@gnu.ai.mit.edu>
* io/getwd.c (getwd) [! PATH_MAX]: Don't assume that the user's
buffer is any longer than the amount necessary to hold the
filename; the Hurd getcwd uses the *entire* contents of the
buffer, however long it is specified to be.
Mon Aug 12 03:31:58 1996 Ulrich Drepper <drepper@cygnus.com>
* nss/nsswitch.c (__nss_configure_lookup): New function.
Allows to specify services.
* nss/XXX-lookup.h: Rename database variable and make global.
* nss/databases.def: New file. Real names of all databases.
* nss/nss.h: New file. Contains declaration useful for users
and service developers.
* nss/nsswitch.h: Move some declarations to nss/nss.h.
* nss.h: New file. Wrapper around nss/nss.h.
* nss/Makefile (headers): Add nss.h.
(distributes): Add databases.h.
Sun Aug 11 16:19:42 1996 Ulrich Drepper <drepper@cygnus.com>
Help the poor people with fast machines by making sure only
one `ar' commands works on the library.
* autolock.sh: New file. Written by Tom Tromey.
* Makerules (do-ar): Call autolock.sh shell script instead of
directly using `ar'.
* config.make.in: Make configuration variable AUTOLOCK which
gets initialized by configure.
* configure.in: Define variable AUTOLOCK to point to autolock.sh
script and mark it to substitute.
* string/Makefile: Add -fno-builtin for tst-strlen.c, too.
* elf/dl-lookup.c (_dl_lookup_symbol): Allow self-referencing.
Patch by David Mosberger-Tang.
Sun Aug 11 01:12:38 1996 Richard Henderson <rth@tamu.edu>
* sysdeps/alpha/dl-machine.h (elf_alpha_fix_plt): Optimize LD_BIND_NOW
startup by moving Icache flush from here ...
(ELF_MACHINE_RUNTIME_TRAMPOLINE): ... to here.
(ELF_MACHINE_USER_ADDRESS_MASK): Delete; it is unused.
* sysdeps/alpha/divrem.h: Update comment to reflect the actual
calling conventions. The code is already correct.
Sun Aug 11 01:06:42 1996 Richard Henderson <rth@tamu.edu>
* string/Makefile: Compile tester with -fno-builtin as we want to
test our implementations, not gcc's.
Sat Aug 10 13:17:27 1996 David Mosberger-Tang <davidm@azstarnet.com>
* shadow.h: New file.
* sysdeps/unix/sysv/linux/netinet/in.h: Move
__BEGIN_DECLS/__END_DECLS up so ntohl() et al are bracketed as
well.
* socket/sys/socket.h [__cplusplus]: Use old-style __SOCKADDR_ARG.
g++ 2.7.2 (and earlier) has no transparent unions support.
Fri Aug 9 18:50:06 1996 David Mosberger-Tang <davidm@azstarnet.com>
* sysdeps/unix/sysv/linux/alpha/ioperm.c (_bus_base_sparse): New
function to determine the base address of sparse bus memory.
(APECS_*): Rename to CIA_*.
(APECS_SPARSE_MEM, CIA_SPARSE_MEM): New macros.
(platform): Add sparse_bus_memory_base member and initialize.
(sparse_bus_memory_base): New variable.
Tue Aug 6 10:23:18 1996 David Mosberger-Tang <davidm@azstarnet.com>
* sysdeps/posix/ttyname_r.c (ttyname_r),
sysdeps/posix/ttyname.c (ttyname): Return -1/NULL if
!__isatty(fd) (POSIX.1 says so.)
* sysdeps/unix/getlogin.c (getlogin): Fix to check fd 0 only.
This is not a gross hack, after all---for compatibility,
getlogin() really should check fd 0 only and not try to base its
operation on the controlling tty.
Wed Jul 17 10:54:20 1996 David Mosberger-Tang <davidm@azstarnet.com>
* sysdeps/unix/getlogin.c (getlogin): Add static variable NAME,
change utmp_data from static to auto.
Sun Aug 11 02:56:08 1996 Ulrich Drepper <drepper@cygnus.com>
* posix/unistd.h [__USE_MISC]: Add prototype for `nice'.
Reported by David Mosberger-Tang.
Sat Aug 10 02:05:28 1996 Richard Henderson <richard@twiddle.tamu.edu>
* sysdeps/libm-ieee754/s_isnan.c [NO_LONG_DOUBLE]: Add strong
alias to `__isnanl'.
Fri Aug 9 17:38:58 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/sys/timex.h: Include <sys/time.h> to
get `struct timeval'.
* sysdeps/unix/sysv/linux/sys/acct.h: Get time_t from <time.h>.
* sysdeps/unix/sysv/linux/sys/module.h: Get size_t from <stddef.h>.
* sysdeps/unix/sysv/linux/sys/io.h: Get definition of __P.
* sysdeps/unix/sysv/linux/sys/klog.h: Likewise.
* gmon/sys/gmon.h: Include <sys/types.h> to get u_long.
* sysdeps/unix/sysv/linux/direntry.h: Complete types in
<linux/dirent.h>.
* io/fts.h: Include <sys/types.h> to get dev_t.
Reported by Matthias Urlichs.
* sysdeps/posix/tempname.c [USE_IN_LIBIO]: Don't clear
_IO_file_flags. It's the same as _flags.
Reported by Miquel van Smoorenburg <miquels@Q.cistron.nl>.
Wed Aug 7 19:38:47 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/m68k/resourcebits.h: Add RLIMIT_AS.
Thu Aug 8 16:17:38 1996 Ulrich Drepper <drepper@cygnus.com>
* pwd/getpwent.c: Define BUFLEN from NSS_BUFLEN_PASSWD.
* pwd/getpwent_r.c: Likewise.
* pwd/getpwnam.c: Likewise.
* pwd/getpwnam_r.c: Likewise.
* pwd/getpwuid.c: Likewise.
* pwd/getpwuid_r.c: Likewise.
* grp/getgrent.c: Define BUFLEN from NSS_BUFLEN_GROUP.
* grp/getgrent_r.c: Likewise.
* grp/getgrgid.c: Likewise.
* grp/getgrgid_r.c: Likewise.
* grp/getgrnam.c: Likewise.
* pwd/fgetpwent_r.c: New file. Reentrant version of fgetpwent.
* pwd/fgetpwent.c: Rewrite to use fgetpwent_r.
* pwd/Makefile (routines): Add fgetpwent_r.
* pwd/pwd.h: Add prototypes for __fgetpwent_r and fgetpwent_r.
* grp/fgetgrent_r.c: New file. Reentrant version of fgetgrent.
* grp/fgetgrent.c: Rewrite to use fgetgrent_r.
* grp/Makefile (routines): Add fgetgrent_r.
* grp/grp.h: Add prototypes for __fgetgrent_r and fgetgrent_r.
Implement shadow password lookup functions. This is no complete
shadow password suite.
* shadow/Makefile: New file.
* shadow/fgetspent.c: New file.
* shadow/fgetspent_r.c: New file.
* shadow/getspent.c: New file.
* shadow/getspent_r.c: New file.
* shadow/getspnam.c: New file.
* shadow/getspnam_r.c: New file.
* shadow/putspent.c: New file.
* shadow/sgetspent.c: New file.
* shadow/sgetspent_r.c: New file.
* shadow/shadow.h: New file.
* shadow/spwd-lookup.c: New file.
* shadow/nss_files/files-spwd.c: New file.
Thu Aug 8 13:33:45 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/ftime.c: New file. Available system
call is only a stub.
Reported by Matthias Urlichs.
* Makeconfig [!default_cflags]: Change default value from `-g'
to `-g -O'.
* configure.in: Recognize i686.
* sysdeps/i386/i686/Implies: Default on i586 optimized code.
Thu Aug 8 12:40:20 1996 Matthias Urlichs <smurf@smurf.noris.de>
* Makeconfig [$(build-omitfp) == yes]: Add to CFLAGS-.so
value of CFLAGS-.o, not CFLAGS-o.
* sysdeps/unix/sysv/linux/init-first.c (init): Add volatile
pointer to ourself. Otherwise `gcc -O3' optimized init away.
sure that all tables in binary file are word-aligned.
Thu Aug 8 01:41:43 1996 Ulrich Drepper <drepper@cygnus.com>
* elf/Makefile: Undo change of Tue Aug 6 14:27:11 1996.
* elf/dl-support: Add definition of `_dl_sysdep_read_whole_file'.
Thu Aug 8 01:15:59 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/i386/fpu_control.h (_FPU_DEFAULT, _FPU_IEEE): Set
to 0x137f to allow long double operations.
Sun Aug 4 13:12:05 1996 Richard Henderson <rth@tamu.edu>
Bug Fixes:
* nss/nsswitch.c (_res): Remove redundant variable definition.
The real one is in resolve/res_init.c, and having both prevents
using -fno-common when building the shared library.
* sunrpc/rpc_prot.c (_null_auth): Same. Original is in rpc_common.c.
* sysdeps/unix/sysv/linux/alpha/brk.S: When PIC, define __curbrk as
a .bss object not a COMMON symbol.
* sysdeps/alpha/bsd-_setjmp.S, sysdeps/alpha/bsd-setjmp.S: Must load
$gp before referencing __sigsetjmp symbol. Retain LITUSE for same.
Optimizations:
* sysdeps/alpha/strlen.S: Rearrange first-word setup and thense the
main loop for better dual-issue on EV5. Rearrange binary search to
pipeline better and trim one instruction.
Cosmetic Changes:
* time/localtime.c (localtime_r): Move lock declaration back next to
the comment where it was before the 960724 change.
* INSTALL, manual/maint.texi: alpha-gnu-linux -> alpha-ANYTHING-linux.
The second word is supposed to be the hardware manufacturer.
* sysdeps/alpha/_mcount.S: Retain LITUSE for __mcount.
* sysdeps/alpha/setjmp.S: Retain LITUSE for __sigsetjmp_aux.
* sysdeps/alpha/divrem.h: More local labels, retain LITUSE for _mcount.
* sysdeps/alpha/alphaev5/add_n.S, sysdeps/alpha/alphaev5/lshift.S,
sysdeps/alpha/alphaev5/rshift.S, sysdeps/alpha/alphaev5/sub_n.S:
Same cleanups as with EV4 GMP stuff.
Tue Jul 25 03:30:56 1996 Richard Henderson <rth@tamu.edu>
* sysdeps/unix/sysv/linux/Makefile [misc] (sysdep_routines): Add clone.
* sysdeps/unix/sysv/linux/alpha/clone.S: New file.
* sysdeps/unix/sysv/linux/i386/clone.S: New file.
Sun Aug 4 00:12:41 1996 David Mosberger-Tang <davidm@azstarnet.com>
* sysdeps/unix/sysv/linux/gnu/types.h: Declare __fd_mask as
`unsigned long'.
* misc/sys/select.h: Declare fd_mask as alias of __fd_mask.
Sat Aug 3 16:20:02 1996 David Mosberger-Tang <davidm@azstarnet.com>
* sysdeps/unix/sysv/linux/alpha/ioperm.c (platform): Add entry for
Mikasa.
* socket/sys/socket.h (send, __send, sendto): Declare buffer
pointer as __const.
* string/tester.c (main): Test stpncpy.
* sysdeps/generic/stpncpy.c (__stpncpy): Fix so it works without
segfault when called with an N that is not a multiple of four and
src[N-1]=='\0'.
* misc/syslog.c (LogType): New variable.
(openlog): If connect() with SOCK_DGRAM fails with EPROTOTYPE,
try again with SOCK_STREAM (the Linux syslogd uses a socket of the
latter type).
(vsyslog): When LogType==SOCK_STREAM, also send ASCII NUL
terminator as a record-delimiter. If __send(LogFile) fails,
call closelog() so logfile gets re-opened next time.
Wed Aug 7 15:15:14 1996 Ulrich Drepper <drepper@cygnus.com>
* elf/dl-open (_dl_open): Add cast to avoid warning.
* manual/memory.texi: Improve some examples to give readers better
advice: Use `stpcpy' instead of `strcat' if possible.
* manual/string.texi: Document `strtok_r' and `strtok'.
* sunrpc/Makefile: Move `+gccwarn' definition before inclusion
of Makeconfig.
[$(cross-compiling)=no]: Change test before making librpcsvc
to this from $(cross-compile).
Reported by Andreas Schwab.
Tue Aug 6 14:27:11 1996 Ulrich Drepper <drepper@cygnus.com>
* elf/Makefile (routines): Move dl-sysdep to here...
(rtld-routines): ...from here. This should make static linking
work again.
* locale/setlocale.c: Add local variable `lock' and add code to
`setlocale' to avoid simultaneous changing of global data.
* catgets/catgets.c (catopen): Use `__strdup' instead of `strdup'.
* catgets/open_catalog (__open_catalog): Use `__stpcpy', `__open',
`__fstat', `__read', `__mmap', `__munmap' and `__close' instead
of unprotected names.