import re
import subprocess
-import zope.component
import zope.interface
from zope.interface import implementer, provider
from acme import challenges
-from letsencrypt import errors
-from letsencrypt import interfaces
-from letsencrypt.plugins import common
+from certbot import errors
+from certbot import interfaces
+from certbot.plugins import common
logger = logging.getLogger(__name__)
def vcl_recv_line(achall):
# Don't bother checking for the right host, we could be coming in through a redirect.
- return 'if (req.url == "/%s/%s") { return (synth(999, "Challenge")); } # Added by letsencrypt Varnish plugin for authentication\n' % (achall.URI_ROOT_PATH, achall.chall.encode("token"))
+ return 'if (req.url == "/%s/%s") { return (synth(999, "Challenge")); } # Added by certbot Varnish plugin for authentication\n' % (achall.URI_ROOT_PATH, achall.chall.encode("token"))
def vcl_synth_line(validation):
- return 'if (resp.status == 999) { set resp.status = 200; set resp.http.Content-Type = "text/plain"; synthetic("%s"); return (deliver); } # Added by letsencrypt Varnish plugin for authentication\n' % (validation);
+ return 'if (resp.status == 999) { set resp.status = 200; set resp.http.Content-Type = "text/plain"; synthetic("%s"); return (deliver); } # Added by certbot Varnish plugin for authentication\n' % (validation);
@implementer(interfaces.IAuthenticator)
@provider(interfaces.IPluginFactory)
responses.append(self._perform_single(achall))
return responses
+ @classmethod
+ def add_parser_arguments(cls, add):
+ pass
+
def _perform_single(self, achall):
# same path for each challenge response would be easier for
# users, but will not work if multiple domains point at the
found_vcl_synth = False
new_content = []
for line in content:
- if re.search("# Added by letsencrypt Varnish plugin", line):
+ if re.search("# Added by certbot Varnish plugin", line):
# Don't include this line; left by a previous run.
continue
new_content.append(line)
found_vcl_synth = True
if not found_vcl_recv:
- new_content.append("sub vcl_recv { # Added by letsencrypt Varnish plugin for authentication\n")
+ new_content.append("sub vcl_recv { # Added by certbot Varnish plugin for authentication\n")
new_content.append(vcl_recv_line(achall))
- new_content.append("} # Added by letsencrypt Varnish plugin for authentication\n")
+ new_content.append("} # Added by certbot Varnish plugin for authentication\n")
if not found_vcl_synth:
- new_content.append("sub vcl_synth { # Added by letsencrypt Varnish plugin for authentication\n")
+ new_content.append("sub vcl_synth { # Added by certbot Varnish plugin for authentication\n")
new_content.append(vcl_synth_line(validation))
- new_content.append("} # Added by letsencrypt Varnish plugin for authentication\n")
+ new_content.append("} # Added by certbot Varnish plugin for authentication\n")
with open("/etc/varnish/default.vcl", "w") as vcl:
vcl.writelines(new_content)