Ruby 4.1.0dev (2026-10-04 revision ce081bb04abd5e22bb00297c5a4ba8af2ee75cb3)
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}