dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacsvcl 4.0;
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacsimport am;
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacsbackend default {
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs .host = "127.0.0.1";
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs .port = "80";
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs}
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs##
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs# OpenAM Varnish Web Policy Agent configuration
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs# Do not modify below this line
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs##
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacssub vcl_init {
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs am.init("AM_AGENT_CONF_PATH");
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs}
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacssub vcl_recv {
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs if(!am.authenticate()) {
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs return (synth(800));
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs }
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs return (hash);
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs}
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacssub vcl_synth {
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs if(resp.status == 800) {
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs am.done();
de3533cf66aacf94548bdc9c8d0671d936f38297Mareks Malnacs return (deliver);
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs }
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs}
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacssub vcl_deliver {
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs am.ok();
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs return (deliver);
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs}
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacssub vcl_fini {
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs am.cleanup();
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs return (ok);
dd4dd4fe1690d734c118e1b40350e8bb1a5b631cMareks Malnacs}