]> sjero.net Git - wget/blob - lib/strerror.c
Merge getpass with quote, plus my NEWS entry.
[wget] / lib / strerror.c
1 /* strerror.c --- POSIX compatible system error routine
2
3    Copyright (C) 2007 Free Software Foundation, Inc.
4
5    This program is free software: you can redistribute it and/or modify
6    it under the terms of the GNU General Public License as published by
7    the Free Software Foundation; either version 3 of the License, or
8    (at your option) any later version.
9
10    This program is distributed in the hope that it will be useful,
11    but WITHOUT ANY WARRANTY; without even the implied warranty of
12    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13    GNU General Public License for more details.
14
15    You should have received a copy of the GNU General Public License
16    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
17
18 #include <config.h>
19
20 #include <string.h>
21
22 #if REPLACE_STRERROR
23
24 # include <stdio.h>
25
26 # include "intprops.h"
27
28 # undef strerror
29 # if ! HAVE_DECL_STRERROR
30 #  define strerror(n) NULL
31 # endif
32
33 char *
34 rpl_strerror (int n)
35 {
36   char *result = strerror (n);
37
38   if (result == NULL || result[0] == '\0')
39     {
40       static char const fmt[] = "Unknown error (%d)";
41       static char mesg[sizeof fmt + INT_STRLEN_BOUND (n)];
42       sprintf (mesg, fmt, n);
43       return mesg;
44     }
45
46   return result;
47 }
48
49 #endif