Commit 6b81d9a
BUG/MEDIUM: http-ana: apply tunnel timeout with data filters
The tunnel timeout is installed by process_stream() only once all
analysers are gone. HTTP data filters keep their transfer and end
analysers attached after a protocol upgrade. A stream using, for
example, set-bandwidth-limit therefore remains on its client and server
timeouts even though both HTTP messages are in tunnel mode. A short
client timeout can close a WebSocket before its heartbeat.
Apply the per-stream tunnel timeout when the second HTTP message enters
tunnel mode. Data-filter analysers remain active and continue to process
tunneled data.
It should be backported as far as 2.6.1 parent 559c570 commit 6b81d9a
2 files changed
Lines changed: 15 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
28 | 28 | | |
29 | 29 | | |
30 | 30 | | |
| 31 | + | |
31 | 32 | | |
32 | 33 | | |
33 | 34 | | |
| |||
111 | 112 | | |
112 | 113 | | |
113 | 114 | | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
114 | 122 | | |
115 | 123 | | |
116 | 124 | | |
| |||
141 | 149 | | |
142 | 150 | | |
143 | 151 | | |
| 152 | + | |
144 | 153 | | |
145 | 154 | | |
| 155 | + | |
146 | 156 | | |
147 | 157 | | |
148 | 158 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4588 | 4588 | | |
4589 | 4589 | | |
4590 | 4590 | | |
4591 | | - | |
4592 | | - | |
4593 | | - | |
| 4591 | + | |
4594 | 4592 | | |
4595 | 4593 | | |
4596 | 4594 | | |
4597 | 4595 | | |
4598 | 4596 | | |
| 4597 | + | |
| 4598 | + | |
4599 | 4599 | | |
4600 | 4600 | | |
4601 | 4601 | | |
| |||
4708 | 4708 | | |
4709 | 4709 | | |
4710 | 4710 | | |
| 4711 | + | |
| 4712 | + | |
4711 | 4713 | | |
4712 | 4714 | | |
4713 | 4715 | | |
| |||
0 commit comments