This website requires JavaScript.
Explore
Cloud
Chat
CI/CD
Help
Sign in
cmueller
/
ansible
Watch
1
Star
0
Fork
You've already forked ansible
0
Code
Issues
Pull requests
Projects
Releases
Wiki
Activity
64871470e2
ansible
/
test
/
integration
/
targets
/
known_hosts
/
aliases
2 lines
16 B
Text
Raw
Normal View
History
Unescape
Escape
known_hosts: support --diff (#20349) * known_hosts: support --diff * known_hosts: support --diff also without --check * Add unit tests and fix incorrect diff in one corner case Tests are good! * Refactor for readability * Python 3 compat * More Python 3 compat * Add an integration test for known_hosts * Handle ssh-keygen -HF returning non-zero exit code AFAICT this is a bug in ssh-keygen in some newer OpenSSH versions (>= 6.4 probably; see commit dd9d5cc670eccf3c92c8bf974dd294787fe94169): when you invoke ssh-keygen with -H and -F <host> options, it always returns exit code 1. This is because in ssh-keygen.c there's a function do_known_hosts() which calls exit (find_host && !ctx.found_key); at the end, and find_host is 1 (because we passed -F on the command line), but ctx.found_key is always 0. Why is found_key always 0? Because the callback passed to hostkeys_foreach(), which is known_hosts_hash(), never bothers to set found_key to 1. * This test does not need root * Avoid ssh-ed25519 keys in sample known_hosts file Older versions of OpenSSH do not like them and ssh-keygen -HF aborts with an error when it sees such keys: line 5 invalid key: example.net... /root/ansible_testing/known_hosts is not a valid known_hosts file. * Fix Python 3 errors Specifically, the default mode of tempfile.NamedTemporaryFile is 'w+b', which means Python 3 wants us to write bytes objects to it -- but the keys we have are all unicode strings.
2017-02-08 15:56:03 +01:00
posix/ci/group2
Reference in a new issue
Copy permalink