cluster: RHEL4 - fence_wti: #508268 - Fence agent for WTI ends with traceback when option is missing

Marek Grác marx@fedoraproject.org
Fri Jun 26 11:36:00 GMT 2009


Gitweb:        http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=dc3627fc32acc1e79f251a6aaab7b362920323aa
Commit:        dc3627fc32acc1e79f251a6aaab7b362920323aa
Parent:        7868c811ac968bc973ab452f5bcf1676d65565bd
Author:        Marek 'marx' Grac <mgrac@redhat.com>
AuthorDate:    Fri Jun 26 13:25:17 2009 +0200
Committer:     Marek 'marx' Grac <mgrac@redhat.com>
CommitterDate: Fri Jun 26 13:32:14 2009 +0200

fence_wti: #508268 - Fence agent for WTI ends with traceback when option is missing

Login name/password are NOT required for WTI, so they have to be checked after
login/password is encountered.
---
 fence/agents/wti/fence_wti.py |   14 ++++++++++----
 1 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/fence/agents/wti/fence_wti.py b/fence/agents/wti/fence_wti.py
index a04de4a..6335df7 100755
--- a/fence/agents/wti/fence_wti.py
+++ b/fence/agents/wti/fence_wti.py
@@ -92,12 +92,18 @@ def main():
 
 			result = conn.log_expect(options, [ re_login, "Password: ", re_prompt ], SHELL_TIMEOUT)
 			if result == 0:
-				conn.send(options["-l"]+"\r\n")
-				result = conn.log_expect(options, [ re_login, "Password: ", re_prompt ], SHELL_TIMEOUT)
+				if options.has_key("-l"):
+					conn.send(options["-l"]+"\r\n")
+					result = conn.log_expect(options, [ re_login, "Password: ", re_prompt ], SHELL_TIMEOUT)
+				else:
+					fail_usage("Failed: You have to set login name")
 		
 			if result == 1:
-				conn.send(options["-p"]+"\r\n")
-				conn.log_expect(options, options["-c"], SHELL_TIMEOUT)	
+				if options.has_key("-p"):
+					conn.send(options["-p"]+"\r\n")
+					conn.log_expect(options, options["-c"], SHELL_TIMEOUT)	
+				else:
+					fail_usage("Failed: You have to enter password or password script")
 		except pexpect.EOF:
 			fail(EC_LOGIN_DENIED) 
 		except pexpect.TIMEOUT:



More information about the Cluster-cvs mailing list