Ruby 3.4.3p32 (2025-04-14 revision d0b7e5b6a04bde21ca483d20a1546b28b401c2d4)
strerror.c
1/* public domain rewrite of strerror(3) */
2
3#include "ruby/missing.h"
4
5extern int sys_nerr;
6extern char *sys_errlist[];
7
8static char msg[50];
9
10char *
11strerror(int error)
12{
13 if (error <= sys_nerr && error > 0) {
14 return sys_errlist[error];
15 }
16 snprintf(msg, sizeof(msg), "Unknown error (%d)", error);
17 return msg;
18}