Буфер в фильтре - как подставить свой?

alexserbul nginx-forum at nginx.us
Tue Mar 25 18:16:29 UTC 2014


Добрый вечер!

Пишу фильтр. Создал буфер (ngx_buf_t), выделив память из аллокатора
(ngx_pcalloc), установил:
b->start
b->pos
b->last
b->end

Остальные свойства буфера - нулевые, не трогал.

Пытаюсь заменить приходящий в фильтр в цепочке ngx_chain_t буфер - своим
буфером. Зависает.

Получилось только в приходящем в цепочке в фильтр буфере установить pos и
last на выделенную в моем буфере в аллокаторе память, что я понимаю не очень
красивое решение.

Таким образом, просто заменить приходящий в фильтр буфер своим - не
получилось никак.

У структуры буфера (ngx_buf_t) - 21 свойства. Видимо не все буферы можно
заменять, менять (напр. с свойством "memory"). Где почитать как их учитывать
в фильтре? Спасибо.

Posted at Nginx Forum: http://forum.nginx.org/read.php?21,248687,248687#msg-248687



Подробная информация о списке рассылки nginx-ru