Update.
[platform/upstream/glibc.git] / NEWS
diff --git a/NEWS b/NEWS
index dfd3cd7..7c74a79 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,14 +1,25 @@
-GNU C Library NEWS -- history of user-visible changes.  1997-03-18
+GNU C Library NEWS -- history of user-visible changes.  1999-02-07
 
-Copyright (C) 1992, 93, 94, 95, 96, 97 Free Software Foundation, Inc.
+Copyright (C) 1992, 93, 94, 95, 96, 97, 98, 99 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>.
+<bugs@gnu.org>.  Questions and suggestions should be send to
+<bug-glibc@gnu.org>.
+\f
+Version 2.1.1
+
+* New ISO C 9x function _exit, imaxabs, and imaxdiv are added.
 \f
 Version 2.1
 
+* Richard Henderson corrected size of struct timeval on Linux/Alpha to
+  conform to POSIX member type requirements.  Symbol versions have been
+  adjusted as needed within the library, and for direct use by applications,
+  but there is potential for problems if third-party libraries use
+  struct timeval as part of their interface.  This does not present
+  a problem for X and other "essential" system libraries.
+
 * An additional locale model to support C++ Standard Library locale
   model and probably more was implemented by Ulrich Drepper.
 
@@ -18,24 +29,441 @@ Version 2.1
 * Miles Bader provided the `argp' function family to support hierachical
   command line argument parsing, layered on top of getopt.
 
-* strtod accepts new hexadecimal floating-point format from ISO C 9X
+* strtod accepts new hexadecimal floating-point format from ISO C 9X.
 
 * printf has two new specifiers %a and %A to print hexadecimal flaoting-point
-  numbers
+  numbers.
+
+* scanf recognizes the %a and %A format for scanning floating point numbers.
 
-* scanf recognizes the %A format for scanning floating point numbers
+* the new headers <stdint.h> and <inttypes.h> from ISO C 9X provides
+  information and interfaces for the available integer types.
 
-* the new header <inttypes.h> from ISO C 9X provides information and
-  interfaces for the available integer types
+* about 130 new math functions were added to implement the ISO C9x math
+  library.
 
 * the new header <complex.h> contains definitions of the complex math
-  functions from ISO C 9X
+  functions from ISO C 9X.
+
+* the new header <tgmath.h> defines generic macros to use complex or
+  real valued functions.
+
+* Thorsten Kukuk provided an implementation for NIS+, securelevel 0, 1 and 2.
+
+* Andreas Jaeger provided a test suite for the math library.
 
-* Thorsten Kukuk provided an implementation for NIS+, securelevel 0 and 1.
-  The implementation for securelevel 2 will follow as soon as the Diffie-
-  Hellman patent expired.
+* Mark Kettenis implemented the utmpx interface and an utmp daemon.
 
-* Andreas Jaeger provided a test suite for the math library
+* Ulrich Drepper added character set conversion functions (iconv).
+
+* Optimized string functions have been added.
+
+* The localedata addon is now part of glibc.
+
+* An implementation of profiling shared libraries was added by Ulrich Drepper.
+
+* Thorsten Kukuk and Ulrich Drepper provided an implementation for a caching
+  daemon for NSS (nscd).
+
+  Missing a better place here are some numbers on improvements.  Under
+  Linux 2.1.125 un-tar-ing the kernel sources takes
+
+                                 user  system     wall
+
+    using local files          12.19s   6.88s   22.91s
+
+    using NIS                  13.92s   8.91s   26.34s
+
+    using NIS & nscd           10.37s   7.34s   25.30s
+
+    using NIS+                 27.57s  30.37s  640.46s
+
+    using NIS+ & nscd           10.25s   7.83s   26.51s
+
+    using NIS & old nscd [1]   13.83s   8.32s   29.60s
+
+  Keep in mind that non-namelookup related operations dominate above times.
+  It was just a common complain that using NIS+ unpacking the kernel is
+  horribly slow.
+
+  [1] The old nscd implementation is not available anymore since it was
+  distributed with glibc up to version 2.0.98 and thus is now replaced.
+
+* Tim Waugh provided an implementation of the POSIX.2 wordexp function family.
+
+* Mark Kettenis provided a Hesiod NSS module.
+
+* The ELF dynamic loader knows how to process dynamic string tokens ($ORIGIN
+  and $PLATFORM) in RPATHs and similar strings (Ulrich Drepper).
+
+* rcmd can now handle netgroups (Dick Streefland).
+
+* A port to the ARM was contributed by Phil Blundell, Pat Beirne and Scott
+  Bambrough.
+
+* Support for the IPv6 protocol has been added to the socket API, as per the
+  latest draft standards.
+
+* Support for Linux 2.2 has been added.
+
+* Interface changes relative to the latest 2.0.x release:
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+addseverity                    NEW: Unix98
+alphasort64                    NEW: LFS
+argp_err_exit_status           NEW: argp, GNU ext
+argp_error                     NEW: argp, GNU ext
+argp_failure                   NEW: argp, GNU ext
+argp_help                      NEW: argp, GNU ext
+argp_parse                     NEW: argp, GNU ext
+argp_program_bug_address       NEW: argp, GNU ext
+argp_program_version           NEW: argp, GNU ext
+argp_program_version_hook      NEW: argp, GNU ext
+argp_state_help                        NEW: argp, GNU ext
+argp_usage                     NEW: argp, GNU ext
+authdes_create                 NEW: Secure RPC
+authdes_getucred               NEW: Secure RPC
+authdes_pk_create              NEW: Secure RPC
+backtrace                      NEW: GNU ext.
+backtrace_symbols              NEW: GNU ext.
+backtrace_symbols_fd           NEW: GNU ext.
+cacos                          NEW: ISO C 9x
+cacosf                         NEW: ISO C 9x
+cacosh                         NEW: ISO C 9x
+cacoshf                                NEW: ISO C 9x
+cacoshl                                NEW: ISO C 9x
+cacosl                         NEW: ISO C 9x
+capget                         NEW: kernel
+capset                         NEW: kernel
+carg                           NEW: ISO C 9x
+cargf                          NEW: ISO C 9x
+cargl                          NEW: ISO C 9x
+casin                          NEW: ISO C 9x
+casinf                         NEW: ISO C 9x
+casinh                         NEW: ISO C 9x
+casinhf                                NEW: ISO C 9x
+casinhl                                NEW: ISO C 9x
+casinl                         NEW: ISO C 9x
+catan                          NEW: ISO C 9x
+catanf                         NEW: ISO C 9x
+catanh                         NEW: ISO C 9x
+catanhf                                NEW: ISO C 9x
+catanhl                                NEW: ISO C 9x
+catanl                         NEW: ISO C 9x
+cbc_crypt                      NEW: Secure RPC
+ccos                           NEW: ISO C 9x
+ccosf                          NEW: ISO C 9x
+ccosh                          NEW: ISO C 9x
+ccoshf                         NEW: ISO C 9x
+ccoshl                         NEW: ISO C 9x
+ccosl                          NEW: ISO C 9x
+cexp                           NEW: ISO C 9x
+cexpf                          NEW: ISO C 9x
+cexpl                          NEW: ISO C 9x
+cimag                          NEW: ISO C 9x
+cimagf                         NEW: ISO C 9x
+cimagl                         NEW: ISO C 9x
+clearerr_locked                        REMOVED
+clntunix_create                        NEW: sunrpc ext
+clog                           NEW: ISO C 9x
+clog10                         NEW: ISO C 9x
+clog10f                                NEW: ISO C 9x
+clog10l                                NEW: ISO C 9x
+clogf                          NEW: ISO C 9x
+clogl                          NEW: ISO C 9x
+conj                           NEW: ISO C 9x
+conjf                          NEW: ISO C 9x
+conjl                          NEW: ISO C 9x
+cpow                           NEW: ISO C 9x
+cpowf                          NEW: ISO C 9x
+cpowl                          NEW: ISO C 9x
+cproj                          NEW: ISO C 9x
+cprojf                         NEW: ISO C 9x
+cprojl                         NEW: ISO C 9x
+creal                          NEW: ISO C 9x
+crealf                         NEW: ISO C 9x
+creall                         NEW: ISO C 9x
+creat64                                NEW: LFS
+csin                           NEW: ISO C 9x
+csinf                          NEW: ISO C 9x
+csinh                          NEW: ISO C 9x
+csinhf                         NEW: ISO C 9x
+csinhl                         NEW: ISO C 9x
+csinl                          NEW: ISO C 9x
+csqrt                          NEW: ISO C 9x
+csqrtf                         NEW: ISO C 9x
+csqrtl                         NEW: ISO C 9x
+ctan                           NEW: ISO C 9x
+ctanf                          NEW: ISO C 9x
+ctanh                          NEW: ISO C 9x
+ctanhf                         NEW: ISO C 9x
+ctanhl                         NEW: ISO C 9x
+ctanl                          NEW: ISO C 9x
+des_setparity                  NEW: Secure RPC
+ecb_crypt                      NEW: Secure RPC
+endutxent                      NEW: Unix98
+exp10                          NEW: ISO C 9x
+exp10f                         NEW: ISO C 9x
+exp10l                         NEW: ISO C 9x
+exp2                           NEW: ISO C 9x
+exp2f                          NEW: ISO C 9x
+exp2l                          NEW: ISO C 9x
+fattach                                NEW: STREAMS
+fdetach                                NEW: STREAMS
+fdim                           NEW: ISO C 9x
+fdimf                          NEW: ISO C 9x
+fdiml                          NEW: ISO C 9x
+feclearexcept                  NEW: ISO C 9x
+fegetenv                       NEW: ISO C 9x
+fegetexceptflag                        NEW: ISO C 9x
+fegetround                     NEW: ISO C 9x
+feholdexcept                   NEW: ISO C 9x
+feof_locked                    REMOVED
+feraiseexcept                  NEW: ISO C 9x
+ferror_locked                  REMOVED
+fesetenv                       NEW: ISO C 9x
+fesetexceptflag                        NEW: ISO C 9x
+fesetround                     NEW: ISO C 9x
+fetestexcept                   NEW: ISO C 9x
+feupdateenv                    NEW: ISO C 9x
+fflush_locked                  REMOVED
+ffsl                           NEW: GNU ext.
+ffsll                          NEW: GNU ext.
+fgetpos64                      NEW: LFS
+fgets_unlocked                 NEW: GNU ext.
+fileno_locked                  REMOVED
+fma                            NEW: ISO C 9x
+fmaf                           NEW: ISO C 9x
+fmal                           NEW: ISO C 9x
+fmax                           NEW: ISO C 9x
+fmaxf                          NEW: ISO C 9x
+fmaxl                          NEW: ISO C 9x
+fmin                           NEW: ISO C 9x
+fminf                          NEW: ISO C 9x
+fminl                          NEW: ISO C 9x
+fmtmsg                         NEW: Unix98
+fopen64                                NEW: LFS
+fputc_locked                   REMOVED
+fputs_unlocked                 NEW: GNU ext.
+fread_unlocked                 NEW: GNU ext.
+freopen64                      NEW: LFS
+fseeko                         NEW: Unix98
+fsetpos64                      NEW: LFS
+fstatfs64                      NEW: LFS
+fstatvfs                       NEW: Unix98
+fstatvfs64                     NEW: LFS
+ftello                         NEW: Unix98
+ftello64                       NEW: LFS
+ftruncate64                    NEW: LFS
+ftw64                          NEW: LFS
+fwrite_unlocked                        NEW: GNU ext.
+gai_strerror                   NEW: IPv6
+gamma_r                                REMOVED
+gammaf_r                       REMOVED
+gammal_r                       REMOVED
+getchar_locked                 REMOVED
+getdate                                NEW: Unix98
+getdate_err                    NEW: Unix98
+getdate_r                      NEW: GNU ext.
+getmsg                         NEW: STREAMS
+getnameinfo                    NEW: IPv6
+getnetname                     NEW: Secure RPC
+getpmsg                                NEW: STREAMS
+getpt                          NEW: Unix98 PTY
+getrlimit64                    NEW: LFS
+getutxent                      NEW: Unix98
+getutxid                       NEW: Unix98
+getutxline                     NEW: Unix98
+glob64                         NEW: GNU ext.
+globfree64                     NEW: GNU ext.
+gnu_get_libc_release           NEW: GNU ext.
+gnu_get_libc_version           NEW: GNU ext.
+grantpt                                NEW: Unix98 PTY
+host2netname                   NEW: Secure RPC
+iconv                          NEW: iconv
+iconv_close                    NEW: iconv
+iconv_open                     NEW: iconv
+if_freenameindex               NEW: IPv6
+if_indextoname                 NEW: IPv6
+if_nameindex                   NEW: IPv6
+if_nametoindex                 NEW: IPv6
+in6addr_any                    NEW: IPv6
+in6addr_loopback               NEW: IPv6
+inet6_isipv4mapped             NEW: IPv6
+isastream                      NEW: STREAMS
+iswblank                       NEW: GNU ext.
+key_decryptsession             NEW: Secure RPC
+key_decryptsession_pk          NEW: Secure RPC
+key_encryptsession             NEW: Secure RPC
+key_encryptsession_pk          NEW: Secure RPC
+key_gendes                     NEW: Secure RPC
+key_get_conv                   NEW: Secure RPC
+key_secretkey_is_set           NEW: Secure RPC
+key_setnet                     NEW: Secure RPC
+key_setsecret                  NEW: Secure RPC
+llrint                         NEW: ISO C 9x
+llrintf                                NEW: ISO C 9x
+llrintl                                NEW: ISO C 9x
+llround                                NEW: ISO C 9x
+llroundf                       NEW: ISO C 9x
+llroundl                       NEW: ISO C 9x
+log2                           NEW: ISO C 9x
+log2f                          NEW: ISO C 9x
+log2l                          NEW: ISO C 9x
+lrint                          NEW: ISO C 9x
+lrintf                         NEW: ISO C 9x
+lrintl                         NEW: ISO C 9x
+lround                         NEW: ISO C 9x
+lroundf                                NEW: ISO C 9x
+lroundl                                NEW: ISO C 9x
+lseek64                                NEW: LFS
+makecontext                    NEW: Unix98
+mempcpy                                NEW: GNU ext.
+mmap64                         NEW: LFS
+moncontrol                     REMOVED
+modify_ldt                     NEW: kernel
+nan                            NEW: ISO C 9x
+nanf                           NEW: ISO C 9x
+nanl                           NEW: ISO C 9x
+nearbyint                      NEW: ISO C 9x
+nearbyintf                     NEW: ISO C 9x
+nearbyintl                     NEW: ISO C 9x
+netname2host                   NEW: Secure RPC
+netname2user                   NEW: Secure RPC
+nexttoward                     NEW: ISO C 9x
+nexttowardf                    NEW: ISO C 9x
+nexttowardl                    NEW: ISO C 9x
+nftw                           NEW: Unix98
+nftw64                         NEW: LFS
+open64                         NEW: LFS
+passwd2des                     NEW: Secure RPC
+pow10                          NEW: GNU ext.
+pow10f                         NEW: GNU ext.
+pow10l                         NEW: GNU ext.
+pread                          NEW: Unix98
+pread64                                NEW: LFS
+printf_size                    NEW: GNU ext.
+printf_size_info               NEW: GNU ext.
+profil_counter                 REMOVED
+pthread_mutexattr_getkind_np   REPLACED
+pthread_mutexattr_setkind_np   REPLACED
+ptsname                                NEW: Unix98 PTY
+ptsname_r                      NEW: Unix98 PTY
+putc_locked                    REMOVED
+putchar_locked                 REMOVED
+putgrent                       NEW: GNU ext.
+putmsg                         NEW: STREAMS
+putpmsg                                NEW: STREAMS
+pututxline                     NEW: Unix98
+pwrite                         NEW: Unix98
+pwrite64                       NEW: LFS
+readdir64                      NEW: LFS
+readdir64_r                    NEW: LFS
+remquo                         NEW: ISO C 9x
+remquof                                NEW: ISO C 9x
+remquol                                NEW: ISO C 9x
+round                          NEW: ISO C 9x
+roundf                         NEW: ISO C 9x
+roundl                         NEW: ISO C 9x
+rtime                          NEW: GNU ext.
+scalbln                                NEW: ISO C 9x
+scalblnf                       NEW: ISO C 9x
+scalblnl                       NEW: ISO C 9x
+scandir64                      NEW: LFS
+sendfile                       NEW: kernel
+setcontext                     NEW: Unix98
+setrlimit64                    NEW: LFS
+setutxent                      NEW: Unix98
+sighold                                NEW: Unix98
+sigignore                      NEW: Unix98
+sigqueue                       NEW: POSIX.1b
+sigrelse                       NEW: Unix98
+sigset                         NEW: POSIX.1b
+sigtimedwait                   NEW: POSIX.1b
+sigwaitinfo                    NEW: POSIX.1b
+sincos                         NEW: GNU ext.
+sincosf                                NEW: GNU ext.
+sincosl                                NEW: GNU ext.
+statfs64                       NEW: LFS
+statvfs                                NEW: Unix98
+statvfs64                      NEW: LFS
+strcasestr                     NEW: GNU ext.
+strtoimax                      NEW: ISO C 9x
+strtoumax                      NEW: ISO C 9x
+strverscmp                     NEW: GNU ext.
+svcauthdes_stats               NEW: Secure RPC
+svcunix_create                 NEW: sunrpc etx
+svcunixfd_create               NEW: sunrpc ext
+swapcontext                    NEW: Unix98
+tcgetsid                       NEW: Unix98 PTY
+tdestroy                       NEW: GNU ext.
+tgamma                         NEW: ISO C 9x
+tgammaf                                NEW: ISO C 9x
+tgammal                                NEW: ISO C 9x
+tmpfile64                      NEW: LFS
+trunc                          NEW: ISO C 9x
+truncate64                     NEW: LFS
+truncf                         NEW: ISO C 9x
+truncl                         NEW: ISO C 9x
+umount2                                NEW: kernel
+unlockpt                       NEW: Unix98 PTY
+updwtmpx                       NEW: Unix98
+user2netname                   NEW: Secure RPC
+utmpxname                      NEW: Unix98
+versionsort                    NEW: GNU ext.
+versionsort64                  NEW: GNU ext.
+waitid                         NEW: Unix98
+wcscasecmp                     NEW: GNU ext.
+wcsncasecmp                    NEW: GNU ext.
+wcsnlen                                NEW: GNU ext.
+wcstoimax                      NEW: ISO C 9x
+wcstoll                                NEW: ISO C 9x
+wcstoull                       NEW: ISO C 9x
+wcstoumax                      NEW: ISO C 9x
+wcswcs                         NEW: Unix98
+wordexp                                NEW: POSIX.2
+wordfree                       NEW: POSIX.2
+write_profiling                        REMOVED
+xdecrypt                       NEW: Secure RPC
+xdr_authdes_cred               NEW: Secure RPC
+xdr_authdes_verf               NEW: Secure RPC
+xdr_cryptkeyarg                        NEW: Secure RPC
+xdr_cryptkeyarg2               NEW: Secure RPC
+xdr_cryptkeyres                        NEW: Secure RPC
+xdr_getcredres                 NEW: Secure RPC
+xdr_key_netstarg               NEW: Secure RPC
+xdr_key_netstres               NEW: Secure RPC
+xdr_keybuf                     NEW: Secure RPC
+xdr_keystatus                  NEW: Secure RPC
+xdr_netnamestr                 NEW: Secure RPC
+xdr_sizeof                     NEW: Secure RPC
+xdr_unixcred                   NEW: sunrpc ext
+xencrypt                       NEW: Secure RPC
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\f
+Version 2.0.6
+
+* more bug fixes
+
+\f
+Version 2.0.5
+
+* more bug fixes
+
+* inet_ntoa is thread-safe
+
+* updwtmp is moved from libutil to libc
+
+* rewrite of cbrt function
+
+* update of timezone data
+\f
+Version 2.0.4
+
+* more bug fixes
+\f
+Version 2.0.3
+
+* more bug fixes
 \f
 Version 2.0.2
 
@@ -179,12 +607,6 @@ Version 2.0
   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
@@ -465,7 +887,7 @@ Version 1.06
   `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.
+  Please send comments on the manual to bug-glibc-manual@gnu.org.
 
 * The library now supports SVR4 on i386s (i386-unknown-sysv4).