c84142e8fe
1997-02-15 02:41 Miles Bader <miles@gnu.ai.mit.edu> * argp/argp-help.c: Gettextize sources. * argp/argp-parse.c: Likewise. 1997-02-13 22:32 Ulrich Drepper <drepper@cygnus.com> * features.h (__GLIBC_MINOR__): Bump to 1. * xlocale.h: New file. Wrapper around locale/xlocale.h. * Makefile (distribute): Add xlocale.h. * locale/Makefile (routines): Add ctype_l. * locale/ctype-extn.c: Update copyright. De-ANSI-declfy. Add __isblank_l, __toascii_l and __isascii_l. * ctype/ctype.h: Add definitions and declarations for *_l functions. * locale/Makefile (headers): Add xlocale.h. (routines): Add newlocale, duplocale, and freelocale. * locale/localeinfo.h (MAX_USAGE_COUNT): New macro. (struct locale_data): Add new fields mmaped and usage_count. Correct various declarations. * locale/C-collate.c: Define value for new fields mmaped and usage_count. * locale/C-ctype.c: Likewise. * locale/C-messages.c: Likewise. * locale/C-monetary.c: Likewise. * locale/C-numeric.c: Likewise. * locale/C-time.c: Likewise. * locale/loadlocale.c (_nl_load_locale): Initialize mmaped and usage_count fields. * locale/locale.h: Don't define locale_t here (moved to xlocale.h). Correct prototypes for __newlocale and __freelocale. Add prototype for __duplocale. * locale/findlocale.c (copy): Remove function. Use __strdup instead. (_nl_remove_locale): New function. * locale/nl_langinfo.c: Don't declare locale_data objects as const. * locale/setlocale.c: Likewise. * locale/weight.h: Change for use with locale objects. * locale/xlocale.h: New file. Define __locale_t type. * locale/newlocale.c: New file. Create new locale object. * locale/freelocale.c: New file. Destroy locale object. * locale/duplocale.c: New file. Create copy of locale object. * stdlib/Makefile (routines): Add strfmon_l. * stdlib/monetary.h [__USE_GNU]: Declare __strfmon_l. * stdlib/strfmon.c: Add support for use in extended locale model. * stdlib/strfmon_l.c: New file. * string/Makefile (routines): Add strcoll_l and strxfrm_l. * string/strcoll.c: Change for use in extended locale model. * string/strxfrm.c: Likewise. * string/strcoll_l.c: New file. Implement __strcoll_l function. * string/strxfrm_l.c: New file. Implement __strxfrm_l function. * wcsmbs/Makefile (routines): Add wcscoll_l and wcsxfrm_l. * wcsmbs/wchar.h [__USE_GNU]: Declare wcscoll_l and wcsxfrm_l. * wcsmbs/wcscoll.c: Change for use in extended locale model. * wcsmbs/wcscoll_l.c: New file. Implement __wcscoll_l function. * wcsmbs/wcsxfrm_l.c: New file. Implement __wcsxfrm_l function. * wctype/Makefile (routines): Add wcextra, wcfuncs_l, iswctype_l, and towctrans_l. * wctype/cname-lookup.h: Prepare for use in extended locale model. * wctype/iswctype_l.c: New file. Implement character classification functions for use with locale objects. * wctype/wctype.h: Declare functions for use with locale objects. * wctype/towctrans_l.c: New file. Implement __towctrans_l function for use with locale objects. * wctype/wcfuncs_l.c: New file. Implement wide character classification functions for use with locale objects. * wctype/wcextra.c: New file. Implement real functions for non-standard classification functions. * elf/ldd.bash.in: Don't use --data-relocs and --function-relocs parameters to ld.so. Use environment variables. * elf/ldd.sh.in: Likewise. * elf/rtld.c: Remove handling of --data-relocs and --function-relocs options. Instead read environment variables. * elf/link.h (receiver_fct): Add new argument to take error code. * elf/dl-error.c (_dl_signal_error): Call receiver function with another argument. * elf/dl-object.c (_dl_new_object): Create new object with list of names in l_libname member. * elf/dl-load.c (_dl_map_object_from_fd): Add name which was used to find to object to the list in the link_map variable. (_dl_map_object): Use _dl_does_name_match_p to compare with all available names of the object. Optimize handling of LD_LIBRARY_PATH a bit. * elf/rtld.c: Initialize l_libname member of _dl_rtld_map. * elf/dl-lookup.c (_dl_elf_hash): Optimize function. * elf/Makefile (routines): Add dl-version. * elf/link.h (hash_name_pair): New type. Group pointer to string and its hash value. (struct link_map): Change l_libname member to be a list of names, not a single pointer to a name. Add new members l_nversions and l_versions. (_dl_does_name_match_p): New function to test for all names of an object. Add prototypes for new lookup and versioning functions. * elf/dl-lookup.c (do_lookup): Add new argument and handle case when versioned symbol is requested. (_dl_lookup_symbol): Call do_lookup with another argument. (_dl_lookup_symbol_skip): Likewise. (_dl_lookup_versioned_symbol): New function. Handle lookup of versioned symbol. (_dl_lookup_versioned_symbol_skip): Likewise, similar to _dl_lookup_symbol_skip. * elf/dl-reloc.c (RESOLVE): Call _dl_lookup_versioned_symbol or _dl_lookup_symbol depending on availability of version information. * elf/dl-runtime.c (RESOLVE): Likewise. (fixup): Call elf_machine_relplt with additional argument to point to versioning information if available. * elf/do-rel.h (elf_dynamic_do_rel): Likewise. * elf/dl-open.c (_dl_open): Call _dl_check_map_versions to check for correct versions. * elf/dl-version.c: New file. Check library versions and extract version information for easier access. * elf/dlfcn.h [__USE_GNU]: Add prototype for dlvsym. * elf/dlvsym.c: New file. Implementation of function similar to dlsym, but looks for versioned symbol. * elf/elf.h: Add types and macros for versioning. * elf/rtld.c (dl_main): Check availability of needed versions. * sysdeps/alpha/dl-machine.h (elf_machine_rela): Add additional argument for version information. Call RESOLVE with additional argument. * sysdeps/i386/dl-machine.h: Likewise. * sysdeps/m68k/dl-machine.h: Likewise. * sysdeps/mips/dl-machine.h: Likewise. * elf/dlerror.c: Change comment to align with guidelines. * elf/dlopen.c: Likewise. * elf/dlsym.c: Likewise. * locale/programs/localedef.c: Implement --quiet option. * locale/programs/charset.h: Declare be_quiet variable. * locale/programs/locfile.h: Likewise. * locale/programs/charmap.c: Don't print warnings if quiet option was given. * locale/programs/ld-collate.c: Likewise. * locale/programs/ld-ctype.c: Likewise. * locale/programs/ld-messages.c: Likewise. * locale/programs/ld-monetary.c: Likewise. * locale/programs/ld-numeric.c: Likewise. * locale/programs/ld-time.c: Likewise. * locale/programs/locfile.c: Likewise. * Makefile (subdirs): Add argp. * catgets/catgets.c (catopen): Little code improvement. * posix/execl.c: Remove restriction to 1024 arguments. * posix/execle.c: Likewise. * posix/execlp.c: Likewise. * posix/getopt.c [_LIBC]: Define global objects with __ prefix and make regular names weak aliases. * posix/getopt1.c: Likewise. * posix/getopt.h [_LIBC]: Provide prototypes and declarations for __ protected forms. * posix/unistd.h: Add prototype for __sleep. * sysdeps/mach/sleep.c: Make sleep weak alias of __sleep. * sysdeps/posix/sleep.c: Likewise. * sysdeps/stub/sleep.c: Likewise. * sysdeps/unix/sysv/linux/sleep.c: Likewise. * ctype/ctype-info.c: Update copyright. * ctype/ctype.c: Likewise. * ctype/test_ctype.c: Likewise. * dirent/alphasort.c: Likewise. * dirent/list.c: Likewise. * gmon/bb_exit_func.c: Likewise. * grp/fgetgrent.c: Likewise. * grp/getgrent.c: Likewise. * grp/getgrent_r.c: Likewise. * grp/getgrgid.c: Likewise. * grp/getgrgid_r.c: Likewise. * grp/getgrnam.c: Likewise. * grp/getgrnam_r.c: Likewise. * hurd/alloc-fd.c: Likewise. * hurd/catch-exc.c: Likewise. * hurd/ctty-input.c: Likewise. * hurd/ctty-output.c: Likewise. * hurd/dtable.c: Likewise. * hurd/fchroot.c: Likewise. * hurd/fd-close.c: Likewise. * hurd/fd-read.c: Likewise. * hurd/fd-write.c: Likewise. * hurd/fopenport.c: Likewise. * hurd/get-host.c: Likewise. * hurd/getdport.c: Likewise. * hurd/getuids.c: Likewise. * hurd/getumask.c: Likewise. * hurd/hurd-raise.c: Likewise. * hurd/hurd.h: Likewise. * hurd/hurdauth.c: Likewise. * hurd/hurdexec.c: Likewise. * hurd/hurdhost.h: Likewise. * hurd/hurdid.c: Likewise. * hurd/hurdinit.c: Likewise. * hurd/hurdioctl.c: Likewise. * hurd/hurdkill.c: Likewise. * hurd/hurdlookup.c: Likewise. * hurd/hurdmsg.c: Likewise. * hurd/hurdpid.c: Likewise. * hurd/hurdports.c: Likewise. * hurd/hurdprio.c: Likewise. * hurd/hurdrlimit.c: Likewise. * hurd/hurdsock.c: Likewise. * hurd/hurdstartup.c: Likewise. * hurd/hurdstartup.h: Likewise. * hurd/intern-fd.c: Likewise. * hurd/intr-msg.c: Likewise. * hurd/intr-rpc.defs: Likewise. * hurd/intr-rpc.h: Likewise. * hurd/msgportdemux.c: Likewise. * hurd/new-fd.c: Likewise. * hurd/openport.c: Likewise. * hurd/pid2task.c: Likewise. * hurd/port-cleanup.c: Likewise. * hurd/port2fd.c: Likewise. * hurd/ports-get.c: Likewise. * hurd/ports-set.c: Likewise. * hurd/privports.c: Likewise. * hurd/report-wait.c: Likewise. * hurd/set-host.c: Likewise. * hurd/setauth.c: Likewise. * hurd/setuids.c: Likewise. * hurd/siginfo.c: Likewise. * hurd/sigunwind.c: Likewise. * hurd/task2pid.c: Likewise. * hurd/thread-cancel.c: Likewise. * hurd/thread-self.c: Likewise. * hurd/vpprintf.c: Likewise. * hurd/hurd/fd.h: Likewise. * hurd/hurd/id.h: Likewise. * hurd/hurd/ioctl.h: Likewise. * hurd/hurd/lookup.h: Likewise. * hurd/hurd/port.h: Likewise. * hurd/hurd/resource.h: Likewise. * hurd/hurd/threadvar.h: Likewise. * hurd/hurd/userlink.h: Likewise. * inet/ether_aton.c: Likewise. * inet/ether_aton_r.c: Likewise. * inet/ether_ntoa.c: Likewise. * inet/ether_ntoa_r.c: Likewise. * inet/gethstbyad.c: Likewise. * inet/gethstbyad_r.c: Likewise. * inet/gethstent.c: Likewise. * inet/getnetbyad.c: Likewise. * inet/getnetbyad_r.c: Likewise. * inet/getnetbynm.c: Likewise. * inet/getnetbynm_r.c: Likewise. * inet/getnetent.c: Likewise. * inet/getnetent_r.c: Likewise. * inet/getproto.c: Likewise. * inet/getproto_r.c: Likewise. * inet/getprtent.c: Likewise. * inet/getprtent_r.c: Likewise. * inet/getprtname.c: Likewise. * inet/getrpcbyname.c: Likewise. * inet/getrpcbyname_r.c: Likewise. * inet/getrpcbynumber.c: Likewise. * inet/getrpcbynumber_r.c: Likewise. * inet/getrpcent.c: Likewise. * inet/getrpcent_r.c: Likewise. * inet/getservent.c: Likewise. * inet/getservent_r.c: Likewise. * inet/getsrvbynm.c: Likewise. * inet/getsrvbynm_r.c: Likewise. * inet/getsrvbypt.c: Likewise. * inet/getsrvbypt_r.c: Likewise. * inet/herrno.c: Likewise. * inet/netgroup.h: Likewise. * ient/netinet/ether.h: Likewise. * intl/bindtextdom.c: Likewise. * intl/dcgettext.c: Likewise. * intl/dgettext.c: Likewise. * intl/gettext.c: Likewise. * intl/gettext.h: Likewise. * intl/gettextP.h: Likewise. * intl/hash-string.h: Likewise. * intl/loadmsgcat.c: Likewise. * intl/localealias.c: Likewise. * intl/textdomain.c: Likewise. * io/creat.c: Likewise. * io/getdirname.c: Likewise. * io/lockf.c: Likewise. * io/pwd.c: Likewise. * io/test-utime.c: Likewise. * locale/categories.def: Likewise. * locale/codeset_name.c: Likewise. * locale/lc-collate.c: Likewise. * locale/lc-ctype.c: Likewise. * locale/lc-messages.c: Likewise. * locale/lc-monetary.c: Likewise. * locale/lc-numeric.c: Likewise. * locale/lc-time.c: Likewise. * locale/loadlocale.c: Likewise. * locale/localeconv.c: Likewise. * locale/nl_langinfo.c: Likewise. * locale/setlocale.c: Likewise. * locale/strlen-hash.h: Likewise. * locale/programs/charmap-kw.gperf: Likewise. * locale/programs/charmap-kw.h: Likewise. * locale/programs/charset.c: Likewise. * locale/programs/ld-ctype.c: Likewise. * locale/programs/ld-messages.c: Likewise. * locale/programs/ld-monetary.c: Likewise. * locale/programs/linereader.h: Likewise. * locale/programs/locale-spec.c: Likewise. * locale/programs/locales.h: Likewise. * locale/programs/locfile-kw.gperf: Likewise. * locale/programs/locfile-kw.h: Likewise. * locale/programs/locfile-token.h: Likewise. * locale/programs/simple-hash.h: Likewise. * locale/programs/stringtrans.c: Likewise. * locale/programs/stringtrans.h: Likewise. * login/logout.c: Likewise. * mach/bootprivport.c: Likewise. * mach/devstream.c: Likewise. * mach/hello.c: Likewise. * mach/mach.h: Likewise. * mach/mach_init.c: Likewise. * mach/mach_init.h: Likewise. * mach/mig-alloc.c: Likewise. * mach/mig-dealloc.c: Likewise. * mach/mutex-init.c: Likewise. * mach/mutex-solid.c: Likewise. * mach/setup-thread.c: Likewise. * mach/spin-lock.h: Likewise. * mach/spin-solid.c: Likewise. * mach/mach/mig_support.h: Likewise. * md5-crypt/md5-crypt.c: Likewise. * misc/nlist.h: Likewise. * nss/nss_files/files-ether.c: Likewise. * posix/confstr.c: Likewise. * posix/execl.c: Likewise. * posix/execle.c: Likewise. * posix/execlp.c: Likewise. * posix/execv.c: Likewise. * posix/execvp.c: Likewise. * posix/fnmatch.c: Likewise. * posix/getopt.c: Likewise. * posix/getopt.h: Likewise. * posix/getopt1.c: Likewise. * posix/id.c: Likewise. * posix/regex.c: Likewise. * posix/setpgrp.c: Likewise. * posix/unistd.h: Likewise. * posix/wordexp.c: Likewise. * pwd/fgetpwent.c: Likewise. * pwd/getpwent.c: Likewise. * pwd/getpwent_r.c: Likewise. * pwd/getpwnam.c: Likewise. * pwd/getpwnam_r.c: Likewise. * pwd/getpwuid.c: Likewise. * pwd/getpwuid_r.c: Likewise. * pwd/putpwent.c: Likewise. * resolv/gethnamaddr.c: Likewise. * resolv/res_hconf.c: Likewise. * resolv/res_hconf.h: Likewise. * setjmp/longjmp.c: Likewise. * setjmp/sigjmp.c: Likewise. * setjmp/tst-setjmp.c: Likewise. * stdio/clearerr.c: Likewise. * stdio/ferror.c: Likewise. * stdio/fgetc.c: Likewise. * stdio/fgetpos.c: Likewise. * stdio/fgets.c: Likewise. * stdio/fileno.c: Likewise. * stdio/fmemopen.c: Likewise. * stdio/fopen.c: Likewise. * stdio/fopncook.c: Likewise. * stdio/fputc.c: Likewise. * stdio/fputs.c: Likewise. * stdio/fread.c: Likewise. * stdio/freopen.c: Likewise. * stdio/fseek.c: Likewise. * stdio/fsetpos.c: Likewise. * stdio/ftell.c: Likewise. * stdio/fwrite.c: Likewise. * stdio/getchar.c: Likewise. * stdio/getdelim.c: Likewise. * stdio/gets.c: Likewise. * stdio/glue.c: Likewise. * stdio/internals.c: Likewise. * stdio/linewrap.c: Likewise. * stdio/linewrap.h: Likewise. * stdio/memstream.c: Likewise. * stdio/newstream.c: Likewise. * stdio/putchar.c: Likewise. * stdio/puts.c: Likewise. * stdio/rewind.c: Likewise. * stdio/setbuf.c: Likewise. * stdio/setbuffer.c: Likewise. * stdio/setlinebuf.c: Likewise. * stdio/setvbuf.c: Likewise. * stdio/ungetc.c: Likewise. * stdio/vasprintf.c: Likewise. * stdio/vscanf.c: Likewise. * stdio/vsnprintf.c: Likewise. * stdio/vsprintf.c: Likewise. * stdio/vsscanf.c: Likewise. * stdio-common/asprintf.c: Likewise. * stdio-common/dprintf.c: Likewise. * stdio-common/errnobug.c: Likewise. * stdio-common/fprintf.c: Likewise. * stdio-common/getline.c: Likewise. * stdio-common/getw.c: Likewise. * stdio-common/perror.c: Likewise. * stdio-common/psignal.c: Likewise. * stdio-common/putw.c: Likewise. * stdio-common/reg-printf.c: Likewise. * stdio-common/scanf.c: Likewise. * stdio-common/snprintf.c: Likewise. * stdio-common/sprintf.c: Likewise. * stdio-common/tempnam.c: Likewise. * stdio-common/test_rdwr.c: Likewise. * stdio-common/tst-fileno.c: Likewise. * stdio-common/tst-printf.c: Likewise. * stdio-common/tstgetln.c: Likewise. * stdio-common/vprintf.c: Likewise. * stdlib/drand48.c: Likewise. * stdlib/drand48_r.c: Likewise. * stdlib/erand48.c: Likewise. * stdlib/erand48_r.c: Likewise. * stdlib/exit.h: Likewise. * stdlib/strtoq.c: Likewise. * stdlib/strtoul.c: Likewise. * stdlib/strtouq.c: Likewise. * stdlib/test-canon.c: Likewise. * stdlib/testdiv.c: Likewise. * stdlib/testrand.c: Likewise. * string/argz-append.c: Likewise. * string/argz-count.c: Likewise. * string/argz-create.c: Likewise. * string/argz-ctsep.c: Likewise. * string/argz-delete.c: Likewise. * string/argz-extract.c: Likewise. * string/argz-insert.c: Likewise. * string/argz-next.c: Likewise. * string/argz-stringify.c: Likewise. * string/basename.c: Likewise. * string/envz.c: Likewise. * string/memfrob.c: Likewise. * string/strcoll.c: Likewise. * string/strdup.c: Likewise. * string/string.h: Likewise. * string/strndup.c: Likewise. * string/strnlen.c: Likewise. * string/strsignal.c: Likewise. * string/strxfrm.c: Likewise. * string/test-ffs.c: Likewise. * string/testcopy.c: Likewise. * sysdeps/generic/enbl-secure.c: Likewise. * sysdeps/generic/memcopy.h: Likewise. * sysdeps/generic/stpncpy.c: Likewise. * sysdeps/generic/strcasecmp.c: Likewise. * sysdeps/generic/strcat.c: Likewise. * sysdeps/generic/strchr.c: Likewise. * sysdeps/generic/strcpy.c: Likewise. * sysdeps/generic/strcspn.c: Likewise. * sysdeps/generic/strlen.c: Likewise. * sysdeps/generic/strncase.c: Likewise. * sysdeps/generic/strncat.c: Likewise. * sysdeps/generic/strncpy.c: Likewise. * sysdeps/generic/strpbrk.c: Likewise. * sysdeps/generic/strsep.c: Likewise. * sysdeps/generic/strspn.c: Likewise. * sysdeps/generic/strstr.c: Likewise. * sysdeps/generic/strtok.c: Likewise. * sysdeps/generic/strtok_r.c: Likewise. * sysdeps/mach/sleep.c: Likewise. * sysdeps/posix/sleep.c: Likewise. * sysdeps/stub/sleep.c: Likewise. * time/date.c: Likewise. * time/test_time.c: Likewise. * wcsmbs/wmemcpy.c: Likewise. * wctye/test_wctype.c: Likewise. * wctye/towctrans.c: Likewise. * wctye/wcfuncs.c: Likewise. * wctye/wctrans.c: Likewise. 1997-02-13 22:15 Miles Bader <miles@gnu.ai.mit.edu> * argp/Makefile: New file. * argp/argp.h: Likewise. * argp/argp-ba.c: Likewise. * argp/argp-fmtstream.c: Likewise. * argp/argp-fmtstream.h: Likewise. * argp/argp-fs-xinl.c: Likewise. * argp/argp-help.c: Likewise. * argp/argp-namefrob.h: Likewise. * argp/argp-parse.c: Likewise. * argp/argp-pv.c: Likewise. * argp/argp-pvh.c: Likewise. * argp/argp-test.c: Likewise. * argp/argp-xinl.c: Likewise. * libio/_G_config.h: Make sure wint_t is also defined for old gcc 1997-02-09 04:35 Ulrich Drepper <drepper@cygnus.com> * stdio-common/_itoa.h: Update copyright.
599 lines
27 KiB
Plaintext
599 lines
27 KiB
Plaintext
GNU C Library NEWS -- history of user-visible changes. 1997-02-13
|
||
|
||
Copyright (C) 1992, 93, 94, 95, 96, 97 Free Software Foundation, Inc.
|
||
See the end for copying conditions.
|
||
|
||
Please send GNU C library bug reports using the `glibcbug' script to
|
||
<bugs@gnu.ai.mit.edu>. Questions and suggestions should be send to
|
||
<bug-glibc@prep.ai.mit.edu>.
|
||
|
||
Version 2.1
|
||
|
||
* An additional locale model to support C++ Standard Library locale
|
||
model an probably more was implemented by Ulrich Drepper.
|
||
|
||
* Eric Youngdale and Ulrich Drepper implement versioning of objects on
|
||
symbol level.
|
||
|
||
* Miles Bader provided the `argp' function family to support hierachical
|
||
command line argument parsing, layered on top of getopt.
|
||
|
||
Version 2.0.2
|
||
|
||
* more bug fixes
|
||
|
||
* add atoll function
|
||
|
||
* fix complex problems in Berkeley DB code
|
||
|
||
Version 2.0.1
|
||
|
||
* fixed lots of header problems (especially Linux/GNU specific)
|
||
|
||
* dynamic loader preserves all registers
|
||
|
||
* Roland McGrath provided support for handling of auxiliary objects in
|
||
the ELF dynamic loader.
|
||
|
||
* support for parallel builds is improved
|
||
|
||
Version 2.0
|
||
|
||
* GNU extensions are no longer declared by default. To enable them you
|
||
must define the macro `_GNU_SOURCE' in your program or compile with
|
||
`-D_GNU_SOURCE'.
|
||
|
||
* The library has changed from using GNU ld symbol aliases to using weak
|
||
symbols where available. The ELF object file format supports weak
|
||
symbols; GNU ld also supports weak symbols in the a.out format. (There
|
||
is also now support for other GNU ld extensions in ELF. Use the
|
||
`--with-elf' option to configure to indicate you have ELF, and
|
||
`--with-gnu-ld' if using GNU ld.) This change resulted in the deletion
|
||
of many files which contained only symbol aliases, reducing the size of
|
||
the source and the compiled library; many other files were renamed to
|
||
less cryptic names previously occupied by the symbol alias files.
|
||
There is a new header file <elf.h> for programs which operate on
|
||
files in the ELF format.
|
||
|
||
* Converted to Autoconf version 2, so `configure' has more options.
|
||
Run `configure --help' to see the details.
|
||
|
||
* The library can now be configured to build profiling, highly-optimized
|
||
(but undebuggable), and/or shared libraries (ELF with GNU ld only). The
|
||
`--enable-profile', `--enable-omitfp', and `--enable-shared' options to
|
||
`configure' enable building these extra libraries. The shared library is
|
||
built by default when using both ELF and GNU ld. When shared libraries
|
||
are enabled, the new library `-ldl' is available for arbitrary run-time
|
||
loading of shared objects; its interface is defined in <dlfcn.h>. The
|
||
new header file <link.h> gives access to the internals of the run-time
|
||
dynamic linker, `ld.so'. The shell script `ldd' is similar to the
|
||
application of same name on other systems and it provides information
|
||
about dynamically linked binaries.
|
||
|
||
* The C library now provides the run-time support code for profiling
|
||
executables compiled with `-pg'. Programs can control the profiling code
|
||
through the interface in <sys/gmon.h>. The `gmon.out' files written by
|
||
the GNU C library can be read only by GNU `gprof' (from GNU binutils);
|
||
the support for this file format was contributed by David Mosberger-Tang.
|
||
|
||
* The math code has been replaced with a math library based on fdlibm from
|
||
Sun, and modified by JT Conklin and Ulrich Drepper with i387 support, by
|
||
Ian Taylor with `float' functions and by Ulrich Drepper with `long double'
|
||
functions. The math functions now reside in a separate library, so
|
||
programs using them will need to use `-lm' their linking commands.
|
||
|
||
* John C. Bowman contributed optimized ix87 assembler inline functions.
|
||
|
||
* Ulrich Drepper has contributed support for an `/etc/nsswitch.conf'
|
||
mechanism similar to that found in Solaris 2. This is now used for the
|
||
group, passwd, hosts, networks, services, protocols, rpc, ethers,
|
||
shadow, netgroup, publickey, and alias databases. The `nsswitch.conf'
|
||
file controls what services are used for each individual database. This
|
||
works by loading shared libraries with names specified in `nsswitch.conf',
|
||
so service modules can be changed or added at any time without even
|
||
relinking any program. Currently there are the file, db, and NIS based
|
||
NSS services available.
|
||
|
||
* The new functions `strtoq' and `strtouq' parse integer values from
|
||
strings, like `strtol' and `strtoul', but they return `long long int' and
|
||
`unsigned long long int' values, respectively (64-bit quantities).
|
||
|
||
* The new functions `strtof' and `strtold' parse floating-point values from
|
||
strings, like `strtod', but they return `float' and `long double' values,
|
||
respectively (on some machines `double' and `long double' are the same).
|
||
|
||
* Ulrich Drepper has contributed new implementations of the floating-point
|
||
printing and reading code used in the `printf' family of functions and
|
||
`strtod', `strtof', and `strtold'. These new functions are perfectly
|
||
accurate, and much faster than the old ones.
|
||
|
||
* The implementation of the POSIX locale model was completely rewritten by
|
||
Ulrich Drepper. This includes the new programs `localedef' and `locale'
|
||
to compile the POSIX locale definition.
|
||
|
||
* The former dummy implementations of the strcoll and strxfrm function are
|
||
now replaced by fully functional code contributed by Ulrich Drepper. The
|
||
collation information comes from the POSIX locale definitions.
|
||
|
||
* The new header <langinfo.h> defines an interface for accessing
|
||
various locale-dependent data (using the locale chosen with `setlocale').
|
||
|
||
* Ulrich Drepper has contributed a new suite of functions for operation on
|
||
wide-character and multibyte-character strings, in <wchar.h>;
|
||
and classification and case conversion of wide characters, in <wctype.h>.
|
||
These new functions are conforming to the ISO C, Amendement 1 specification.
|
||
|
||
* There is now a second implementation of the standard I/O library available.
|
||
It comes from GNU libg++ as was written by Per Bothner, heavily modified
|
||
by Hongjiu Lu and made thread safe by Ulrich Drepper.
|
||
|
||
* You can now use positional parameter specifications in format strings
|
||
for the `printf' and `scanf' families of functions. For example,
|
||
`printf ("Number %2$d, Mr %1$s\n", "Jones", 6);'' prints
|
||
``Number 6, Mr Jones''. This is mainly useful when providing different
|
||
format strings for different languages, whose grammars may dictate
|
||
different orderings of the values being printed. To support this
|
||
feature, the interface for `register_printf_handler' has changed; see
|
||
the header file <printf.h> for details.
|
||
|
||
* The `printf' and `scanf' families of functions now understand a new
|
||
formatting flag for numeric conversions: the ' flag (e.g. %'d or %'f) says
|
||
to group numbers as indicated by the locale; for `scanf' and friends, this
|
||
says to accept as valid only a number with all the proper grouping
|
||
separators in the right places. In the default "C" locale, numbers are
|
||
not grouped; but locales for specific countries will define the usual
|
||
conventions (i.e. separate thousands with `,' in the US locale).
|
||
|
||
* The pgrp functions have been regularized, slightly incompatibly but much
|
||
less confusingly. The core functions are now `getpgid' and `setpgid',
|
||
which take arguments for the PID to operate on; the POSIX.1 `getpgrp' (no
|
||
argument) and BSD `setpgrp' (identical to `setpgid') functions are
|
||
provided for compatibility. There is no longer an incompatible `getpgrp'
|
||
with an argument declared under _BSD_SOURCE; no BSD code uses it.
|
||
|
||
* The new header file <fts.h> and suite of functions simplify programs that
|
||
operate on directory trees. This code comes from 4.4 BSD.
|
||
|
||
* The resolver code has been updated from the BIND 4.9.5-P1 release.
|
||
Parts of the code were heavily modified by Ulrich Drepper to fit in the
|
||
NSS scheme used in glibc.
|
||
|
||
* The new function `malloc_find_object_address' finds the starting address
|
||
of a malloc'd block, given any address within the block;
|
||
`malloc_object_allocated_size' returns the size of an allocated block;
|
||
and `malloc_walk' lets you walk through all allocated blocks. These can
|
||
be useful for debugging; see <malloc.h> for the interfaces.
|
||
|
||
* There is a new malloc debugging hook `__memalign_hook'.
|
||
|
||
* There are new typedefs `ushort' for `unsigned short int' and `uint' for
|
||
`unsigned int' in <sys/types.h>. These are for compatibility only and
|
||
their use is discouraged.
|
||
|
||
* The `-lmcheck' library to enable standard malloc debugging hooks is now
|
||
done differently, so that it works even without GNU ld.
|
||
|
||
* New function `euidaccess' checks allowed access to a file like `access',
|
||
but using the effective IDs instead of the real IDs.
|
||
|
||
* The time zone data files have been updated for the latest and greatest
|
||
local time conventions of the countries of the world.
|
||
|
||
* The new function `dirfd' extracts the file descriptor used by a DIR stream;
|
||
see <dirent.h>.
|
||
|
||
* The new functions `ecvt', `fcvt', and `gcvt' provide an obsolete interface
|
||
for formatting floating-point numbers. They are provided only for
|
||
compatibility; new programs should use `sprintf' instead. There are
|
||
also equivalent function for the `long double' floating-point type and
|
||
all functions also exist in a reentrant form.
|
||
|
||
* The new auxiliary library `-lutil' from 4.4 BSD contains various
|
||
functions for maintaining the login-record files (primarily of use to
|
||
system programs such as `login'), and convenient functions for
|
||
allocating and initializing a pseudo-terminal (pty) device.
|
||
|
||
* Ulrich Drepper has contributed new support for System V style
|
||
shared memory and IPC on systems that support it.
|
||
|
||
* Ulrich Drepper has contributed several miscellaneous new functions found
|
||
in System V: The `hsearch' family of functions provide an effective
|
||
implementation of hash tables; `a64l' and `l64a' provide a very simple
|
||
binary to ASCII mapping; `drand48' and friends provide a 48-bit random
|
||
number generator.
|
||
|
||
* Ulrich Drepper has contributed new reentrant counterparts for the
|
||
`random' and `hsearch' families of functions; `random_r', `hsearch_r', etc.
|
||
|
||
* Ulrich Drepper has contributed new, highly-optimized versions of several
|
||
string functions for the i486/Pentium family of processors.
|
||
|
||
* Ulrich Drepper has updated the Linux-specific code, based largely
|
||
on work done in Hongjiu Lu's version of GNU libc for Linux.
|
||
The GNU library now supports Linux versions 2.0.10 and later,
|
||
using the ELF object file format (i[3456]86-*-linux).
|
||
|
||
* Andreas Schwab has ported the C library to Linux/m68k (m68k-*-linux).
|
||
|
||
* David Mosberger-Tang and Richard Henderson have ported the C library
|
||
to Linux/Alpha (alpha-*-linux). Richard Henderson contributed the
|
||
dynamic linking support for ELF/Alpha.
|
||
|
||
* Richard Henderson contributed several Alpha optimized assembler function
|
||
for arithmetic and string handling.
|
||
|
||
* Ulrich Drepper has contributed a new set of message catalog functions to
|
||
support multiple languages using the <libintl.h> interface, for use with
|
||
his new package GNU gettext. Translation volunteers have contributed
|
||
catalogs of the library's messages in Spanish, German, and Korean.
|
||
|
||
* For compatibility with XPG4, Ulrich Drepper has contributed the `gencat'
|
||
program and the `catgets' function for reading the catalog files it
|
||
creates. (The <libintl.h> interface is preferred; we include the
|
||
<nl_types.h> interface using `catgets' only for source compatibility with
|
||
programs already written to use it.)
|
||
|
||
* New header file <values.h> gives SVID-compatible names for <limits.h>
|
||
constants.
|
||
|
||
* Various new macros, declarations, and small header files for compatibility
|
||
with 4.4 BSD.
|
||
|
||
* New function `group_member' is a convenient way to check if a process has
|
||
a given effective group ID.
|
||
|
||
* When using GCC 2.7 and later, the socket functions are now declared in a
|
||
special way so that passing an argument of type `struct sockaddr_in *',
|
||
`struct sockaddr_ns *', or `struct sockaddr_un *' instead of the generic
|
||
`struct sockaddr *' type, does not generate a type-clash warning.
|
||
|
||
* New function `error' declared in header file <error.h> is a convenient
|
||
function for printing error messages and optionally exiting; this is the
|
||
canonical function used in GNU programs. The new functions `err', `warn',
|
||
and friends in header file <err.h> are the canonical 4.4 BSD interface for
|
||
doing the same thing.
|
||
|
||
* The <glob.h> interface has several new flags from 4.4 BSD that extend the
|
||
POSIX.2 `glob' function to do ~ and {...} expansion.
|
||
|
||
* New function `unsetenv' complements `setenv' for compatibility with 4.4 BSD.
|
||
`clearenv' which is used in POSIX.9 is also available.
|
||
|
||
* New function `getsid' returns session ID number on systems that support it.
|
||
|
||
* We have incorporated the 4.4 BSD `db' library (version 1.85). New header
|
||
files <db.h> and <mpool.h> provide a rich set of functions for several
|
||
types of simple databases stored in memory and in files, and <ndbm.h> is
|
||
an old `ndbm'-compatible interface using the `db' functions. Link with
|
||
`-ldb' to get these functions.
|
||
|
||
* New macro `strdupa' copies a string like `strdup', but uses local stack
|
||
space from `alloca' instead of dynamic heap space from `malloc'.
|
||
|
||
* New function `strnlen' is like `strlen' but searches only a given maximum
|
||
number of characters for the null terminator. `stpncpy', `strndup' and
|
||
`strndupa' are similar variants for the `stpcpy', `strdup' and `strdupa'
|
||
function.
|
||
|
||
* New function `statfs' in header <sys/statfs.h>.
|
||
|
||
* The new <argz.h> and <envz.h> interfaces contributed by Miles Bader
|
||
provide convenient functions for operating on blocks of null-terminated
|
||
strings.
|
||
|
||
* A new suite of functions in <utmp.h> handle all the details of reading
|
||
and writing the utmp file.
|
||
|
||
* An implementation of the NIS/YP(tm) based NSS service was contributed by
|
||
Thorsten Kukuk.
|
||
|
||
* Paul Eggert and Ulrich Drepper modified the `strftime' function to be
|
||
completely POSIX compliant and also implemented the extended functionality
|
||
to handle alternate digit representation and alternate era date formats.
|
||
|
||
* Ulrich Drepper provided an implementation of the `strptime' function
|
||
defined in XPG4.2 which transforms a string into a `struct tm' value.
|
||
|
||
* Paul Eggert provided the tzselect shell script as part of the timezone
|
||
code. The shell script makes it easy to select the correct timezone
|
||
specification.
|
||
|
||
* The implementation of the malloc family of functions is completely replaced
|
||
by a new implementation by Doug Lea with many improvements by Wolfram Gloger.
|
||
The implementation uses the mmap function (if available) and it is
|
||
optimized for the use in multi threaded programs.
|
||
|
||
* Ulrich Drepper contributed a MD5 "encryption" for the crypt family of
|
||
functions. This new functionality is usable by specifying a special
|
||
salt string and it is compatible with implementation on *BSD systems.
|
||
|
||
* Lots of functions from the XPG4.2 standard were added by Ulrich Drepper:
|
||
`getsubopt' to handle second level command line options, `bsd_signal'
|
||
to access BSD style `signal' functionality, the obsolete `regexp' style
|
||
expression matcher.
|
||
|
||
* the `lchown' function is available on system which support this
|
||
functionality.
|
||
|
||
* The implementation of the shadow password handling function was contributed
|
||
by Ulrich Drepper.
|
||
|
||
* David Mosberger-Tang changed the SunRPC implementation to be 64bit safe.
|
||
|
||
* POSIX.1g support was added. The <sys/select.h> header is available,
|
||
`isfdtype' and `pselect' are implemented. Craig Metz contributed an
|
||
implementation of `getaddrinfo'.
|
||
|
||
Version 1.09
|
||
|
||
* For cross-compilation you should now set `BUILD_CC' instead of `HOST_CC'.
|
||
|
||
* New header file <fstab.h> and new functions `getfsspec', `getfsent' and
|
||
friends, for parsing /etc/fstab. This code comes from 4.4 BSD.
|
||
|
||
* The new function `daemon' from 4.4 BSD is useful for server programs that
|
||
want to put themselves in the background.
|
||
|
||
* Joel Sherrill has contributed support for several standalone boards that
|
||
run without an operating system.
|
||
|
||
* `printf', `scanf' and friends now accept a `q' type modifier for long
|
||
long int as well as `ll'. Formats using these might be `%qu' or `%lld'.
|
||
|
||
* All of the code taken from BSD (notably most of the math and networking
|
||
routines) has been updated from the BSD 4.4-Lite release.
|
||
|
||
* The resolver code has been updated from the BIND-4.9.3-BETA9 release.
|
||
|
||
* The new functions `getdomainname' and `setdomainname' fetch or change the
|
||
YP/NIS domain name. These are system calls which exist on systems which
|
||
have YP (aka NIS).
|
||
|
||
* The time zone data files have been updated for the latest international
|
||
conventions.
|
||
|
||
* The SunRPC programs `portmap' and `rpcinfo' are now installed in
|
||
$(sbindir) (usually /usr/local/sbin) instead of $(bindir).
|
||
|
||
Version 1.08
|
||
|
||
* The C library now includes support for Sun RPC, from Sun's free
|
||
RPCSRC-4.0 distribution. The `portmap', `rpcinfo', and `rpcgen' programs
|
||
are included. (There is still no support for YP.)
|
||
|
||
* Tom Quinn has contributed a port of the C library to SGI machines running
|
||
Irix 4 (mips-sgi-irix4).
|
||
|
||
* The new `lockf' function is a simplified interface to the locking
|
||
facilities of `fcntl', included for compatibility.
|
||
|
||
* New time functions `timegm', `timelocal', and `dysize' for compatibility.
|
||
|
||
* New header file <sys/timeb.h> and new function `ftime' for compatibility.
|
||
|
||
* New header files <poll.h> and <sys/poll.h> and new function `poll' for
|
||
compatibility.
|
||
|
||
* The error message printed by `assert' for a failed assertion now includes
|
||
the name of the program (if using GNU ld) and the name of the calling
|
||
function (with versions of GCC that support this).
|
||
|
||
* The `psignal' function is now declared in <signal.h>, not <stdio.h>.
|
||
|
||
* The library now includes the <sys/mman.h> header file and memory
|
||
management functions `mmap', `munmap', `mprotect', `msync', and
|
||
`madvise', on systems that support those facilities.
|
||
|
||
* The interface for `mcheck' has changed slightly: the function called to
|
||
abort the program when an allocation inconsistency is detected now takes
|
||
an argument that indicates the type of failure. The new function
|
||
`mprobe' lets you request a consistency check for a particular block at
|
||
any time (checks are normally done only when you call `free' or `realloc'
|
||
on a block).
|
||
|
||
* It is now possible to easily cross-compile the C library, building on one
|
||
system a library to run on another machine and/or operating system. All
|
||
you need to do is set the variable `HOST_CC' in `configparms' to the
|
||
native compiler for programs to run on the machine you are building on (a
|
||
few generator programs are used on Unix systems); set `CC' to the
|
||
cross-compiler.
|
||
|
||
* The new function `fexecve' (only implemented on the GNU system) executes
|
||
a program file given a file descriptor already open on the file.
|
||
|
||
Version 1.07
|
||
|
||
* Brendan Kehoe has contributed most of a port to the DEC Alpha
|
||
running OSF/1 (alpha-dec-osf1). He says it is 75% complete.
|
||
|
||
* You can set the variable `libprefix' in `configparms' to specify a prefix
|
||
to be prepended to installed library files; this makes it easy to install
|
||
the GNU C library to be linked as `-lgnuc' or whatever.
|
||
|
||
* The new `stpncpy' is a cross between `stpcpy' and `strncpy': It
|
||
copies a limited number of characters from a string, and returns the
|
||
address of the last character written.
|
||
|
||
* You no longer need to check for whether the installed `stddef.h' is
|
||
compatible with the GNU C library. configure now checks for you.
|
||
|
||
* You can now define a per-stream `fileno' function to convert the
|
||
stream's cookie into an integral file descriptor.
|
||
|
||
* ``malloc (0)'' no longer returns a null pointer. Instead, it
|
||
allocates zero bytes of storage, and returns a unique pointer which
|
||
you can pass to `realloc' or `free'. The behavior is undefined if
|
||
you dereference this pointer.
|
||
|
||
* The C library now runs on Sony NEWS m68k machines running either
|
||
NewsOS 3 or NewsOS 4.
|
||
|
||
* The new `syscall' function is a system-dependent primitive function
|
||
for invoking system calls. It has the canonical behavior on Unix
|
||
systems, including unreliable return values for some calls (such as
|
||
`pipe', `fork' and `getppid').
|
||
|
||
* The error code `EWOULDBLOCK' is now obsolete; it is always defined
|
||
to `EAGAIN', which is the preferred name. On systems whose kernels
|
||
use two distinct codes, the C library now translates EWOULDBLOCK to
|
||
EAGAIN in every system call function.
|
||
|
||
Version 1.06
|
||
|
||
* The GNU C Library Reference Manual is now distributed with the library.
|
||
`make dvi' will produce a DVI file of the printed manual.
|
||
`make info' will produce Info files that you can read on line using C-h i
|
||
in Emacs or the `info' program.
|
||
Please send comments on the manual to bug-glibc-manual@prep.ai.mit.edu.
|
||
|
||
* The library now supports SVR4 on i386s (i386-unknown-sysv4).
|
||
|
||
* Brendan Kehoe has contributed a port to Sun SPARCs running Solaris 2.
|
||
|
||
* Jason Merrill has contributed a port to the Sequent Symmetry running
|
||
Dynix version 3 (i386-sequent-dynix).
|
||
|
||
* The library has been ported to i386s running SCO 3.2.4 (also known as SCO
|
||
ODT 2.0; i386-unknown-sco3.2.4) or SCO 3.2 (i386-unknown-sco3.2).
|
||
|
||
* New function `memory_warnings' lets you arrange to get warnings when
|
||
malloc is running out of memory to allocate, like Emacs gives you.
|
||
|
||
* The C library now contains the relocating allocator used in Emacs 19 for
|
||
its editing buffers. This allocator (ralloc) minimizes allocation
|
||
overhead and fragmentation by moving allocated regions around whenever it
|
||
needs to. You always refer to a ralloc'd region with a "handle" (a
|
||
pointer to a pointer--an object of type `void **').
|
||
|
||
* There is a new `printf' format: `%m' gives you the string corresponding
|
||
to the error code in `errno'.
|
||
|
||
* In `scanf' formats, you can now use `%as' or `%a[' to do the normal `%s'
|
||
or `%[' conversion, but instead of filling in a fixed-sized buffer you
|
||
pass, the `a' modifier says to fill in a `char **' you pass with a
|
||
malloc'd string.
|
||
|
||
* The `fnmatch' function supports the new flag bits `FNM_LEADING_DIR' and
|
||
`FNM_CASEFOLD'. `FNM_LEADING_DIR' lets a pattern like `foo*' match a
|
||
name like `foo/bar'. `FNM_CASEFOLD' says to ignore case in matching.
|
||
|
||
* `mkstemp' is a traditional Unix function to atomically create and open a
|
||
uniquely-named temporary file.
|
||
|
||
Version 1.05
|
||
|
||
* The standard location for the file that says what the local timezone is
|
||
has changed again. It is now `/usr/local/etc/localtime' (or more
|
||
precisely, `${prefix}/etc/localtime') rather than `/etc/localtime'.
|
||
|
||
* The distribution no longer contains any files with names longer than 14
|
||
characters.
|
||
|
||
* `struct ttyent' has two new flag bits: TTY_TRUSTED and TTY_CONSOLE.
|
||
These are set by the new `trusted' and `console' keywords in `/etc/ttys'.
|
||
|
||
* New functions `ttyslot' and `syslog' from 4.4 BSD.
|
||
|
||
Version 1.04
|
||
|
||
* The configuration process has changed quite a bit. The `configure'
|
||
script is now used just like the configuration scripts for other GNU
|
||
packages. The `sysdeps' directory hierarchy is much rearranged.
|
||
The file `INSTALL' explains the new scheme in detail.
|
||
|
||
* The header files no longer need to be processed into ANSI C and
|
||
traditional C versions. There is just one set of files to install, and
|
||
it will work with ANSI or old C compilers (including `gcc -traditional').
|
||
|
||
* Brendan Kehoe and Ian Lance Taylor have ported the library to the
|
||
MIPS DECStation running Ultrix 4.
|
||
|
||
* The Sun 4 startup code (crt0) can now properly load SunOS 4 shared libraries.
|
||
Tom Quinn contributed the initial code. The GNU C library can NOT yet be
|
||
made itself into a shared library.
|
||
|
||
* Yet further improved support for the i386, running 4.3 BSD-like systems
|
||
(such as Mach 3 with the Unix single-server), or System V.
|
||
|
||
* New function `strncasecmp' to do case-insensitive string comparison
|
||
with limited length.
|
||
|
||
* New function `strsep' is a reentrant alternative to `strtok'.
|
||
|
||
* New functions `scandir' and `alphasort' for searching directories.
|
||
|
||
* New function `setenv' is a better interface to `putenv'.
|
||
|
||
* Ian Lance Taylor has contributed an implementation of the SVID `ftw'
|
||
function for traversing a directory tree.
|
||
|
||
* The GNU obstack package is now also part of the C library.
|
||
The new function `open_obstack_stream' creates a stdio stream that
|
||
writes onto an obstack; `obstack_printf' and `obstack_vprintf' do
|
||
formatted output directly to an obstack.
|
||
|
||
* Miscellaneous new functions: reboot, nice, sigaltstack (4.4 BSD only),
|
||
cfmakeraw, getusershell, getpass, swab, getttyent, seteuid, setegid.
|
||
|
||
* `FNM_FILE_NAME' is another name for `FNM_PATHNAME', used with `fnmatch'.
|
||
|
||
* The new functions `strfry' and `memfrob' do mysterious and wonderful
|
||
things to your strings.
|
||
|
||
* There are some new test programs: test-fseek, testmb, and testrand.
|
||
|
||
* Some work has been done to begin porting the library to 4.4 BSD and Linux.
|
||
These ports are not finished, but are a good starting place for really
|
||
supporting those systems.
|
||
|
||
* `/etc/localtime' is now the standard location for the file that says what
|
||
the local timezone is, rather than `/usr/local/lib/zoneinfo/localtime'.
|
||
This follows the general principle that `/etc' is the place for all local
|
||
configuration files.
|
||
|
||
* The C library header files now use `extern "C"' when used by the C++
|
||
compiler, so the C library should now work with C++ code.
|
||
|
||
* The header file <bstring.h> is gone. <string.h> now declares bcopy,
|
||
bcmp, bzero, and ffs.
|
||
|
||
* Mike Haertel (of GNU e?grep and malloc fame) has written a new sorting
|
||
function which uses the `merge sort' algorithm, and is said to be
|
||
significantly faster than the old GNU `qsort' function. Merge sort is
|
||
now the standard `qsort' function. The new algorithm can require a lot
|
||
of temporary storage; so, the old sorting function is called when the
|
||
required storage is not available.
|
||
|
||
* The C library now includes Michael Glad's Ultra Fast Crypt, which
|
||
provides the Unix `crypt' function, plus some other entry points.
|
||
Because of the United States export restriction on DES implementations,
|
||
we are distributing this code separately from the rest of the C library.
|
||
There is an extra distribution tar file just for crypt; it is called
|
||
`glibc-VERSION-crypt.tar.Z', e.g. `glibc-1.04-crypt.tar.Z'. You can just
|
||
unpack the crypt distribution along with the rest of the C library and
|
||
build; you can also build the library without getting crypt. Users
|
||
outside the USA can get the crypt distribution via anonymous FTP from
|
||
ftp.uni-c.dk [129.142.6.74], or another archive site outside the U.S.
|
||
|
||
* The code and header files taken from 4.4 BSD have been updated with the
|
||
latest files released from Berkeley.
|
||
|
||
----------------------------------------------------------------------
|
||
Copyright information:
|
||
|
||
Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
|
||
|
||
Permission is granted to anyone to make or distribute verbatim copies
|
||
of this document as received, in any medium, provided that the
|
||
copyright notice and this permission notice are preserved,
|
||
thus giving the recipient permission to redistribute in turn.
|
||
|
||
Permission is granted to distribute modified versions
|
||
of this document, or of portions of it,
|
||
under the above conditions, provided also that they
|
||
carry prominent notices stating who last changed them.
|
||
|
||
Local variables:
|
||
version-control: never
|
||
end:
|