Update.
authorUlrich Drepper <drepper@redhat.com>
Tue, 17 Feb 1998 15:51:21 +0000 (15:51 +0000)
committerUlrich Drepper <drepper@redhat.com>
Tue, 17 Feb 1998 15:51:21 +0000 (15:51 +0000)
1998-02-17  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

* math/libm.map: Move all symbols that are new in glibc 2.1 to
version GLIBC_2.1.

1998-02-17  Ulrich Drepper  <drepper@cygnus.com>

* stdio-common/vfscanf.c (inchar): Check c for being EOF before
trying to read another character.

1998-02-05  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

* nis/nss_nis/nis-alias.c (_nss_nis_getaliasbyname_r): Convert
name to lowercase.

* nis/nss_nis/nis-network.c (_nss_nis_getnetbyname_r): Convert
name to lowercase, add test for big enough buffer.

1998-02-03  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

* sysdeps/unix/sysv/linux/alpha/rt_sigaction.S (rt_sigreturn):
Make compatible with older kernels. Patch by Richard Henderson.

ChangeLog
math/libm.map
nis/nss_nis/nis-alias.c
nis/nss_nis/nis-network.c
stdio-common/vfscanf.c
sysdeps/unix/sysv/linux/alpha/rt_sigaction.S

index 7b04fbf..26002be 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,26 @@
+1998-02-17  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
+
+       * math/libm.map: Move all symbols that are new in glibc 2.1 to
+       version GLIBC_2.1.
+
+1998-02-17  Ulrich Drepper  <drepper@cygnus.com>
+
+       * stdio-common/vfscanf.c (inchar): Check c for being EOF before
+       trying to read another character.
+
+1998-02-05  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
+
+       * nis/nss_nis/nis-alias.c (_nss_nis_getaliasbyname_r): Convert
+       name to lowercase.
+
+       * nis/nss_nis/nis-network.c (_nss_nis_getnetbyname_r): Convert
+       name to lowercase, add test for big enough buffer.
+
+1998-02-03  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
+
+       * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S (rt_sigreturn):
+       Make compatible with older kernels. Patch by Richard Henderson.
+
 1998-02-17 15:10  Ulrich Drepper  <drepper@cygnus.com>
 
        * elf/dl-load.c (open_path): Use __xstat instead of stat.
index 296d55d..8bf6264 100644 (file)
@@ -16,16 +16,11 @@ GLIBC_2.0 {
     drem; dremf; dreml;
     erf; erff; erfl;
     erfc; erfcf; erfcl;
-    exp2; exp2f; exp2l;
     exp; expf; expl;
     expm1; expm1f; expm1l;
     fabs; fabsf; fabsl;
-    fdim; fdimf; fdiml;
     finite; finitef; finitel;
     floor; floorf; floorl;
-    fma; fmaf; fmal;
-    fmax; fmaxf; fmaxl;
-    fmin; fminf; fminl;
     fmod; fmodf; fmodl;
     frexp; frexpf; frexpl;
     gamma; gammaf; gammal;
@@ -40,39 +35,61 @@ GLIBC_2.0 {
     lgamma_r; lgammaf_r; lgammal_r;
     log10; log10f; log10l;
     log1p; log1pf; log1pl;
-    log2; log2f; log2l;
     log; logf; logl;
     logb; logbf; logbl;
     matherr;
     modf; modff; modfl;
-    nan; nanf; nanl;
-    nearbyint; nearbyintf; nearbyintl;
     nextafter; nextafterf; nextafterl;
-    nextafterx; nextafterxf; nextafterxl;
     pow; powf; powl;
     remainder; remainderf; remainderl;
-    remquo; remquof; remquol;
     rint; rintf; rintl;
-    lrint; lrintf; lrintl;
-    llrint; llrintf; llrintl;
-    round; roundf; roundl;
-    lround; lroundf; lroundl;
-    llround; llroundf; llroundl;
     scalb; scalbf; scalbl;
     scalbn; scalbnf; scalbnl;
-    scalbln; scalblnf; scalblnl;
     significand; significandf; significandl;
     sin; sinf; sinl;
-    sincos; sincosf; sincosl;
     sinh; sinhf; sinhl;
     sqrt; sqrtf; sqrtl;
     tan; tanf; tanl;
     tanh; tanhf; tanhl;
-    trunc; truncf; truncl;
     y0; y0f; y0l;
     y1; y1f; y1l;
     yn; ynf; ynl;
 
+
+    # global variables
+    _LIB_VERSION; signgam;
+
+    # functions used in inline functions or macros
+    __log1p;
+
+  local:
+    *;
+};
+
+
+GLIBC_2.1 {
+  global:
+
+    # mathematical functions
+    exp2; exp2f; exp2l;
+    fdim; fdimf; fdiml;
+    fma; fmaf; fmal;
+    fmax; fmaxf; fmaxl;
+    fmin; fminf; fminl;
+    log2; log2f; log2l;
+    nan; nanf; nanl;
+    nearbyint; nearbyintf; nearbyintl;
+    nextafterx; nextafterxf; nextafterxl;
+    remquo; remquof; remquol;
+    lrint; lrintf; lrintl;
+    llrint; llrintf; llrintl;
+    round; roundf; roundl;
+    lround; lroundf; lroundl;
+    llround; llroundf; llroundl;
+    scalbln; scalblnf; scalblnl;
+    sincos; sincosf; sincosl;
+    trunc; truncf; truncl;
+
     # complex functions
     cabs; cabsf; cabsl;
     cacos; cacosf; cacosl;
@@ -105,19 +122,12 @@ GLIBC_2.0 {
     fesetenv; fesetexceptflag; fesetround;
     fetestexcept; feupdateenv;
 
-    # global variables
-    _LIB_VERSION; signgam;
-
     # functions used in inline functions or macros
+    __finite; __finitef; __finitel;
     __fpclassify; __fpclassifyf; __fpclassifyl;
     __signbit; __signbitf; __signbitl;
-    __finite; __finitef; __finitel;
-
-    __log1p;
 
     # symbols used in macros from sysdeps/powerpc/bits/fenv.h
     __fe_dfl_env; __fe_enabled_env; __fe_nonieee_env; __fe_nomask_env;
 
-  local:
-    *;
-};
+} GLIBC_2.0;
index 6ef2301..50f08d2 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Thorsten Kukuk <kukuk@vt.uni-paderborn.de>, 1996.
 
@@ -228,6 +228,9 @@ _nss_nis_getaliasbyname_r (const char *name, struct aliasent *alias,
   char *result;
   int len;
   char *p;
+  size_t namlen = strlen (name);
+  char name2[namlen + 1];
+  int i;
 
   if (name == NULL)
     {
@@ -238,8 +241,14 @@ _nss_nis_getaliasbyname_r (const char *name, struct aliasent *alias,
   if (yp_get_default_domain (&domain))
     return NSS_STATUS_UNAVAIL;
 
-  retval = yperr2nss (yp_match (domain, "mail.aliases", name, strlen (name),
+  /* Convert name to lowercase.  */
+  for (i = 0; i < namlen; ++i)
+    name2[i] = tolower (name[i]);
+  name2[i] = '\0';
+
+  retval = yperr2nss (yp_match (domain, "mail.aliases", name2, namlen,
                                &result, &len));
+
   if (retval != NSS_STATUS_SUCCESS)
     {
       if (retval == NSS_STATUS_TRYAGAIN)
index 93cff5c..802c032 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Thorsten Kukuk <kukuk@vt.uni-paderborn.de>, 1996.
 
@@ -179,8 +179,27 @@ _nss_nis_getnetbyname_r (const char *name, struct netent *net, char *buffer,
   if (yp_get_default_domain (&domain))
     return NSS_STATUS_UNAVAIL;
 
-  retval = yperr2nss (yp_match (domain, "networks.byname", name,
-                                strlen (name), &result, &len));
+  if (buflen < sizeof *data + 1)
+    {
+      *herrnop = NETDB_INTERNAL;
+      *errnop = ERANGE;
+      return NSS_STATUS_TRYAGAIN;
+    }
+  else
+    {
+      /* Convert name to lowercase.  */
+      size_t namlen = strlen (name);
+      char name2[namlen + 1];
+      int i;
+
+      for (i = 0; i < namlen; ++i)
+       name2[i] = tolower (name[i]);
+      name2[i] = '\0';
+
+      retval = yperr2nss (yp_match (domain, "networks.byname", name2,
+                                   namlen, &result, &len));
+    }
+
 
   if (retval != NSS_STATUS_SUCCESS)
     {
index 0399e39..bad37f2 100644 (file)
@@ -57,8 +57,9 @@
 # define va_list       _IO_va_list
 # define ungetc(c, s)  ((void) ((int) c != EOF && --read_in),                \
                         _IO_ungetc (c, s))
-# define inchar()      ((c = _IO_getc_unlocked (s)), \
-                        (void) (c != EOF && ++read_in), c)
+# define inchar()      (c == EOF ? EOF                                       \
+                        : ((c = _IO_getc_unlocked (s)),                      \
+                           (void) (c != EOF && ++read_in), c))
 # define encode_error()        do {                                                  \
                          if (errp != NULL) *errp |= 4;                       \
                          _IO_funlockfile (s);                                \
 # define UNLOCK_STREAM __libc_cleanup_region_end (1)
 #else
 # define ungetc(c, s)  ((void) (c != EOF && --read_in), ungetc (c, s))
-# define inchar()      ((c = getc (s)), (void) (c != EOF && ++read_in), c)
+# define inchar()      (c == EOF ? EOF                                       \
+                        : (c = getc (s)), (void) (c != EOF && ++read_in), c)
 # define encode_error()        do {                                                  \
                          funlockfile (s);                                    \
                          __set_errno (EILSEQ);                               \
index 1d98de9..3959e5d 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1998  Free Software Foundation, Inc.
+/* Copyright (C) 1998 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Richard Henderson <rth@cygnus.com>, 1998
 
    License along with the GNU C Library; see the file COPYING.LIB.  If not,
    write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
    Boston, MA 02111-1307, USA.  */
-       
+
 #include <sysdep.h>
-       
+
 /* On Alpha we desparately want to avoid having to issue an imb.  Ordinarily
    the kernel would have to issue one after setting up the signal return
    stack, but the Linux rt_sigaction syscall is prepared to accept a pointer
-   to the sigreturn syscall, instead of inlining it on the stack. 
-       
+   to the sigreturn syscall, instead of inlining it on the stack.
+
    This just about halves signal delivery time.  */
-       
-   
+
+#ifdef __NR_rt_sigaction
        .text
 ENTRY(__syscall_rt_sigaction)
        .frame  sp,0,ra,0
@@ -38,7 +38,7 @@ ENTRY(__syscall_rt_sigaction)
        .set at
 #endif
        .prologue 1
-       
+
        beq     a1, 0f
        ldl     t0, 8(a1)                               # sa_flags
        lda     a4, sigreturn-__syscall_rt_sigaction(pv)
@@ -46,10 +46,10 @@ ENTRY(__syscall_rt_sigaction)
        and     t0, 0x00000040, t0                      # SA_SIGINFO
        cmovne  t0, t1, a4
 0:     ldi     v0,__NR_rt_sigaction
-       callsys    
+       callsys
        bne     a3,1f
        ret
-       
+
 1:
 #ifndef PROF
        br      gp,2f
@@ -76,3 +76,10 @@ rt_sigreturn:
        ldi     v0,__NR_rt_sigreturn
        callsys
        .end    rt_sigreturn
+#else
+ENTRY(__syscall_rt_sigaction)
+       ldgp $29,0($27)
+       ldi $0,ENOSYS
+       jmp __syscall_error
+END(__syscall_rt_sigaction)
+#endif