[master] dd5d189 Add a ${workdir}/vmod_cache subdirectory for caching compiled VMODs. Otherwise jail_unix doesn't allow you to use VMODs.
Poul-Henning Kamp
phk at FreeBSD.org
Sat Jan 7 13:24:04 CET 2017
commit dd5d18952fb9badd4eb388c98a6da7c3882b0969
Author: Poul-Henning Kamp <phk at FreeBSD.org>
Date: Sat Jan 7 12:22:22 2017 +0000
Add a ${workdir}/vmod_cache subdirectory for caching compiled
VMODs. Otherwise jail_unix doesn't allow you to use VMODs.
diff --git a/bin/varnishd/mgt/mgt_child.c b/bin/varnishd/mgt/mgt_child.c
index 9a4d955..5f23a24 100644
--- a/bin/varnishd/mgt/mgt_child.c
+++ b/bin/varnishd/mgt/mgt_child.c
@@ -307,6 +307,12 @@ mgt_launch_child(struct cli *cli)
child_state = CH_STARTING;
+ if (VJ_make_vcldir("vmod_cache")) {
+ VCLI_Out(cli, "Could not create vmod cache dir");
+ VCLI_SetResult(cli, CLIS_UNKNOWN);
+ return;
+ }
+
/* Open pipe for mgr->child CLI */
AZ(pipe(cp));
heritage.cli_in = cp[0];
diff --git a/lib/libvcc/vcc_vmod.c b/lib/libvcc/vcc_vmod.c
index ef2a9e0..c2c4742 100644
--- a/lib/libvcc/vcc_vmod.c
+++ b/lib/libvcc/vcc_vmod.c
@@ -207,7 +207,7 @@ vcc_ParseImport(struct vcc *tl)
AN(vmd);
AN(vmd->file_id);
VSB_printf(ifp->ini, "\t \"%s\",\n", vmd->file_id);
- VSB_printf(ifp->ini, "\t \"./_vmod_%.*s.%s\"\n",
+ VSB_printf(ifp->ini, "\t \"./vmod_cache/_vmod_%.*s.%s\"\n",
PF(mod), vmd->file_id);
VSB_printf(ifp->ini, "\t ))\n");
VSB_printf(ifp->ini, "\t\treturn(1);");
More information about the varnish-commit
mailing list