# HG changeset patch # User Wesley J. Landaker # Date 1184306144 25200 # Node ID 419a6f715c6ab6702f0dd6887767ab537ca8a39a # Parent d787d9ad67cc62afe3dc335a82ef618c4c299b81 Use wsgi.url_scheme instead of ad-hoc CGI checks. Instead of each place in hgweb_mod that needs to check for SSL or get the protocol scheme (http vs. https) doing it ad-hoc, make them just look at the wsgi.url_scheme which because of previous patches is now always set correctly. diff --git a/mercurial/hgweb/hgweb_mod.py b/mercurial/hgweb/hgweb_mod.py --- a/mercurial/hgweb/hgweb_mod.py +++ b/mercurial/hgweb/hgweb_mod.py @@ -787,7 +787,8 @@ class hgweb(object): style = req.form['style'][0] mapfile = style_map(self.templatepath, style) - if req.env.get('HTTPS'): + proto = req.env.get('wsgi.url_scheme') + if proto == 'https': proto = 'https' default_port = "443" else: @@ -1070,7 +1071,7 @@ class hgweb(object): # replayed ssl_req = self.configbool('web', 'push_ssl', True) if ssl_req: - if not req.env.get('HTTPS'): + if req.env.get('wsgi.url_scheme') != 'https': bail(_('ssl required\n')) return proto = 'https'