Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nginx/nginx.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/src/os
diff options
context:
space:
mode:
authorMaxim Dounin <mdounin@mdounin.ru>2012-03-27 20:42:34 +0400
committerMaxim Dounin <mdounin@mdounin.ru>2012-03-27 20:42:34 +0400
commit36aef0c383bfe285a12b4b826563a768efe181d6 (patch)
tree13539e52b48ec5bf8a73e58afb8923c9310f0d35 /src/os
parent7b2b17a6b3473e2d23e1ed55794fbaa416498738 (diff)
Fixed unconditional MAX_PATH usage (ticket #22).
POSIX doesn't require it to be defined, and Debian GNU/Hurd doesn't define it. Note that if there is no MAX_PATH defined we have to use realpath() with NULL argument and free() the result.
Diffstat (limited to 'src/os')
-rw-r--r--src/os/unix/ngx_files.h13
-rw-r--r--src/os/win32/ngx_files.h1
2 files changed, 13 insertions, 1 deletions
diff --git a/src/os/unix/ngx_files.h b/src/os/unix/ngx_files.h
index ffe732c47..9c97e2bb7 100644
--- a/src/os/unix/ngx_files.h
+++ b/src/os/unix/ngx_files.h
@@ -200,14 +200,25 @@ void ngx_close_file_mapping(ngx_file_mapping_t *fm);
#endif
-#define ngx_realpath(p, r) realpath((char *) p, (char *) r)
+#define ngx_realpath(p, r) (u_char *) realpath((char *) p, (char *) r)
#define ngx_realpath_n "realpath()"
#define ngx_getcwd(buf, size) (getcwd((char *) buf, size) != NULL)
#define ngx_getcwd_n "getcwd()"
#define ngx_path_separator(c) ((c) == '/')
+
+#if defined(PATH_MAX)
+
+#define NGX_HAVE_MAX_PATH 1
#define NGX_MAX_PATH PATH_MAX
+#else
+
+#define NGX_MAX_PATH 4096
+
+#endif
+
+
#define NGX_DIR_MASK_LEN 0
diff --git a/src/os/win32/ngx_files.h b/src/os/win32/ngx_files.h
index 4456c2a32..f567f190b 100644
--- a/src/os/win32/ngx_files.h
+++ b/src/os/win32/ngx_files.h
@@ -183,6 +183,7 @@ char *ngx_realpath(u_char *path, u_char *resolved);
#define ngx_getcwd_n "GetCurrentDirectory()"
#define ngx_path_separator(c) ((c) == '/' || (c) == '\\')
+#define NGX_HAVE_MAX_PATH 1
#define NGX_MAX_PATH MAX_PATH
#define NGX_DIR_MASK (u_char *) "/*"