- 28 Jan, 2016 16 commits
-
-
Poul-Henning Kamp authored
-
Poul-Henning Kamp authored
-
Poul-Henning Kamp authored
-
Poul-Henning Kamp authored
-
Poul-Henning Kamp authored
I don't think this will be necessary at the end state, but it makes the transformation easier.
-
Poul-Henning Kamp authored
now that we have a struct boc.
-
Poul-Henning Kamp authored
-
Poul-Henning Kamp authored
-
Poul-Henning Kamp authored
-
Poul-Henning Kamp authored
-
Poul-Henning Kamp authored
-
Poul-Henning Kamp authored
-
Poul-Henning Kamp authored
(struct boc) and "the backend fetch context" (struct bereq).
-
Poul-Henning Kamp authored
-
Poul-Henning Kamp authored
-
Poul-Henning Kamp authored
-
- 26 Jan, 2016 1 commit
-
-
Devon H. O'Dell authored
WS_Assert allows the workspace to be full in its check that `ws->f <= ws->e`. WS_Reset does not honor this; if a snapshot was taken of a full workspace, and that snapshot is reverted with WS_Reset, we panic. This issue was identified by Jozef Hatala <jozef@fastly.com>
-
- 25 Jan, 2016 2 commits
-
-
Lasse Karstensen authored
-
Ondřej Nový authored
This (useless) range request is send by Chrome with HTML5 Video. This was not working correctly in 4.0 and was fixed somewhere in master.
-
- 23 Jan, 2016 1 commit
-
-
Federico G. Schwindt authored
Discussed with phk@. Fix confirmed by geoff@. Fixes #1844.
-
- 22 Jan, 2016 3 commits
-
-
Lasse Karstensen authored
-
Federico G. Schwindt authored
Fixes previous commit. Sigh.
-
Federico G. Schwindt authored
Broken in 9bb8f962. Committed solution proposed by phk@, discussed with phk@ and martin@. Fixes #1845.
-
- 21 Jan, 2016 1 commit
-
-
Federico G. Schwindt authored
Discussed with mithrandir@.
-
- 20 Jan, 2016 2 commits
-
-
Federico G. Schwindt authored
Prompted by #1845. I'm not entirely sure whether some literals like "1.00 " should be accepted but that's the current behaviour.
-
Lasse Karstensen authored
-
- 19 Jan, 2016 1 commit
-
-
Federico G. Schwindt authored
-
- 18 Jan, 2016 9 commits
-
-
Poul-Henning Kamp authored
-
Poul-Henning Kamp authored
into the macro-table.
-
Dridi Boukelmoune authored
Instead of counting the references, the VCL keeps track of them with up to 31 characters in the description. It is the VMOD's responsibility to keep track of the opaque struct vclref * and provide a meaningful user- friendly description.
-
Dridi Boukelmoune authored
By the time we decide to switch to a VCL, it must be warm and usable. The deprecated VCL_EVENT_USE should not get in the way.
-
Dridi Boukelmoune authored
Don't update the state of the VCL to warm if it failed, and don't start the child if the active VCL failed to warm up.
-
Dridi Boukelmoune authored
The implementation is similar to the load/discard dance when a load fails. New VGC functions are introduced iff the VCL has at least one VMOD handling events. The generated code looks like this: static unsigned vgc_inistep; static unsigned vgc_warmupstep; ... static int VGC_Load(VRT_CTX) { ... } static int VGC_Discard(VRT_CTX) { ... } static int VGC_Warmup(VRT_CTX, enum vcl_event_e ev) { vgc_warmupstep = 0; /* 4 */ if (Vmod_debug_Func._event(ctx, &vmod_priv_debug, ev)) return (1); vgc_warmupstep = 4; return (0); } static int VGC_Use(VRT_CTX, enum vcl_event_e ev) { /* 4 */ if (Vmod_debug_Func._event(ctx, &vmod_priv_debug, ev)) return (1); return (0); } static int VGC_Cooldown(VRT_CTX, enum vcl_event_e ev) { int retval = 0; /* 4 */ if (vgc_warmupstep >= 4 && Vmod_debug_Func._event(ctx, &vmod_priv_debug, ev) != 0) retval = 1; return (retval); } static int VGC_Event(VRT_CTX, enum vcl_event_e ev) { if (ev == VCL_EVENT_LOAD) return(VGC_Load(ctx)); if (ev == VCL_EVENT_WARM) return(VGC_Warmup(ctx, ev)); if (ev == VCL_EVENT_USE) return(VGC_Use(ctx, ev)); if (ev == VCL_EVENT_COLD) return(VGC_Cooldown(ctx, ev)); if (ev == VCL_EVENT_DISCARD) return(VGC_Discard(ctx)); return (1); } However, if there are no VMODs handling events, no new functions shall be generated, leading to code looking like this: static unsigned vgc_inistep; static unsigned vgc_warmupstep; ... static int VGC_Load(VRT_CTX) { ... } static int VGC_Discard(VRT_CTX) { ... } static int VGC_Event(VRT_CTX, enum vcl_event_e ev) { if (ev == VCL_EVENT_LOAD) return(VGC_Load(ctx)); if (ev == VCL_EVENT_DISCARD) return(VGC_Discard(ctx)); (void)vgc_warmupstep; return (0); }
-
Dridi Boukelmoune authored
It is also possible to convey a message to the CLI. In case of a failure the VCL is cooled down. VCL_Load may now fail with either CLIS_PARAM or CLIS_CANT.
-
Poul-Henning Kamp authored
concurrent -C tests don't collided. Problem spotted by: fgs
-
Poul-Henning Kamp authored
Fixes: #1802
-
- 15 Jan, 2016 3 commits
-
-
Federico G. Schwindt authored
-
Federico G. Schwindt authored
-
Lasse Karstensen authored
-
- 14 Jan, 2016 1 commit
-
-
Lasse Karstensen authored
-