summaryrefslogtreecommitdiff
path: root/missing/strerror.c
blob: d3b61c3f12882122abe19dd9eec9b4689720ea9d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
/* public domain rewrite of strerror(3) */

#include "ruby/missing.h"

extern int sys_nerr;
extern char *sys_errlist[];

static char msg[50];

char *
strerror(int error)
{
    if (error <= sys_nerr && error > 0) {
	return sys_errlist[error];
    }
    snprintf(msg, sizeof(msg), "Unknown error (%d)", error);
    return msg;
}