agent.vcl.template revision de3533cf66aacf94548bdc9c8d0671d936f38297
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncvcl 4.0;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncimport am;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncbackend default {
f0ab104f070bc7f569404826fea1828ed985638cvboxsync .host = "127.0.0.1";
f0ab104f070bc7f569404826fea1828ed985638cvboxsync .port = "80";
f0ab104f070bc7f569404826fea1828ed985638cvboxsync}
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsync##
f0ab104f070bc7f569404826fea1828ed985638cvboxsync# OpenAM Varnish Web Policy Agent configuration
f0ab104f070bc7f569404826fea1828ed985638cvboxsync# Do not modify below this line
f0ab104f070bc7f569404826fea1828ed985638cvboxsync##
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncsub vcl_init {
f0ab104f070bc7f569404826fea1828ed985638cvboxsync am.init("AM_AGENT_CONF_PATH");
f0ab104f070bc7f569404826fea1828ed985638cvboxsync}
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncsub vcl_recv {
f0ab104f070bc7f569404826fea1828ed985638cvboxsync if(!am.authenticate()) {
f0ab104f070bc7f569404826fea1828ed985638cvboxsync return (synth(800));
f0ab104f070bc7f569404826fea1828ed985638cvboxsync }
f0ab104f070bc7f569404826fea1828ed985638cvboxsync return (hash);
f0ab104f070bc7f569404826fea1828ed985638cvboxsync}
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncsub vcl_synth {
f0ab104f070bc7f569404826fea1828ed985638cvboxsync if(resp.status == 800) {
f0ab104f070bc7f569404826fea1828ed985638cvboxsync am.done();
f0ab104f070bc7f569404826fea1828ed985638cvboxsync return (deliver);
f0ab104f070bc7f569404826fea1828ed985638cvboxsync }
f0ab104f070bc7f569404826fea1828ed985638cvboxsync}
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncsub vcl_deliver {
f0ab104f070bc7f569404826fea1828ed985638cvboxsync am.ok();
f0ab104f070bc7f569404826fea1828ed985638cvboxsync return (deliver);
f0ab104f070bc7f569404826fea1828ed985638cvboxsync}
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncsub vcl_fini {
f0ab104f070bc7f569404826fea1828ed985638cvboxsync am.cleanup();
f0ab104f070bc7f569404826fea1828ed985638cvboxsync return (ok);
f0ab104f070bc7f569404826fea1828ed985638cvboxsync}