Igor Sysoev | d90282d | 2004-09-28 08:34:51 +0000 | [diff] [blame] | 1 | |
| 2 | /* |
Igor Sysoev | ff8da91 | 2004-09-29 16:00:49 +0000 | [diff] [blame] | 3 | * Copyright (C) Igor Sysoev |
Maxim Konovalov | f8d59e3 | 2012-01-18 15:07:43 +0000 | [diff] [blame^] | 4 | * Copyright (C) Nginx, Inc. |
Igor Sysoev | d90282d | 2004-09-28 08:34:51 +0000 | [diff] [blame] | 5 | */ |
| 6 | |
| 7 | |
Igor Sysoev | 6de5c2c | 2002-08-06 16:39:45 +0000 | [diff] [blame] | 8 | #ifndef _NGX_ERRNO_H_INCLUDED_ |
| 9 | #define _NGX_ERRNO_H_INCLUDED_ |
| 10 | |
| 11 | |
| 12 | #include <ngx_config.h> |
Igor Sysoev | 1c10462 | 2003-06-03 15:42:58 +0000 | [diff] [blame] | 13 | #include <ngx_core.h> |
Igor Sysoev | 6de5c2c | 2002-08-06 16:39:45 +0000 | [diff] [blame] | 14 | |
Igor Sysoev | 1c10462 | 2003-06-03 15:42:58 +0000 | [diff] [blame] | 15 | |
| 16 | typedef DWORD ngx_err_t; |
Igor Sysoev | 6de5c2c | 2002-08-06 16:39:45 +0000 | [diff] [blame] | 17 | |
Igor Sysoev | a58e3ca | 2002-09-02 14:48:24 +0000 | [diff] [blame] | 18 | #define ngx_errno GetLastError() |
Igor Sysoev | f2e676a | 2003-11-16 21:49:42 +0000 | [diff] [blame] | 19 | #define ngx_set_errno(err) SetLastError(err) |
Igor Sysoev | a58e3ca | 2002-09-02 14:48:24 +0000 | [diff] [blame] | 20 | #define ngx_socket_errno WSAGetLastError() |
| 21 | #define ngx_set_socket_errno(err) WSASetLastError(err) |
Igor Sysoev | 6de5c2c | 2002-08-06 16:39:45 +0000 | [diff] [blame] | 22 | |
Igor Sysoev | 7bdb720 | 2006-04-19 15:30:56 +0000 | [diff] [blame] | 23 | #define NGX_EPERM ERROR_ACCESS_DENIED |
Igor Sysoev | 1c10462 | 2003-06-03 15:42:58 +0000 | [diff] [blame] | 24 | #define NGX_ENOENT ERROR_FILE_NOT_FOUND |
Igor Sysoev | c9538c0 | 2009-08-11 14:25:04 +0000 | [diff] [blame] | 25 | #define NGX_ENOPATH ERROR_PATH_NOT_FOUND |
Igor Sysoev | 67cd336 | 2006-11-20 08:51:45 +0000 | [diff] [blame] | 26 | #define NGX_ENOMEM ERROR_NOT_ENOUGH_MEMORY |
Igor Sysoev | 1c10462 | 2003-06-03 15:42:58 +0000 | [diff] [blame] | 27 | #define NGX_EACCES ERROR_ACCESS_DENIED |
Igor Sysoev | 524f54f | 2008-12-10 14:53:45 +0000 | [diff] [blame] | 28 | /* it's seems that ERROR_FILE_EXISTS is not appropriate error code */ |
Igor Sysoev | d43bee8 | 2004-11-20 19:52:20 +0000 | [diff] [blame] | 29 | #define NGX_EEXIST ERROR_ALREADY_EXISTS |
Igor Sysoev | 524f54f | 2008-12-10 14:53:45 +0000 | [diff] [blame] | 30 | /* |
| 31 | * could not found cross volume directory move error code, |
| 32 | * so use ERROR_WRONG_DISK as stub one |
| 33 | */ |
| 34 | #define NGX_EXDEV ERROR_WRONG_DISK |
Igor Sysoev | 1c10462 | 2003-06-03 15:42:58 +0000 | [diff] [blame] | 35 | #define NGX_ENOTDIR ERROR_PATH_NOT_FOUND |
Igor Sysoev | 1765f47 | 2006-07-07 16:33:19 +0000 | [diff] [blame] | 36 | #define NGX_EISDIR ERROR_CANNOT_MAKE |
Igor Sysoev | 8a2b2fb | 2006-04-14 09:53:38 +0000 | [diff] [blame] | 37 | #define NGX_ENOSPC ERROR_DISK_FULL |
Igor Sysoev | a536298 | 2004-03-04 07:04:55 +0000 | [diff] [blame] | 38 | #define NGX_EPIPE EPIPE |
Igor Sysoev | 1c10462 | 2003-06-03 15:42:58 +0000 | [diff] [blame] | 39 | #define NGX_EAGAIN WSAEWOULDBLOCK |
| 40 | #define NGX_EINPROGRESS WSAEINPROGRESS |
| 41 | #define NGX_EADDRINUSE WSAEADDRINUSE |
Igor Sysoev | a536298 | 2004-03-04 07:04:55 +0000 | [diff] [blame] | 42 | #define NGX_ECONNABORTED WSAECONNABORTED |
| 43 | #define NGX_ECONNRESET WSAECONNRESET |
| 44 | #define NGX_ENOTCONN WSAENOTCONN |
Igor Sysoev | 1c10462 | 2003-06-03 15:42:58 +0000 | [diff] [blame] | 45 | #define NGX_ETIMEDOUT WSAETIMEDOUT |
Igor Sysoev | 3646a16 | 2004-03-14 20:46:25 +0000 | [diff] [blame] | 46 | #define NGX_ECONNREFUSED WSAECONNREFUSED |
Igor Sysoev | 31eb8c0 | 2005-09-23 11:02:22 +0000 | [diff] [blame] | 47 | #define NGX_ENAMETOOLONG ERROR_BAD_PATHNAME |
Igor Sysoev | 02d8e8e | 2008-01-25 14:57:35 +0000 | [diff] [blame] | 48 | #define NGX_ENETDOWN WSAENETDOWN |
| 49 | #define NGX_ENETUNREACH WSAENETUNREACH |
| 50 | #define NGX_EHOSTDOWN WSAEHOSTDOWN |
Igor Sysoev | 3646a16 | 2004-03-14 20:46:25 +0000 | [diff] [blame] | 51 | #define NGX_EHOSTUNREACH WSAEHOSTUNREACH |
Igor Sysoev | f2e676a | 2003-11-16 21:49:42 +0000 | [diff] [blame] | 52 | #define NGX_ENOMOREFILES ERROR_NO_MORE_FILES |
Igor Sysoev | fadc7a7 | 2009-03-30 14:51:51 +0000 | [diff] [blame] | 53 | #define NGX_EILSEQ ERROR_NO_UNICODE_TRANSLATION |
Igor Sysoev | f2e676a | 2003-11-16 21:49:42 +0000 | [diff] [blame] | 54 | |
| 55 | #define NGX_EALREADY WSAEALREADY |
| 56 | #define NGX_EINVAL WSAEINVAL |
Igor Sysoev | 6de5c2c | 2002-08-06 16:39:45 +0000 | [diff] [blame] | 57 | |
Igor Sysoev | 7f31a20 | 2010-11-25 11:04:03 +0000 | [diff] [blame] | 58 | |
| 59 | u_char *ngx_strerror(ngx_err_t err, u_char *errstr, size_t size); |
| 60 | ngx_uint_t ngx_strerror_init(void); |
Igor Sysoev | 6de5c2c | 2002-08-06 16:39:45 +0000 | [diff] [blame] | 61 | |
| 62 | |
| 63 | #endif /* _NGX_ERRNO_H_INCLUDED_ */ |