##// END OF EJS Templates
sslutil: synchronize hostname matching logic with CPython...
sslutil: synchronize hostname matching logic with CPython sslutil contains its own hostname matching logic. CPython has code for the same intent. However, it is only available to Python 2.7.9+ (or distributions that have backported 2.7.9's ssl module improvements). This patch effectively imports CPython's hostname matching code from its ssl.py into sslutil.py. The hostname matching code itself is pretty similar. However, the DNS name matching code is much more robust and spec conformant. As the test changes show, this changes some behavior around wildcard handling and IDNA matching. The new behavior allows wildcards in the middle of words (e.g. 'f*.com' matches 'foo.com') This is spec compliant according to RFC 6125 Section 6.5.3 item 3. There is one test where the matcher is more strict. Before, '*.a.com' matched '.a.com'. Now it doesn't match. Strictly speaking this is a security vulnerability.

File last commit:

r26604:a3fcc8e3 default
r29452:26a5d605 3.8.4 stable
Show More
test-pull.t
104 lines | 2.7 KiB | text/troff | Tads3Lexer
Matt Mackall
tests: replace exit 80 with #require
r22046 #require serve
Mads Kiilerich
tests: use 'hghave serve' to guard tests that requires serve daemon management
r15446
Martin Geisler
tests: remove redundant mkdir...
r13956 $ hg init test
Adrian Buehlmann
combine tests
r12279 $ cd test
$ echo foo>foo
$ hg addremove
adding foo
$ hg commit -m 1
$ hg verify
checking changesets
checking manifests
crosschecking files in changesets and manifests
checking files
1 files, 1 changesets, 1 total revisions
$ hg serve -p $HGPORT -d --pid-file=hg.pid
$ cat hg.pid >> $DAEMON_PIDS
$ cd ..
Matt Mackall
tests: drop a bunch of sed calls from unified tests
r12366 $ hg clone --pull http://foo:bar@localhost:$HGPORT/ copy
Adrian Buehlmann
combine tests
r12279 requesting all changes
adding changesets
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files
updating to branch default
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ cd copy
$ hg verify
checking changesets
checking manifests
crosschecking files in changesets and manifests
checking files
1 files, 1 changesets, 1 total revisions
$ hg co
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ cat foo
foo
$ hg manifest --debug
2ed2a3912a0b24502043eae84ee4b279c18b90dd 644 foo
Matt Mackall
tests: drop a bunch of sed calls from unified tests
r12366 $ hg pull
Augie Fackler
clone: don't save user's password in .hg/hgrc (Issue3122)
r15552 pulling from http://foo@localhost:$HGPORT/
Adrian Buehlmann
combine tests
r12279 searching for changes
no changes found
Matt Mackall
tests: drop a bunch of sed calls from unified tests
r12366 $ hg rollback --dry-run --verbose
Gilles Moris
rollback: clarifies the message about the reverted state (issue2628)...
r13446 repository tip rolled back to revision -1 (undo pull: http://foo:***@localhost:$HGPORT/)
Adrian Buehlmann
combine tests
r12279
Mads Kiilerich
context: don't hex encode all unknown 20 char revision specs (issue4890)...
r26604 Test pull of non-existing 20 character revision specification, making sure plain ascii identifiers
not are encoded like a node:
$ hg pull -r 'xxxxxxxxxxxxxxxxxxxy'
pulling from http://foo@localhost:$HGPORT/
abort: unknown revision 'xxxxxxxxxxxxxxxxxxxy'!
[255]
$ hg pull -r 'xxxxxxxxxxxxxxxxxx y'
pulling from http://foo@localhost:$HGPORT/
abort: unknown revision '7878787878787878787878787878787878782079'!
[255]
Martin Geisler
tests: added a short description to issue numbers...
r12399 Issue622: hg init && hg pull -u URL doesn't checkout default branch
Adrian Buehlmann
combine tests
r12279
$ cd ..
$ hg init empty
$ cd empty
$ hg pull -u ../test
pulling from ../test
requesting all changes
adding changesets
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
Test 'file:' uri handling:
timeless@mozdev.org
spelling: doesn't/does not
r17486 $ hg pull -q file://../test-does-not-exist
Brodie Rao
hg: look up schemes using url.url
r13823 abort: file:// URLs can only refer to localhost
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Adrian Buehlmann
combine tests
r12279
Brodie Rao
url: refactor util.drop_scheme() and hg.localpath() into url.localpath()...
r13826 $ hg pull -q file://../test
abort: file:// URLs can only refer to localhost
[255]
Matt Mackall
check-code: allow disabling msys path check
r24205 $ hg pull -q file:../test # no-msys
Adrian Buehlmann
combine tests
r12279
Matt Mackall
tests: fix a bunch of pointless #s in unified tests
r12328 It's tricky to make file:// URLs working on every platform with
regular shell commands.
Adrian Buehlmann
combine tests
r12279
Augie Fackler
tests: use $PYTHON instead of hardcoding python...
r22947 $ URL=`$PYTHON -c "import os; print 'file://foobar' + ('/' + os.getcwd().replace(os.sep, '/')).replace('//', '/') + '/../test'"`
Adrian Buehlmann
combine tests
r12279 $ hg pull -q "$URL"
Brodie Rao
url: abort on file:// URLs with non-localhost hosts
r13817 abort: file:// URLs can only refer to localhost
[255]
Adrian Buehlmann
combine tests
r12279
Augie Fackler
tests: use $PYTHON instead of hardcoding python...
r22947 $ URL=`$PYTHON -c "import os; print 'file://localhost' + ('/' + os.getcwd().replace(os.sep, '/')).replace('//', '/') + '/../test'"`
Brodie Rao
url: abort on file:// URLs with non-localhost hosts
r13817 $ hg pull -q "$URL"
Mads Kiilerich
tests: add missing trailing 'cd ..'...
r16913
$ cd ..