diff options
author | Igor Sysoev <igor@sysoev.ru> | 2005-06-23 13:41:06 +0000 |
---|---|---|
committer | Igor Sysoev <igor@sysoev.ru> | 2005-06-23 13:41:06 +0000 |
commit | 85ef94ba857237882c7e68dea87a1dbc68a38fe7 (patch) | |
tree | 1bc05e18adaabc75f91f1c7b34c7358e60b0efdc /src/imap/ngx_imap_handler.c | |
parent | 2e87bb645af1d3152c9961d49ca093d4cbfe630d (diff) | |
download | nginx-85ef94ba857237882c7e68dea87a1dbc68a38fe7.tar.gz nginx-85ef94ba857237882c7e68dea87a1dbc68a38fe7.zip |
nginx-0.1.37-RELEASE importrelease-0.1.37
*) Change: now the "\n" is added to the end of the "nginx.pid" file.
*) Bugfix: the responses may be transferred not completely, if many
parts or the big parts were included by SSI.
*) Bugfix: if all backends had returned the 404 reponse and the
"http_404" parameter of the "proxy_next_upstream" or
"fastcgi_next_upstream" directives was used, then nginx started to
request all backends again.
Diffstat (limited to 'src/imap/ngx_imap_handler.c')
-rw-r--r-- | src/imap/ngx_imap_handler.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/imap/ngx_imap_handler.c b/src/imap/ngx_imap_handler.c index be2c9d1c5..680bf20d0 100644 --- a/src/imap/ngx_imap_handler.c +++ b/src/imap/ngx_imap_handler.c @@ -24,6 +24,11 @@ static ngx_str_t greetings[] = { ngx_string("* OK " NGINX_VER " ready" CRLF) }; +static ngx_str_t internal_server_errors[] = { + ngx_string("-ERR internal server error" CRLF), + ngx_string("* BAD internal server error" CRLF), +}; + static u_char pop3_ok[] = "+OK" CRLF; static u_char pop3_invalid_command[] = "-ERR invalid command" CRLF; @@ -342,6 +347,16 @@ ngx_imap_close_session(ngx_imap_session_t *s) void +ngx_imap_session_internal_server_error(ngx_imap_session_t *s) +{ + (void) ngx_send(s->connection, internal_server_errors[s->protocol].data, + internal_server_errors[s->protocol].len); + + ngx_imap_close_connection(s->connection); +} + + +void ngx_imap_close_connection(ngx_connection_t *c) { ngx_pool_t *pool; |