Martijn Pieters <mjpieters@fb.com> [Wed, 08 Jun 2016 16:18:43 +0100] rev 29335
graphmod: avoid sorting when already sorted
This is somewhat redundant now, but allows us to add a toposort that should not
be re-sorted either.
Gregory Szorc <gregory.szorc@gmail.com> [Tue, 07 Jun 2016 20:29:54 -0700] rev 29334
sslutil: per-host config option to define certificates
Recent work has introduced the [hostsecurity] config section for
defining per-host security settings. This patch builds on top
of this foundation and implements the ability to define a per-host
path to a file containing certificates used for verifying the server
certificate. It is logically a per-host web.cacerts setting.
This patch also introduces a warning when both per-host
certificates and fingerprints are defined. These are mutually
exclusive for host verification and I think the user should be
alerted when security settings are ambiguous because, well,
security is important.
Tests validating the new behavior have been added.
I decided against putting "ca" in the option name because a
non-CA certificate can be specified and used to validate the server
certificate (commonly this will be the exact public certificate
used by the server). It's worth noting that the underlying
Python API used is load_verify_locations(cafile=X) and it calls
into OpenSSL's SSL_CTX_load_verify_locations(). Even OpenSSL's
documentation seems to omit that the file can contain a non-CA
certificate if it matches the server's certificate exactly. I
thought a CA certificate was a special kind of x509 certificate.
Perhaps I'm wrong and any x509 certificate can be used as a
CA certificate [as far as OpenSSL is concerned]. In any case,
I thought it best to drop "ca" from the name because this reflects
reality.
Yuya Nishihara <yuya@tcha.org> [Fri, 27 May 2016 23:18:38 +0900] rev 29333
tests: add basic tests for SMTP over SSL
SSL handling in mail.py wasn't covered by our test suite, therefore it was
sometimes broken. This patch introduces pretty minimal tests that only cover
the default path. We can extend it later.
Tested with python 2.6.9 and 2.7.11 on Debian sid.
Yuya Nishihara <yuya@tcha.org> [Fri, 27 May 2016 22:43:47 +0900] rev 29332
tests: add dummy SMTP daemon for SSL tests
Currently it only supports SMTP over SSL since SMTPS should be simpler than
handling StartTLS.
Since we don't need asynchronous server for our tests, it does TLS handshake
in blocking way. But asyncore is required by Python smtpd module.
Yuya Nishihara <yuya@tcha.org> [Fri, 27 May 2016 22:40:09 +0900] rev 29331
tests: extract SSL certificates from test-https.t
They can be reused in SMTPS tests.
Yuya Nishihara <yuya@tcha.org> [Tue, 31 May 2016 21:49:49 +0900] rev 29330
check-code: make 'ls' pattern less invasive
I got false positive at "--tls smtps --certificate ...".
Henrik Stuart <henriks@unity3d.com> [Tue, 07 Jun 2016 08:32:33 +0200] rev 29329
largefiles: fix support for local largefiles while using share extension
Prior to revision 2a3f24786d09, largefiles were saved in the local repository,
even if it was using the share extension. After that change, all largefiles are
now stored in the shared repository. However, the backward compatibility for
existing largefiles already placed in the local repository was never tested,
and has been broken since.
Matt Mackall <mpm@selenic.com> [Thu, 09 Jun 2016 13:47:42 -0500] rev 29328
merge with stable
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 07 Jun 2016 11:57:11 +0200] rev 29327
crecord: drop unused "operation" parameter from filterpatch function
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 07 Jun 2016 10:37:19 +0200] rev 29326
patch: define full messages for interactive record/revert
Followup 14eee72c8d52 to provide complete context for proper localization.
Also update cmdutil.recordfilter docstring to remove recommendation that
"operation" argument should be translated. Indeed, for record/revert, we
either go to patch.filterpatch or crecord.filterpatch (in curses mode) ; the
former now build the full ui message from the operation parameter and the
latter does not use this parameter (removing in a followup patch). For shelve,
operation is not specified and this thus falls back to "record".