mirror of https://github.com/ansible/ansible.git
Limit askpass prompts to single attempt (#85364)
* Limit askpass prompts to single attempt OpenSSH client option NumberOfPasswordPrompts defaults to 3 so in case an incorrect connection password is provided it is excessively tried 3 times. Not only that but running the `_ssh_askpass` entry point multiple times (via ssh) results in `json.decoder.JSONDecodeError` as after the first run the shared memory is zero'd and the subsequent runs end up calling `json.loads` on empty data. `json.decoder.JSONDecodeError` does not happen prior to Python 3.13 as the share memory is unlinked automatically on `.close()` and the `_ssh_askpass` entry point exits with return code 1 before attempting to load zero'd memory. Fixes #85359 * changelog and tests * Update changelogs/fragments/85359-askpass-incorrect-password-retries.yml Co-authored-by: Matt Davis <6775756+nitzmahone@users.noreply.github.com> * Update lib/ansible/cli/_ssh_askpass.py Co-authored-by: Martin Krizek <martin.krizek@gmail.com> * Avoid race condition in second unlink --------- Co-authored-by: Matt Davis <6775756+nitzmahone@users.noreply.github.com> Co-authored-by: Matt Clay <matt@mystile.com>pull/85049/merge
parent
fcffd707c6
commit
54ccad9e46
@ -0,0 +1,2 @@
|
|||||||
|
bugfixes:
|
||||||
|
- ssh connection plugin - Allow only one password prompt attempt when utilizing ``SSH_ASKPASS`` (https://github.com/ansible/ansible/issues/85359)
|
||||||
Loading…
Reference in New Issue