ui: optionally quiesce ssl verification warnings on python 2.5
authorSteven Stallion <sstallion@gmail.com>
Mon, 09 Apr 2012 14:36:16 -0700
changeset 16391 9cf7c9d529d0
parent 16390 4df76d5506a9
child 16392 ee3f423df1b4
ui: optionally quiesce ssl verification warnings on python 2.5 Some platforms, notably Plan 9 from Bell Labs are stuck on older releases of Python. Due to restrictions in the platform, it is not possible to backport the SSL library to the existing Python port. This patch permits the UI to quiesce SSL verification warnings by adding a configuration entry named reportoldssl to ui.
mercurial/help/config.txt
mercurial/sslutil.py
--- a/mercurial/help/config.txt	Mon Apr 09 22:16:26 2012 -0700
+++ b/mercurial/help/config.txt	Mon Apr 09 14:36:16 2012 -0700
@@ -1135,6 +1135,10 @@
 ``remotecmd``
     remote command to use for clone/push/pull operations. Default is ``hg``.
 
+``reportoldssl``
+    Warn if an SSL certificate is unable to be due to using Python
+    2.5 or earlier. True or False. Default is True.
+
 ``report_untrusted``
     Warn if a ``.hg/hgrc`` file is ignored due to not being owned by a
     trusted user or group. True or False. Default is True.
--- a/mercurial/sslutil.py	Mon Apr 09 22:16:26 2012 -0700
+++ b/mercurial/sslutil.py	Mon Apr 09 14:36:16 2012 -0700
@@ -107,8 +107,9 @@
             if hostfingerprint:
                 raise util.Abort(_("host fingerprint for %s can't be "
                                    "verified (Python too old)") % host)
-            self.ui.warn(_("warning: certificate for %s can't be verified "
-                           "(Python too old)\n") % host)
+            if self.ui.configbool('ui', 'reportoldssl', True):
+                self.ui.warn(_("warning: certificate for %s can't be verified "
+                               "(Python too old)\n") % host)
             return
         if not sock.cipher(): # work around http://bugs.python.org/issue13721
             raise util.Abort(_('%s ssl connection error') % host)