- 10 Feb, 2020 2 commits
-
-
Poul-Henning Kamp authored
-
Poul-Henning Kamp authored
Usage pattern: struct vsb vsb[1]; char *p; WS_VSB_new(vsb, ctx->ws); VSB_printf(vsb, "blablabla"); p = WS_VSB_finish(vsb); if (p == NULL) return (FAILURE);
-
- 07 Feb, 2020 3 commits
-
-
Nils Goroll authored
Does this stabilize a vtest false negative which I do not understand?
-
Nils Goroll authored
There are two one-second delays on the server side, but varnishd might read the response a bit longer after the first delay such that the second interval is shortened from the varnish perspective.
-
Nils Goroll authored
-
- 05 Feb, 2020 1 commit
-
-
Nils Goroll authored
Ref #3210
-
- 04 Feb, 2020 9 commits
-
-
Dridi Boukelmoune authored
Other man pages seem to have bogus dependencies.
-
Dridi Boukelmoune authored
And harmonize the reStructuredText format of default values entries.
-
Dridi Boukelmoune authored
-
Nils Goroll authored
-
Martin Blix Grydeland authored
The assert on WS_ReserveSize() in ses_handle() can not trip because sizeof (struct pool_task) is less than sizeof (struct waited). But to safe guard against future problems if that were to change, this patch makes sure that the session workspace can hold the largest of them before entering the waiter, erroring out if not.
-
Martin Blix Grydeland authored
Proxy TLVs claiming to have PP2_TYPE_SSL sub-TLVs without complete payload would cause a Varnish assert. This patch fixes the parsing of the TLVs.
-
Martin Blix Grydeland authored
h2_init_sess can only be reached through H1 with either previous knowledge or opportunistic upgrade. Because of this the proto_priv session attribute will always be set before entry. This patch simplifies and removes dead code containing a call to SES_Reserve_proto_priv. Note: Better diff with the --ignore-all-space option
-
Martin Blix Grydeland authored
In h2_init_sess, an extra call was always made to SES_Reseve_proto_priv(), even though it was already reserved. This wasted a pointer worth of session workspace. This patch removes the extra call.
-
Martin Blix Grydeland authored
If proxy protocol is in use, it is possible to fill the session workspace exactly before entering http1_new_session(), which will cause it to assert when calling SES_Reserve_proto_priv(). with this patch we will close the session gracefully.
-
- 03 Feb, 2020 6 commits
-
-
Guillaume Quintard authored
-
Guillaume Quintard authored
-
Guillaume Quintard authored
-
Nils Goroll authored
as decided by bugwash. Closes #3203
-
Nils Goroll authored
Sorry, I had missed a fixup before push
-
Nils Goroll authored
Basically taken from #3204 by @gquintard - sphinx install for release 8 - included libunwind though it is optional - left out libconfig libcurl and openssh-clients because varnish-cache does not need them
-
- 31 Jan, 2020 1 commit
-
-
Dridi Boukelmoune authored
Looking at 3ec9b582 I realized that this single sentence was packed with mistakes: allocation should also have been plural and it wasn't the third but fourth allocation that would fail (and of course the frist typo).
-
- 30 Jan, 2020 2 commits
-
-
Guillaume Quintard authored
-
Guillaume Quintard authored
-
- 28 Jan, 2020 1 commit
-
-
Nils Goroll authored
I would have wanted to use a protocol agnostic URL, but it seems sphinx does not support them (//varnish-cache.org/... is interpreted as a URL). If anyone knows better, please improve.
-
- 27 Jan, 2020 13 commits
-
-
Poul-Henning Kamp authored
-
Poul-Henning Kamp authored
(I'm assuming these two were typos, if they were intentional, I would have expected explanatory comments.)
-
Nils Goroll authored
(actually not on 32bit, but where the default workspace is low) Ref #3203
-
Nils Goroll authored
-
Nils Goroll authored
related to vtest failures
-
Nils Goroll authored
Ref #3194
-
Nils Goroll authored
It now bails out due to a workspace overflow which it acually did trigger all the time, but that remained unnoticed due to #3194 The test to multiply the cookie header 128 times (8x in the first regex, 16x in the second) was not realistic even for "modern times", so I do not think we should have workspaces sized by such an example.
-
Nils Goroll authored
Since 8baf4a69 we lost information about an overflowed workspace by calling std.log(), which resulted from use of the workspace for construction of a contiguous string from the argument constituents. Since then, we have changed the interface to STRANDS, but this issue remained. We now solve the case for real by pushing the string concatenation down to VSL: New versions of VSL and VSLb (coded by example of VSLv() and VSLbt()) take a strands argument and create a log record without additional copy overhead. These solve #3194 for std.log(), make logging more efficient and, in particular, allow use of std.log() in low workspace conditions (because they do not require any). Also improve test coverage for std.log() Ref #3194
-
Nils Goroll authored
note: no change to vrt.h, this is a private interface between vcl and vrt_vcl/vpi.
-
Nils Goroll authored
... potentially saving a lock/unlock on the critical vcl_mtx Both callers of vcl_get(), VPI_vcl_select() and VCL_Refresh(), potentially have to unref another vcl first. For VCL_Refresh(), this happens when the active vcl changes and the previously active vcl is cached in (struct worker).vcl, which can be assumed to always be the case on a busy system. For VPI_vcl_select(), this happens when switching vcls at esi_level > 0. To summarize, this patch will primarily reduce contention on the vcl_mtx after a 'vcl.use' CLI command on a busy system and for 'return(vcl(...))' with ESI.
-
Nils Goroll authored
This is already implied in the code (because otherwise we would potentially leak a vcl reference (busy counter)). (yes, I have run make check with this)
-
Nils Goroll authored
We should not consider an early close of the backend connection a failure of the test, this vtc is not concerned with bodies.
-
Poul-Henning Kamp authored
-
- 23 Jan, 2020 1 commit
-
-
Dridi Boukelmoune authored
-
- 21 Jan, 2020 1 commit
-
-
Martin Tzvetanov Grigorov authored
-