* sysdeps/generic/_strerror.c: _strerror_internal now takes
authorroland <roland>
Sun, 17 Sep 1995 20:16:43 +0000 (20:16 +0000)
committerroland <roland>
Sun, 17 Sep 1995 20:16:43 +0000 (20:16 +0000)
three argument and has and explicit buffer length.
* sysdeps/mach/_strerror.c: Change for new interface with three
arguments.
* stdio/perror.c, stdio/vfprintf.c: Callers changed.

stdio/perror.c
stdio/vfprintf.c

index 718a6f2..1054aca 100644 (file)
@@ -20,7 +20,7 @@ Cambridge, MA 02139, USA.  */
 #include <stdio.h>
 #include <errno.h>
 
-extern char *_strerror_internal __P ((int, char buf[1024]));
+extern char *_strerror_internal __P ((int, char *buf, size_t));
 
 /* Print a line on stderr consisting of the text in S, a colon, a space,
    a message describing the meaning of the contents of `errno' and a newline.
@@ -38,5 +38,5 @@ DEFUN(perror, (s), register CONST char *s)
     colon = ": ";
 
   (void) fprintf (stderr, "%s%s%s\n",
-                 s, colon, _strerror_internal (errnum, buf));
+                 s, colon, _strerror_internal (errnum, buf, sizeof buf));
 }
index 06aa0a0..63a5148 100644 (file)
@@ -534,7 +534,7 @@ vfprintf (s, format, ap)
               else if (specs[cnt].info.prec != -1)
                {
                  /* Search for the end of the string, but don't search
-                     past the length specified by the precision.  */
+                    past the length specified by the precision.  */
                  const char *end = memchr (str, '\0', specs[cnt].info.prec);
                  if (end)
                    len = end - str;
@@ -600,8 +600,8 @@ vfprintf (s, format, ap)
 
           case 'm':
             {
-              extern char *_strerror_internal __P ((int, char buf[1024]));
-              str = _strerror_internal (errno, errorbuf);
+              extern char *_strerror_internal __P ((int, char *buf, size_t));
+              str = _strerror_internal (errno, errorbuf, sizeof errorbuf);
               goto string;
             }