3 * Copyright (C) Igor Sysoev
7 #include <ngx_config.h>
11 #if (NGX_HAVE_STRERROR_R)
14 ngx_strerror_r(int err, u_char *errstr, size_t size)
22 strerror_r(err, (char *) errstr, size);
24 while (*errstr && size) {
32 #elif (NGX_HAVE_GNU_STRERROR_R)
34 /* Linux strerror_r() */
37 ngx_strerror_r(int err, u_char *errstr, size_t size)
47 str = strerror_r(err, (char *) errstr, size);
49 if (str != (char *) errstr) {
50 return ngx_cpystrn(errstr, (u_char *) str, size);
53 while (*errstr && size) {