comparison src/mail/ngx_mail_auth_http_module.c @ 296:2ceaee987f37 NGINX_0_5_18

nginx 0.5.18 *) Feature: the ngx_http_sub_filter_module. *) Feature: the "$upstream_http_..." variables. *) Feature: now the $upstream_status and $upstream_response_time variables keep data about all upstreams before X-Accel-Redirect. *) Bugfix: a segmentation fault occurred in master process after first reconfiguration and receiving any signal if nginx was built with ngx_http_perl_module and perl did not support multiplicity; bug appeared in 0.5.9. *) Bugfix: if perl did not support multiplicity, then after reconfiguration perl code did not work; bug appeared in 0.3.38.
author Igor Sysoev <http://sysoev.ru>
date Thu, 19 Apr 2007 00:00:00 +0400
parents f745bf973510
children fc223117327f
comparison
equal deleted inserted replaced
295:65b7ac8795e3 296:2ceaee987f37
684 } 684 }
685 685
686 ctx->err.len = ctx->errcode.len + ctx->errmsg.len 686 ctx->err.len = ctx->errcode.len + ctx->errmsg.len
687 + sizeof(" " CRLF) - 1; 687 + sizeof(" " CRLF) - 1;
688 688
689 p = ngx_palloc(s->connection->pool, ctx->err.len); 689 p = ngx_palloc(s->connection->pool, ctx->err.len);
690 if (p == NULL) { 690 if (p == NULL) {
691 ngx_close_connection(ctx->peer.connection); 691 ngx_close_connection(ctx->peer.connection);
692 ngx_destroy_pool(ctx->pool); 692 ngx_destroy_pool(ctx->pool);
693 ngx_mail_session_internal_server_error(s); 693 ngx_mail_session_internal_server_error(s);
694 return; 694 return;
695 } 695 }
696 696
697 ctx->err.data = p; 697 ctx->err.data = p;
698 698
699 p = ngx_cpymem(p, ctx->errcode.data, ctx->errcode.len); 699 p = ngx_cpymem(p, ctx->errcode.data, ctx->errcode.len);
700 *p++ = ' '; 700 *p++ = ' ';
701 p = ngx_cpymem(p, ctx->errmsg.data, ctx->errmsg.len); 701 p = ngx_cpymem(p, ctx->errmsg.data, ctx->errmsg.len);
702 *p++ = CR; *p = LF; 702 *p++ = CR; *p = LF;
703 } 703 }
704 704
705 s->out = ctx->err; 705 s->out = ctx->err;
706 timer = ctx->sleep; 706 timer = ctx->sleep;