фильтр

Alexander Dolgarev a.dolgarev at gmail.com
Sun Mar 30 05:03:29 MSD 2008


В чем принципиальная неправильность следующего фрагмента кода (если
допустить что in != NULL и in->next == NULL)? Клиент просто ждет и
ничего не получает в ответ.


static ngx_int_t
ngx_http_*_body_filter(ngx_http_request_t *r, ngx_chain_t *in)
{
    ngx_chain_t *out;
    ngx_buf_t *b;

    out = ngx_pcalloc(r->pool, sizeof(ngx_chain_t));
    b = ngx_create_temp_buf(r->pool, in->buf->last - in->buf->pos);
    memcpy (b->pos, in->buf->pos, in->buf->last - in->buf->pos);
    b->last_buf = in->buf->last_buf;
    out->buf = b;

    return ngx_http_next_body_filter(r, out);
}


More information about the nginx-ru mailing list