nginx-0.0.1-2002-08-06-20:39:45 import
The first code that uses "ngx_" prefix, the previous one used "gx_" prefix.
At that point the code is not yet usable. The first draft ideas are dated
back to 23.10.2001.
diff --git a/src/os/win32/ngx_errno.c b/src/os/win32/ngx_errno.c
new file mode 100644
index 0000000..ef91e88
--- /dev/null
+++ b/src/os/win32/ngx_errno.c
@@ -0,0 +1,38 @@
+
+/*
+ TODO:
+ add WSA error messages
+ test for English only messages
+*/
+
+#include <ngx_config.h>
+#include <ngx_string.h>
+#include <ngx_errno.h>
+
+int ngx_strerror_r(ngx_err_t err, char *errstr, size_t size)
+{
+ int len;
+
+ len = FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM
+ | FORMAT_MESSAGE_IGNORE_INSERTS,
+ NULL, err,
+ MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
+ errstr, size, NULL);
+
+ /* add WSA error messages */
+
+ if (len == 0) {
+
+ len = ngx_snprintf(errstr, size,
+ "FormatMessage error:(%d)", GetLastError());
+ return len;
+
+ }
+
+ /* remove ".\r\n\0" */
+ while (errstr[len] == '\0' || errstr[len] == CR
+ || errstr[len] == LF || errstr[len] == '.')
+ --len;
+
+ return ++len;
+}