37 if (errnum >= 0 && errnum < sys_nerr)
46 if (FormatMessage (FORMAT_MESSAGE_ALLOCATE_BUFFER
47 | FORMAT_MESSAGE_FROM_SYSTEM,
49 MAKELANGID (LANG_NEUTRAL, SUBLANG_DEFAULT),
50 (LPTSTR) &buffer, 0, NULL) == 0)
53 xsnprintf (buf,
sizeof buf,
"(undocumented errno %d)", errnum);
59 len = strlen (buffer);
60 if (len > 3 && strcmp (buffer + len - 3,
".\r\n") == 0)
61 buffer[len - 3] =
'\0';
char * safe_strerror(int errnum)
int xsnprintf(char *str, size_t size, const char *format,...)