[ExtProc] Content-Length Header Mutation in FULL_DUPLEX_STREAMED body processing mode
#39,035 opened on Apr 7, 2025
Repository metrics
- Stars
- (27,997 stars)
- PR merge metrics
- (Avg merge 8d) (378 merged PRs in 30d)
Description
Title: [ExtProc] Content-Length Header Mutation in FULL_DUPLEX_STREAMED body processing mode
Description: Should ExtProc in FULL_DUPLEX_STREAMED body processing mode switch to chunked encoded transfer even if a content length is provided as part of a header mutation? The following comment in https://github.com/envoyproxy/envoy/blob/737efd331cce18b172a2f0241638d810ee73d604/source/extensions/filters/http/ext_proc/processor_state.h#L190 states otherwise
ext_proc filter can not guarantee to set the content length correctly if body is mutated by external processor later.
But, I am not sure if this is correct for duplex streamed processing, where to my understanding the extproc filter is in full control over what is delivered down or upstream.
I guess the situation is more complicated. Can any one shed some light on the topic.
Thank you very much.
Andre