public inbox for cluster-cvs@sourceware.org
help / color / mirror / Atom feed
* fence-agents: master - fencing.py: Adds device option login_eol_lf
@ 2009-07-21 13:49 Marek Grác
  0 siblings, 0 replies; only message in thread
From: Marek Grác @ 2009-07-21 13:49 UTC (permalink / raw)
  To: cluster-cvs-relay

Gitweb:        http://git.fedorahosted.org/git/fence-agents.git?p=fence-agents.git;a=commitdiff;h=0b2b6e5f5ccae39d5f8931ee6d222164198534ec
Commit:        0b2b6e5f5ccae39d5f8931ee6d222164198534ec
Parent:        06a1e2735127c38b5d28875f881ec8f8cac47879
Author:        Marek 'marx' Grac <mgrac@redhat.com>
AuthorDate:    Tue Jul 21 15:44:07 2009 +0200
Committer:     Marek 'marx' Grac <mgrac@redhat.com>
CommitterDate: Tue Jul 21 15:44:07 2009 +0200

fencing.py: Adds device option login_eol_lf

This option is used for login method using telnet. By default most of the fence agents
work with username\r\n but on some devices (e.g. HP iLO MP, sanbox2) it is interpreted
as there is empty password.
---
 fence/agents/lib/fencing.py.py |   14 ++++++++++++--
 1 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/fence/agents/lib/fencing.py.py b/fence/agents/lib/fencing.py.py
index 6a2e8b3..2d0205d 100644
--- a/fence/agents/lib/fencing.py.py
+++ b/fence/agents/lib/fencing.py.py
@@ -157,6 +157,11 @@ all_opt = {
 		"required" : "0",
 		"shortdesc" : "Force ribcl version to use",
 		"order" : 1 },
+	"login_eol_lf" : {
+		"getopt" : "",
+		"help" : "",
+		"order" : 1
+		},
 	"cmd_prompt" : {
 		"getopt" : "c:",
 		"longopt" : "command-prompt",
@@ -701,6 +706,11 @@ def fence_login(options):
 	if (options.has_key("-4")):
 		force_ipvx="-4 "
 
+	if (options["device_opt"].count("login_eol_lf")):
+		login_eol = "\n"
+	else:
+		login_eol = "\r\n"
+
 	try:
 		re_login = re.compile("(login: )|(Login Name:  )|(username: )|(User Name :)", re.IGNORECASE)
 		re_pass  = re.compile("password", re.IGNORECASE)
@@ -776,9 +786,9 @@ def fence_login(options):
 				sys.exit(EC_GENERIC_ERROR)
 
 			conn.log_expect(options, re_login, LOGIN_TIMEOUT)
-			conn.send(options["-l"]+"\r\n")
+			conn.send(options["-l"] + login_eol)
 			conn.log_expect(options, re_pass, SHELL_TIMEOUT)
-			conn.send(options["-p"]+"\r\n")
+			conn.send(options["-p"] + login_eol)
 			conn.log_expect(options, options["-c"], SHELL_TIMEOUT)
 	except pexpect.EOF:
 		fail(EC_LOGIN_DENIED) 


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2009-07-21 13:49 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-07-21 13:49 fence-agents: master - fencing.py: Adds device option login_eol_lf Marek Grác

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).