summaryrefslogtreecommitdiff
path: root/jni/ruby/missing/strerror.c
blob: 907b5aee0dff31dff95c6883de6a8feae67f6f54 (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];
    }
    sprintf(msg, "Unknown error (%d)", error);
    return msg;
}