- 19 Aug, 2021 2 commits
-
-
Poul-Henning Kamp authored
either or both of which are allowed to be NULL. (Part of STRING_LIST eradication)
-
Poul-Henning Kamp authored
-
- 17 Aug, 2021 21 commits
-
-
Dridi Boukelmoune authored
When we check sym->wildcard for quoted headers.
-
Dridi Boukelmoune authored
Because we funnel HTTP header names through the symbol table they have to be valid VCL identifiers. It means that we can't support all valid header names, which are tokens in the HTTP grammar. To finally close this loophole without the help of a VMOD we allow header names to be quoted: req.http.regular-header req.http."quoted.header" However we don't want to allow any component of a symbol to be quoted: req."http".we-dont-want-this So we teach the symbol table that wildcard symbols may be quoted. There used to be several use cases for wildcards but it is now limited to HTTP headers. Refs #3246 Refs #3379
-
Poul-Henning Kamp authored
-
Poul-Henning Kamp authored
-
Poul-Henning Kamp authored
-
Dridi Boukelmoune authored
-
Dridi Boukelmoune authored
The miniobj resides in the workspace it's rolling back. To preserve its zeroing we need to roll back afterwards.
-
Dridi Boukelmoune authored
It's harmless with a regular workspace, but technically we are leaving outstanding allocations in the workspace.
-
Dridi Boukelmoune authored
It's harmless with a regular workspace, but technically we are leaving outstanding allocations in the workspace.
-
Dridi Boukelmoune authored
After a cleanup we may still use the request's workspace, so the final rollback should instead happen at release time before we give the memory back to the pool.
-
Dridi Boukelmoune authored
PAN_dump_struct2() is now renamed to PAN__DumpStruct() following the guidelines from apispaces.rst in addition to growing a track argument. This should allow dumping structures that we know ought to be dumped only once, in case they would be numerous. There seems to be no good reason to expose it to VMODs yet since they have no integration point with the panic output, so those definitions can be confined in cache_varnishd.h for now. Better diff with the --ignore-all-space option.
-
Dridi Boukelmoune authored
In the most common case of a VCL transaction panicking this should only result in an extra "Already dumped, see above" message, but it may give more insights for other kinds of tasks.
-
Dridi Boukelmoune authored
Getting rid of the very last direct access inside struct ws from vmod_vtc.
-
Dridi Boukelmoune authored
Releasing a reservation or rolling back too early is harmless as long as nothing is allocated on the workspace that could overwrite its contents. Once you swap the workspace in its current form with a different kind of allocator it can turn into effective use-after-free, if rolled back or released state doesn't linger.
-
Dridi Boukelmoune authored
Instead of guaranteeing the pointer alignment of ws->r at the expense of sometimes reserving more than requested, we can instead drop the pointer alignment requirement since that does not refer to the beginning of the allocation. Instead, it is in WS_Release() that we guarantee that the ws->f remains aligned for the next allocation. And WS_Release() already did that so we might as well avoid the potential overcommit from WS_ReserveSize(). This is going to be helpful for a workspace emulator, to make sure that the alignment overhead wouldn't allow off-by-little overflows to sneak past the address sanitizer. This very change was initially made for a workspace sanitizer. It is also a good occasion to make the relevant checks around the ws->r pointer in WS_Assert(). This change is visible in r03131.vtc that now exhibits this behavior. Refs #3320
-
Dridi Boukelmoune authored
Not even failing to allocate, but outright panicking.
-
Dridi Boukelmoune authored
-
Dridi Boukelmoune authored
It was unfit for purpose anyway, since it would allow contents past the front pointer to be referenced. What we are really looking for where WS_Inside() was used is actual allocations. WS_Assert_Allocated() was made redundant by this change. Refs #3320
-
Poul-Henning Kamp authored
-
Poul-Henning Kamp authored
-
Asad Sajjad Ahmed authored
Signed-off-by: Asad Sajjad Ahmed <asadsa@varnish-software.com>
-
- 16 Aug, 2021 3 commits
-
-
Poul-Henning Kamp authored
-
Poul-Henning Kamp authored
-
Poul-Henning Kamp authored
-
- 12 Aug, 2021 6 commits
-
-
Dridi Boukelmoune authored
Trying to unconfuse bmake on FreeBSD: make[6]: don't know how to make vsl_glob_test_coverage. Stop But I can't reproduce it locally with bmake on Linux.
-
Dridi Boukelmoune authored
-
Dridi Boukelmoune authored
Instead of generating a test script that performs the compilation, we can give automake a no-op linker command. With that vrt.h is verified with a simple `make` or `make all` invocation, before `make check` even kicks in. Doing it this way also gives applicable warnings like strict-prototypes a chance to fail earlier. Refs #3667
-
Dridi Boukelmoune authored
One can always run `make -C include/ check VERBOSE=1` for feature parity, and even get the other goodies from the regular test driver.
-
Dridi Boukelmoune authored
It should be more friendly to maintain than a script incrementally generated by a makefile. Make it responsible for also running vsl_glob_test without arguments instead of the test driver, and restore its output. In case of failure, the -x mode should help figure which vsl_glob_test failed. While at it give the script a proper shebang. Refs #3667
-
Dridi Boukelmoune authored
Something DNS always breaks when I join a new network.
-
- 10 Aug, 2021 7 commits
-
-
Pål Hermunn Johansen authored
-
Pål Hermunn Johansen authored
After 88698015 broke 32 bit, we need to adjust the default(s) which are special cased for 32 bit in mgt_param.c. Instead of increasing things, we make sure the old default vsl_buffer of 4k is maintained.
-
Poul-Henning Kamp authored
-
Poul-Henning Kamp authored
-
Poul-Henning Kamp authored
-
Poul-Henning Kamp authored
-
Poul-Henning Kamp authored
-
- 09 Aug, 2021 1 commit
-
-
Dridi Boukelmoune authored
This looks like a copy-pasta or autocomplete mistake.
-