Bug 1073947
| Summary: | Fence-agent (ssh) fails on login if identity file was used | |||
|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux 7 | Reporter: | Ondrej Mular <omular> | |
| Component: | fence-agents | Assignee: | Marek Grac <mgrac> | |
| Status: | CLOSED ERRATA | QA Contact: | Cluster QE <mspqa-list> | |
| Severity: | high | Docs Contact: | ||
| Priority: | high | |||
| Version: | 7.0 | CC: | cluster-maint, djansa, jherrman, mjuricek | |
| Target Milestone: | rc | |||
| Target Release: | --- | |||
| Hardware: | Unspecified | |||
| OS: | Unspecified | |||
| Whiteboard: | ||||
| Fixed In Version: | fence-agents-4.0.11-1.el7 | Doc Type: | Bug Fix | |
| Doc Text: |
Prior to this update, fence agents that connected using the SSH protocol failed on login if an identity file was used as the method of authentication. The bug has been fixed and these fence agents now successfully authenticate through an identity file.
|
Story Points: | --- | |
| Clone Of: | ||||
| : | 1075683 1075691 (view as bug list) | Environment: | ||
| Last Closed: | 2015-03-05 09:06:53 UTC | Type: | Bug | |
| Regression: | --- | Mount Type: | --- | |
| Documentation: | --- | CRM: | ||
| Verified Versions: | Category: | --- | ||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | ||
| Cloudforms Team: | --- | Target Upstream Version: | ||
| Embargoed: | ||||
| Bug Depends On: | ||||
| Bug Blocks: | 1075683, 1075691, 1113520 | |||
Patch is in upstream now: https://git.fedorahosted.org/cgit/fence-agents.git/commit/?id=a90a90cf56f713be9a4064a02c0f630425b2091c Unit test: before applying patch: [root@virt-135 ~]# fence_apc -a node -l username -k /etc/passwd -o status -x -n 1 Traceback (most recent call last): File "/sbin/fence_apc", line 289, in ? main() File "/sbin/fence_apc", line 259, in main conn = fence_login(options) File "/usr/lib/fence/fencing.py", line 925, in fence_login result = conn.log_expect(options, [ options["-c"], "Are you sure you want to continue connecting (yes/no)?", "Enter passphrase for key '"+options["-k"]+"':" ], int(options["-y"])) File "/usr/lib/fence/fencing.py", line 406, in log_expect result = self.expect(pattern, timeout) File "/usr/lib/python2.4/site-packages/pexpect.py", line 1310, in expect compiled_pattern_list = self.compile_pattern_list(pattern) File "/usr/lib/python2.4/site-packages/pexpect.py", line 1229, in compile_pattern_list raise TypeError ('Argument must be one of StringTypes, EOF, TIMEOUT, SRE_Pattern, or a list of those type. %s' % str(type(p))) TypeError: Argument must be one of StringTypes, EOF, TIMEOUT, SRE_Pattern, or a list of those type. <type 'list'> after applying patch: fence_apc -a node -l username -k /etc/passwd -o status -x -n 1 Unable to connect/login to fencing device Patch is part of the fence-agents 4.0.11 Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHBA-2015-0393.html |
Description of problem: Fence-agent (ssh) fails on login if identity file was used, because of uncaught exception. How reproducible: use identity file as authentication method in fence-agent Steps to Reproduce: 1. fence_alom -a node -l username -k ~/.ssh/id_rsa -o status Actual results: Traceback (most recent call last): File "fence_alom", line 65, in <module> main() File "fence_alom", line 52, in main conn = fence_login(options) File "/.../fencing.py", line 1027, in fence_login "Enter passphrase for key '" + options["--identity-file"] + "':" ], int(options["--login-timeout"])) File "/.../fencing.py", line 383, in log_expect result = self.expect(pattern, timeout) File "/usr/lib/python2.7/site-packages/pexpect.py", line 1310, in expect compiled_pattern_list = self.compile_pattern_list(pattern) File "/usr/lib/python2.7/site-packages/pexpect.py", line 1229, in compile_pattern_list raise TypeError ('Argument must be one of StringTypes, EOF, TIMEOUT, SRE_Pattern, or a list of those type. %s' % str(type(p))) TypeError: Argument must be one of StringTypes, EOF, TIMEOUT, SRE_Pattern, or a list of those type. <type 'list'> Expected results: Status: ON