diff src/imap/ngx_imap.h @ 800:887d8dec72dc

APOP
author Igor Sysoev <igor@sysoev.ru>
date Mon, 23 Oct 2006 13:10:10 +0000
parents 6d5c1535bb9d
children da9c1521319d
line wrap: on
line diff
--- a/src/imap/ngx_imap.h
+++ b/src/imap/ngx_imap.h
@@ -87,6 +87,10 @@ typedef struct {
     ngx_str_t               imap_starttls_capability;
     ngx_str_t               imap_starttls_only_capability;
 
+    ngx_str_t               server_name;
+
+    ngx_uint_t              auth_methods;
+
     ngx_array_t             pop3_capabilities;
     ngx_array_t             imap_capabilities;
 
@@ -149,10 +153,12 @@ typedef struct {
     unsigned                backslash:1;
     unsigned                no_sync_literal:1;
     unsigned                starttls:1;
+    unsigned                auth_method:1;
 
     ngx_str_t               login;
     ngx_str_t               passwd;
 
+    ngx_str_t               salt;
     ngx_str_t               tag;
     ngx_str_t               tagged_line;
 
@@ -179,29 +185,37 @@ typedef struct {
 } ngx_imap_log_ctx_t;
 
 
-#define NGX_POP3_USER       1
-#define NGX_POP3_PASS       2
-#define NGX_POP3_CAPA       3
-#define NGX_POP3_QUIT       4
-#define NGX_POP3_NOOP       5
-#define NGX_POP3_STLS       6
-#define NGX_POP3_APOP       7
-#define NGX_POP3_STAT       8
-#define NGX_POP3_LIST       9
-#define NGX_POP3_RETR       10
-#define NGX_POP3_DELE       11
-#define NGX_POP3_RSET       12
-#define NGX_POP3_TOP        13
-#define NGX_POP3_UIDL       14
+#define NGX_POP3_USER        1
+#define NGX_POP3_PASS        2
+#define NGX_POP3_CAPA        3
+#define NGX_POP3_QUIT        4
+#define NGX_POP3_NOOP        5
+#define NGX_POP3_STLS        6
+#define NGX_POP3_APOP        7
+#define NGX_POP3_STAT        8
+#define NGX_POP3_LIST        9
+#define NGX_POP3_RETR        10
+#define NGX_POP3_DELE        11
+#define NGX_POP3_RSET        12
+#define NGX_POP3_TOP         13
+#define NGX_POP3_UIDL        14
 
 
-#define NGX_IMAP_LOGIN      1
-#define NGX_IMAP_LOGOUT     2
-#define NGX_IMAP_CAPABILITY 3
-#define NGX_IMAP_NOOP       4
-#define NGX_IMAP_STARTTLS   5
+#define NGX_IMAP_LOGIN       1
+#define NGX_IMAP_LOGOUT      2
+#define NGX_IMAP_CAPABILITY  3
+#define NGX_IMAP_NOOP        4
+#define NGX_IMAP_STARTTLS    5
+
+#define NGX_IMAP_NEXT        6
 
-#define NGX_IMAP_NEXT       6
+
+#define NGX_IMAP_AUTH_PLAIN  0
+#define NGX_IMAP_AUTH_APOP   1
+
+
+#define NGX_IMAP_AUTH_PLAIN_ENABLED  0x0002
+#define NGX_IMAP_AUTH_APOP_ENABLED   0x0004
 
 
 #define NGX_IMAP_PARSE_INVALID_COMMAND  20