Mercurial > public > mercurial-scm > hg-stable
comparison mercurial/sslutil.py @ 37916:51a2f8d199c7
sslutil: fix some edge cases in Python 3 support
Detected by fixing up test-url.py on Python 3.
Differential Revision: https://phab.mercurial-scm.org/D3467
author | Augie Fackler <augie@google.com> |
---|---|
date | Fri, 27 Apr 2018 00:05:46 -0400 |
parents | 46e705b79323 |
children | 67dc32d4e790 |
comparison
equal
deleted
inserted
replaced
37915:6574c81b6831 | 37916:51a2f8d199c7 |
---|---|
638 ''' | 638 ''' |
639 if not cert: | 639 if not cert: |
640 return _('no certificate received') | 640 return _('no certificate received') |
641 | 641 |
642 dnsnames = [] | 642 dnsnames = [] |
643 san = cert.get('subjectAltName', []) | 643 san = cert.get(r'subjectAltName', []) |
644 for key, value in san: | 644 for key, value in san: |
645 if key == 'DNS': | 645 if key == r'DNS': |
646 try: | 646 try: |
647 if _dnsnamematch(value, hostname): | 647 if _dnsnamematch(value, hostname): |
648 return | 648 return |
649 except wildcarderror as e: | 649 except wildcarderror as e: |
650 return stringutil.forcebytestr(e.args[0]) | 650 return stringutil.forcebytestr(e.args[0]) |
670 except wildcarderror as e: | 670 except wildcarderror as e: |
671 return stringutil.forcebytestr(e.args[0]) | 671 return stringutil.forcebytestr(e.args[0]) |
672 | 672 |
673 dnsnames.append(value) | 673 dnsnames.append(value) |
674 | 674 |
675 dnsnames = [pycompat.bytesurl(d) for d in dnsnames] | |
675 if len(dnsnames) > 1: | 676 if len(dnsnames) > 1: |
676 return _('certificate is for %s') % ', '.join(dnsnames) | 677 return _('certificate is for %s') % ', '.join(dnsnames) |
677 elif len(dnsnames) == 1: | 678 elif len(dnsnames) == 1: |
678 return _('certificate is for %s') % dnsnames[0] | 679 return _('certificate is for %s') % dnsnames[0] |
679 else: | 680 else: |