Mercurial > hg > nginx-vendor-current
view src/os/unix/ngx_errno.c @ 570:8246d8a2c2be NGINX_0_8_37
nginx 0.8.37
*) Feature: the ngx_http_split_clients_module.
*) Feature: the "map" directive supports keys more than 255 characters.
*) Bugfix: nginx ignored the "private" and "no-store" values in the
"Cache-Control" backend response header line.
*) Bugfix: a "stub" parameter of an "include" SSI directive was not
used, if empty response has 200 status code.
*) Bugfix: if a proxied or FastCGI request was internally redirected to
another proxied or FastCGI location, then a segmentation fault might
occur in a worker process; the bug had appeared in 0.8.33.
Thanks to Yichun Zhang.
*) Bugfix: IMAP connections may hang until they timed out while talking
to Zimbra server.
Thanks to Alan Batie.
author | Igor Sysoev <http://sysoev.ru> |
---|---|
date | Mon, 17 May 2010 00:00:00 +0400 |
parents | 88d3e895bdf9 |
children | 428c6e58046a |
line wrap: on
line source
/* * Copyright (C) Igor Sysoev */ #include <ngx_config.h> #include <ngx_core.h> #if (NGX_HAVE_STRERROR_R) u_char * ngx_strerror_r(int err, u_char *errstr, size_t size) { if (size == 0) { return errstr; } errstr[0] = '\0'; strerror_r(err, (char *) errstr, size); while (*errstr && size) { errstr++; size--; } return errstr; } #elif (NGX_HAVE_GNU_STRERROR_R) /* Linux strerror_r() */ u_char * ngx_strerror_r(int err, u_char *errstr, size_t size) { char *str; if (size == 0) { return errstr; } errstr[0] = '\0'; str = strerror_r(err, (char *) errstr, size); if (str != (char *) errstr) { return ngx_cpystrn(errstr, (u_char *) str, size); } while (*errstr && size) { errstr++; size--; } return errstr; } #endif