abort: error: EOF occurred in violation of protocol (_ssl.c:590)

Nathan Goldbaum nathan12343 at gmail.com
Tue Feb 28 15:20:08 UTC 2017


On Tue, Feb 28, 2017 at 9:09 AM, Andreas Buff <autobuff at gmx.de> wrote:

> Hi,
>
> thank you for coming back to me. Really appreciate.
>
> Did you run this python script with /usr/bin/python? That’s what hg is
> running with if you used our package installer, and I suspect you’ve got
> inadequate TLS support.
>
> (This is a known deficiency of our packaged builds, and is something we’re
> hoping to address soon.)
>
> I have re-tried both Python scripts, explicitly using /usr/bin/python.
> Exact same result. It is another version though:
>
> * /usr/bin/python -V:*
>
> Python 2.7.10
>
> I have also tried to install Mercurial via macports and homebrew. Same
> results.
>

Are you sure about this? Both homebrew's and macport's python packages
should be linked against an up-to-date version of OpenSSL. If you continue
to see OpenSSL errors using homebrew's python (say) then the issue might
not be with your python or hg client.

Do you (or anyone) know a workaround this (how I understand known) issue?
>
> Kind regards,
> Andreas
>
>
> On 26/02/17 02:21, Augie Fackler wrote:
>
>
> On Feb 24, 2017, at 4:05 PM, Andreas Buff <autobuff at gmx.de> wrote:
>
> Hi,
>
> I seem to have an issue using HTTPS/TLS when cloning a repo.
>
> Using "hg clone https://domain.com/path/to/repo",
>
> The error I get is:
>
> "abort: error: EOF occurred in violation of protocol (_ssl.c:590)"
>
> --debug --traceback output can be found on the bottom.
>
> This does work though: hg clone http://selenic.com/hg mercurial-repo
>
> I am using Mercurial 4.0.1 on *OSX 10.11.6* (installed with package
> installer
> <https://www.mercurial-scm.org/mac/binaries/Mercurial-4.0.1-macosx10.11.pkg>
> ).
>
> *hg --version:*
> Mercurial Distributed SCM (version 4.0.1)
>
> *python -V:*
> Python 2.7.13
>
> *My .hgrc**:*
>
> [hostsecurity]
> disabletls10warning = true
> [hostfingerprints]
> domain.com = my:sh:aa:a0:29:04:02:ed:aa:23:40:66:b2:eb:e1:0a:03:c0:ec:66
>
> *This Python script runs fine:*
>
>
> Did you run this python script with /usr/bin/python? That’s what hg is
> running with if you used our package installer, and I suspect you’ve got
> inadequate TLS support.
>
> (This is a known deficiency of our packaged builds, and is something we’re
> hoping to address soon.)
>
> import socket, sslcontext = ssl.create_default_context()context.verify_mode = ssl.CERT_REQUIREDcontext.load_default_certs()conn = context.wrap_socket(socket.socket(socket.AF_INET), server_hostname='www.mozilla.org')conn.connect(('www.mozilla.org', 443))
> *This Python script**:*
>
> import sslcontext = ssl.create_default_context()context.load_default_certs()context.cert_store_stats()
> *returns:* {'x509': 0, 'x509_ca': 0, 'crl': 0}
>
> which does look fishy to me.
>
> I searched *a lot* and get out of ideas.
>
> Thankful for any hints.
>
> Best,
> Andreas
>
> *Output of "hg clone --debug --traceback https://dom <https://dom/>**ain.com/
> <http://ain.com/>**path/to/repo":* sending capabilities command Traceback
> (most recent call last):   File "/Library/Python/2.7/site-
> packages/mercurial/dispatch.py", line 205, in _runcatchfunc     return
> _dispatch(req)   File "/Library/Python/2.7/site-
> packages/mercurial/dispatch.py", line 901, in _dispatch     cmdpats,
> cmdoptions)   File "/Library/Python/2.7/site-packages/mercurial/dispatch.py",
> line 650, in runcommand     ret = _runcommand(ui, options, cmd, d)   File
> "/Library/Python/2.7/site-packages/mercurial/dispatch.py", line 909, in
> _runcommand     return cmdfunc()   File "/Library/Python/2.7/site-
> packages/mercurial/dispatch.py", line 898, in <lambda>     d = lambda:
> util.checksignature(func)(ui, *args, **cmdoptions)   File
> "/Library/Python/2.7/site-packages/mercurial/util.py", line 1037, in
> check     return func(*args, **kwargs)   File "/Library/Python/2.7/site-
> packages/mercurial/commands.py", line 1559, in clone
> shareopts=opts.get('shareopts'))   File "/Library/Python/2.7/site-packages/mercurial/hg.py",
> line 447, in clone     srcpeer = peer(ui, peeropts, source)   File
> "/Library/Python/2.7/site-packages/mercurial/hg.py", line 175, in peer
>     return _peerorrepo(rui, path, create).peer()   File
> "/Library/Python/2.7/site-packages/mercurial/hg.py", line 152, in
> _peerorrepo     obj = _peerlookup(path).instance(ui, path, create)   File
> "/Library/Python/2.7/site-packages/mercurial/httppeer.py", line 298, in
> instance     inst._fetchcaps()   File "/Library/Python/2.7/site-
> packages/mercurial/httppeer.py", line 78, in _fetchcaps     self.caps =
> set(self._call('capabilities').split())   File "/Library/Python/2.7/site-
> packages/mercurial/httppeer.py", line 207, in _call     fp =
> self._callstream(cmd, **args)   File "/Library/Python/2.7/site-
> packages/mercurial/httppeer.py", line 154, in _callstream     resp =
> self.urlopener.open(req)   File "/System/Library/Frameworks/
> Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 431, in
> open     response = self._open(req, data)   File
> "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py",
> line 449, in _open     '_open', req)   File "/System/Library/Frameworks/
> Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 409, in
> _call_chain     result = func(*args)   File "/Library/Python/2.7/site-packages/mercurial/url.py",
> line 342, in https_open     return self.do_open(self._makeconnection,
> req)   File "/Library/Python/2.7/site-packages/mercurial/keepalive.py",
> line 264, in do_open     raise urlerr.urlerror(err) URLError: <urlopen
> error EOF occurred in violation of protocol (_ssl.c:590)>
> _______________________________________________ Mercurial mailing list
> Mercurial at mercurial-scm.org https://www.mercurial-scm.org/
> mailman/listinfo/mercurial
>
>
> _______________________________________________
> Mercurial mailing list
> Mercurial at mercurial-scm.org
> https://www.mercurial-scm.org/mailman/listinfo/mercurial
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mercurial-scm.org/pipermail/mercurial/attachments/20170228/51875f22/attachment-0002.html>


More information about the Mercurial mailing list