Mailing List Archive

#1728: PROXYv1: Assert error in SES_RxReq(), cache/cache_session.c line 282:\n
#1728: PROXYv1: Assert error in SES_RxReq(), cache/cache_session.c line 282:\n
----------------------+-------------------
Reporter: daghf | Owner:
Type: defect | Status: new
Priority: normal | Milestone:
Component: varnishd | Version: trunk
Severity: normal | Keywords:
----------------------+-------------------
Ran into another issue related to PROXYv1. If the size of the received
data exceeds the maximum size of a PROXYv1 header, we crash.

This also happens in the case when the PROXYv1 header is correct, but a
following HTTP request received in the same packet puts it over the
maximum PROXYv1 size limit.

{{{
*** v1 7.5 debug| Assert error in SES_RxReq(), cache/cache_session.c
line 282:\n
*** v1 7.5 debug| Condition(hs == HTC_S_EMPTY) not true.\n
*** v1 7.5 debug| thread = (cache-worker)\n
*** v1 7.5 debug| version = varnish-trunk revision ddabce6\n
*** v1 7.5 debug| ident =
Linux,3.16.0-4-amd64,x86_64,-jnone,-smalloc,-smalloc,-hcritbit,epoll\n
*** v1 7.5 debug| Backtrace:\n
*** v1 7.5 debug| 0x44d0b9: pan_backtrace+0x19\n
*** v1 7.5 debug| 0x44ced9: pan_ic+0x329\n
*** v1 7.5 debug| 0x45c1b1: SES_RxReq+0x5e1\n
*** v1 7.5 debug| 0x495f32: VPX_Proto_Sess+0x182\n
*** v1 7.5 debug| 0x450760: Pool_Work_Thread+0x6d0\n
*** v1 7.5 debug| 0x474542: WRK_Thread+0x332\n
*** v1 7.5 debug| 0x452073: pool_thread+0xd3\n
*** v1 7.5 debug| 0x7efc2b4770a4: libpthread.so.0(+0x80a4)
[0x7efc2b4770a4]\n
*** v1 7.5 debug| 0x7efc2b1ac04d: libc.so.6(clone+0x6d)
[0x7efc2b1ac04d]\n
}}}

(the value of 'hs' is HTC_S_OVERFLOW, returned from vpx_complete())

--
Ticket URL: <https://www.varnish-cache.org/trac/ticket/1728>
Varnish <https://varnish-cache.org/>
The Varnish HTTP Accelerator

_______________________________________________
varnish-bugs mailing list
varnish-bugs@varnish-cache.org
https://www.varnish-cache.org/lists/mailman/listinfo/varnish-bugs
Re: #1728: PROXYv1: Assert error in SES_RxReq(), cache/cache_session.c line 282:\n [ In reply to ]
#1728: PROXYv1: Assert error in SES_RxReq(), cache/cache_session.c line 282:\n
----------------------+----------------------------------------
Reporter: daghf | Owner: Poul-Henning Kamp <phk@…>
Type: defect | Status: closed
Priority: normal | Milestone:
Component: varnishd | Version: trunk
Severity: normal | Resolution: fixed
Keywords: |
----------------------+----------------------------------------
Changes (by Poul-Henning Kamp <phk@…>):

* status: new => closed
* owner: => Poul-Henning Kamp <phk@…>
* resolution: => fixed


Comment:

In [93c62b30fb5384d7a0110f45445d6c20088023c8]:
{{{
#!CommitTicketReference repository=""
revision="93c62b30fb5384d7a0110f45445d6c20088023c8"
Get the PROXY1 length check right, it is only the length until
the first \n which is limited.

Fixes #1728
}}}

--
Ticket URL: <https://www.varnish-cache.org/trac/ticket/1728#comment:1>
Varnish <https://varnish-cache.org/>
The Varnish HTTP Accelerator

_______________________________________________
varnish-bugs mailing list
varnish-bugs@varnish-cache.org
https://www.varnish-cache.org/lists/mailman/listinfo/varnish-bugs