* [Cluster-devel] [PATCH] fencing: Missing password is not reported properly
@ 2012-01-30 14:58 Marek 'marx' Grac
2012-01-30 15:08 ` Fabio M. Di Nitto
0 siblings, 1 reply; 2+ messages in thread
From: Marek 'marx' Grac @ 2012-01-30 14:58 UTC (permalink / raw)
To: cluster-devel.redhat.com
When username is entered and password is missing then it is possible
that fence code will end with exception.
Resolves: rhbz#785091
---
fence/agents/lib/fencing.py.py | 11 ++++++++---
1 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/fence/agents/lib/fencing.py.py b/fence/agents/lib/fencing.py.py
index 8be0a61..e93f59a 100644
--- a/fence/agents/lib/fencing.py.py
+++ b/fence/agents/lib/fencing.py.py
@@ -25,6 +25,7 @@ EC_WAITING_ON = 6
EC_WAITING_OFF = 7
EC_STATUS = 8
EC_STATUS_HMC = 9
+EC_PASSWORD_MISSING = 10
TELNET_PATH = "/usr/bin/telnet"
SSH_PATH = "/usr/bin/ssh"
@@ -439,7 +440,8 @@ def fail(error_code):
EC_WAITING_ON : "Failed: Timed out waiting to power ON",
EC_WAITING_OFF : "Failed: Timed out waiting to power OFF",
EC_STATUS : "Failed: Unable to obtain correct plug status or plug is not available",
- EC_STATUS_HMC : "Failed: Either unable to obtaion correct plug status, partition is not available or incorrect HMC version used"
+ EC_STATUS_HMC : "Failed: Either unable to obtaion correct plug status, partition is not available or incorrect HMC version used",
+ EC_PASSWORD_MISSING : "Failed: You have to set login password"
}[error_code] + "\n"
sys.stderr.write(message)
sys.exit(EC_GENERIC_ERROR)
@@ -946,8 +948,11 @@ def fence_login(options):
conn.log_expect(options, re_login, int(options["-y"]))
conn.send(options["-l"] + login_eol)
conn.log_expect(options, re_pass, int(options["-Y"]))
- conn.send(options["-p"] + login_eol)
- conn.log_expect(options, options["-c"], int(options["-Y"]))
+ try:
+ conn.send(options["-p"] + login_eol)
+ conn.log_expect(options, options["-c"], int(options["-Y"]))
+ except KeyError:
+ fail(EC_PASSWORD_MISSING)
except pexpect.EOF:
fail(EC_LOGIN_DENIED)
except pexpect.TIMEOUT:
--
1.7.4.4
^ permalink raw reply related [flat|nested] 2+ messages in thread
* [Cluster-devel] [PATCH] fencing: Missing password is not reported properly
2012-01-30 14:58 [Cluster-devel] [PATCH] fencing: Missing password is not reported properly Marek 'marx' Grac
@ 2012-01-30 15:08 ` Fabio M. Di Nitto
0 siblings, 0 replies; 2+ messages in thread
From: Fabio M. Di Nitto @ 2012-01-30 15:08 UTC (permalink / raw)
To: cluster-devel.redhat.com
Looks good.
Fabio
On 1/30/2012 3:58 PM, Marek 'marx' Grac wrote:
> When username is entered and password is missing then it is possible
> that fence code will end with exception.
>
> Resolves: rhbz#785091
> ---
> fence/agents/lib/fencing.py.py | 11 ++++++++---
> 1 files changed, 8 insertions(+), 3 deletions(-)
>
> diff --git a/fence/agents/lib/fencing.py.py b/fence/agents/lib/fencing.py.py
> index 8be0a61..e93f59a 100644
> --- a/fence/agents/lib/fencing.py.py
> +++ b/fence/agents/lib/fencing.py.py
> @@ -25,6 +25,7 @@ EC_WAITING_ON = 6
> EC_WAITING_OFF = 7
> EC_STATUS = 8
> EC_STATUS_HMC = 9
> +EC_PASSWORD_MISSING = 10
>
> TELNET_PATH = "/usr/bin/telnet"
> SSH_PATH = "/usr/bin/ssh"
> @@ -439,7 +440,8 @@ def fail(error_code):
> EC_WAITING_ON : "Failed: Timed out waiting to power ON",
> EC_WAITING_OFF : "Failed: Timed out waiting to power OFF",
> EC_STATUS : "Failed: Unable to obtain correct plug status or plug is not available",
> - EC_STATUS_HMC : "Failed: Either unable to obtaion correct plug status, partition is not available or incorrect HMC version used"
> + EC_STATUS_HMC : "Failed: Either unable to obtaion correct plug status, partition is not available or incorrect HMC version used",
> + EC_PASSWORD_MISSING : "Failed: You have to set login password"
> }[error_code] + "\n"
> sys.stderr.write(message)
> sys.exit(EC_GENERIC_ERROR)
> @@ -946,8 +948,11 @@ def fence_login(options):
> conn.log_expect(options, re_login, int(options["-y"]))
> conn.send(options["-l"] + login_eol)
> conn.log_expect(options, re_pass, int(options["-Y"]))
> - conn.send(options["-p"] + login_eol)
> - conn.log_expect(options, options["-c"], int(options["-Y"]))
> + try:
> + conn.send(options["-p"] + login_eol)
> + conn.log_expect(options, options["-c"], int(options["-Y"]))
> + except KeyError:
> + fail(EC_PASSWORD_MISSING)
> except pexpect.EOF:
> fail(EC_LOGIN_DENIED)
> except pexpect.TIMEOUT:
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2012-01-30 15:08 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-01-30 14:58 [Cluster-devel] [PATCH] fencing: Missing password is not reported properly Marek 'marx' Grac
2012-01-30 15:08 ` Fabio M. Di Nitto
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.