<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
Lance,<br>
<br>
I edited f5login file and added "-d" on expect line. Below is what I
see in debug.<br>
clearf5login test-f5-01<br>
expect version 5.43.0<br>
<br>
argv[0] = /usr/local/bin/expect&nbsp; argv[1] = -d&nbsp; argv[2] =
/opt/rancid/bin/f5login&nbsp; argv[3] = test-f5-01&nbsp; <br>
<br>
set argc 1<br>
<br>
set argv0 "/opt/rancid/bin/f5login"<br>
<br>
set argv "test-f5-01"<br>
<br>
executing commands from command file /opt/rancid/bin/f5login<br>
<br>
test-f5-01<br>
spawn ssh -c 3des -x -l root test-f5-01<br>
<br>
<br>
using master pty /dev/ptyp2<br>
parent: waiting for sync byte<br>
<br>
parent: telling child to go ahead<br>
<br>
parent: now unsynchronized from child<br>
<br>
spawn: returns {30412}<br>
<br>
<br>
<br>
expect: does "" (spawn_id exp4) match regular expression "(Connection
refused|Secure connection [^\n\r]+ refused)"? no<br>
<br>
"(Connection closed by|Connection to [^\n\r]+ closed)"? no<br>
<br>
<br>
<br>
expect: does "" (spawn_id exp4) match glob pattern "unknown host\r"? no<br>
<br>
<br>
<br>
expect: does "" (spawn_id exp4) match glob pattern "Host is
unreachable"? no<br>
<br>
"No address associated with name"? no<br>
<br>
"(Host key not found |The authenticity of host .* be
established).*(yes/no)?"? no<br>
<br>
"HOST IDENTIFICATION HAS CHANGED.* (yes/no)?"? no<br>
<br>
"Offending key for .* (yes/no)?"? no<br>
<br>
"(denied|Sorry)"? no<br>
<br>
"Login failed"? no<br>
<br>
"% (Bad passwords|Authentication failed)"? no<br>
<br>
"Press any key to continue."? no<br>
<br>
"Enter Selection: "? no<br>
<br>
"@[^\r\n]+ ([Pp]assword|passwd):"? no<br>
<br>
"(Username|Login|login|user name):"? no<br>
<br>
"([Pp]assword|passwd):"? no<br>
<br>
"(#| \(enable\))"? no<br>
<br>
"Login invalid"? no<br>
<br>
Password: <br>
<br>
expect: does "Password: " (spawn_id exp4) match regular expression
"(Connection refused|Secure connection [^\n\r]+ refused)"? no<br>
<br>
"(Connection closed by|Connection to [^\n\r]+ closed)"? no<br>
<br>
<br>
<br>
expect: does "Password: " (spawn_id exp4) match glob pattern "unknown
host\r"? no<br>
<br>
<br>
<br>
expect: does "Password: " (spawn_id exp4) match glob pattern "Host is
unreachable"? no<br>
<br>
"No address associated with name"? no<br>
<br>
"(Host key not found |The authenticity of host .* be
established).*(yes/no)?"? no<br>
<br>
"HOST IDENTIFICATION HAS CHANGED.* (yes/no)?"? no<br>
<br>
"Offending key for .* (yes/no)?"? no<br>
<br>
"(denied|Sorry)"? no<br>
<br>
"Login failed"? no<br>
<br>
"% (Bad passwords|Authentication failed)"? no<br>
<br>
"Press any key to continue."? no<br>
<br>
"Enter Selection: "? no<br>
<br>
"@[^\r\n]+ ([Pp]assword|passwd):"? no<br>
<br>
"(Username|Login|login|user name):"? no<br>
<br>
"([Pp]assword|passwd):"? yes<br>
<br>
expect: set expect_out(0,string) "Password:"<br>
<br>
expect: set expect_out(1,string) "Password"<br>
<br>
expect: set expect_out(spawn_id) "exp4"<br>
<br>
expect: set expect_out(buffer) "Password:"<br>
<br>
send: sending "***********\r" to { exp4 }<br>
<br>
expect: continuing expect<br>
<br>
<br>
<br>
expect: does " " (spawn_id exp4) match regular expression "(Connection
refused|Secure connection [^\n\r]+ refused)"? no<br>
<br>
"(Connection closed by|Connection to [^\n\r]+ closed)"? no<br>
<br>
<br>
<br>
expect: does " " (spawn_id exp4) match glob pattern "unknown host\r"? no<br>
<br>
<br>
<br>
expect: does " " (spawn_id exp4) match glob pattern "Host is
unreachable"? no<br>
<br>
"No address associated with name"? no<br>
<br>
"(Host key not found |The authenticity of host .* be
established).*(yes/no)?"? no<br>
<br>
"HOST IDENTIFICATION HAS CHANGED.* (yes/no)?"? no<br>
<br>
"Offending key for .* (yes/no)?"? no<br>
<br>
"(denied|Sorry)"? no<br>
<br>
"Login failed"? no<br>
<br>
"% (Bad passwords|Authentication failed)"? no<br>
<br>
"Press any key to continue."? no<br>
<br>
"Enter Selection: "? no<br>
<br>
"@[^\r\n]+ ([Pp]assword|passwd):"? no<br>
<br>
"(Username|Login|login|user name):"? no<br>
<br>
"([Pp]assword|passwd):"? no<br>
<br>
"(#| \(enable\))"? no<br>
<br>
"Login invalid"? no<br>
<br>
<br>
<br>
<br>
<br>
expect: does " \r\n" (spawn_id exp4) match regular expression
"(Connection refused|Secure connection [^\n\r]+ refused)"? no<br>
<br>
"(Connection closed by|Connection to [^\n\r]+ closed)"? no<br>
<br>
<br>
<br>
expect: does " \r\n" (spawn_id exp4) match glob pattern "unknown
host\r"? no<br>
<br>
<br>
<br>
expect: does " \r\n" (spawn_id exp4) match glob pattern "Host is
unreachable"? no<br>
<br>
"No address associated with name"? no<br>
<br>
"(Host key not found |The authenticity of host .* be
established).*(yes/no)?"? no<br>
<br>
"HOST IDENTIFICATION HAS CHANGED.* (yes/no)?"? no<br>
<br>
"Offending key for .* (yes/no)?"? no<br>
<br>
"(denied|Sorry)"? no<br>
<br>
"Login failed"? no<br>
<br>
"% (Bad passwords|Authentication failed)"? no<br>
<br>
"Press any key to continue."? no<br>
<br>
"Enter Selection: "? no<br>
<br>
"@[^\r\n]+ ([Pp]assword|passwd):"? no<br>
<br>
"(Username|Login|login|user name):"? no<br>
<br>
"([Pp]assword|passwd):"? no<br>
<br>
"(#| \(enable\))"? no<br>
<br>
"Login invalid"? no<br>
<br>
Last login: Fri Jul 13 14:38:03 2007 from 172.24.100.12<br>
<br>
<br>
<br>
<br>
expect: does " \r\nLast login: Fri Jul 13 14:38:03 2007 from
172.24.100.12\r\r\n" (spawn_id exp4) match regular expression
"(Connection refused|Secure connection [^\n\r]+ refused)"? no<br>
<br>
"(Connection closed by|Connection to [^\n\r]+ closed)"? no<br>
<br>
<br>
<br>
expect: does " \r\nLast login: Fri Jul 13 14:38:03 2007 from
172.24.100.12\r\r\n" (spawn_id exp4) match glob pattern "unknown
host\r"? no<br>
<br>
<br>
<br>
expect: does " \r\nLast login: Fri Jul 13 14:38:03 2007 from
172.24.100.12\r\r\n" (spawn_id exp4) match glob pattern "Host is
unreachable"? no<br>
<br>
"No address associated with name"? no<br>
<br>
"(Host key not found |The authenticity of host .* be
established).*(yes/no)?"? no<br>
<br>
"HOST IDENTIFICATION HAS CHANGED.* (yes/no)?"? no<br>
<br>
"Offending key for .* (yes/no)?"? no<br>
<br>
"(denied|Sorry)"? no<br>
<br>
"Login failed"? no<br>
<br>
"% (Bad passwords|Authentication failed)"? no<br>
<br>
"Press any key to continue."? no<br>
<br>
"Enter Selection: "? no<br>
<br>
"@[^\r\n]+ ([Pp]assword|passwd):"? no<br>
<br>
"(Username|Login|login|user name):"? yes<br>
<br>
expect: set expect_out(0,string) "login:"<br>
<br>
expect: set expect_out(1,string) "login"<br>
<br>
expect: set expect_out(spawn_id) "exp4"<br>
<br>
expect: set expect_out(buffer) " \r\nLast login:"<br>
<br>
send: sending "root\r" to { exp4 }<br>
<br>
expect: continuing expect<br>
<br>
<br>
<br>
expect: does " Fri Jul 13 14:38:03 2007 from 172.24.100.12\r\r\n"
(spawn_id exp4) match regular expression "(Connection refused|Secure
connection [^\n\r]+ refused)"? no<br>
<br>
"(Connection closed by|Connection to [^\n\r]+ closed)"? no<br>
<br>
<br>
<br>
expect: does " Fri Jul 13 14:38:03 2007 from 172.24.100.12\r\r\n"
(spawn_id exp4) match glob pattern "unknown host\r"? no<br>
<br>
<br>
<br>
expect: does " Fri Jul 13 14:38:03 2007 from 172.24.100.12\r\r\n"
(spawn_id exp4) match glob pattern "Host is unreachable"? no<br>
<br>
"No address associated with name"? no<br>
<br>
"(Host key not found |The authenticity of host .* be
established).*(yes/no)?"? no<br>
<br>
"HOST IDENTIFICATION HAS CHANGED.* (yes/no)?"? no<br>
<br>
"Offending key for .* (yes/no)?"? no<br>
<br>
"(denied|Sorry)"? no<br>
<br>
"Login failed"? no<br>
<br>
"% (Bad passwords|Authentication failed)"? no<br>
<br>
"Press any key to continue."? no<br>
<br>
"Enter Selection: "? no<br>
<br>
"@[^\r\n]+ ([Pp]assword|passwd):"? no<br>
<br>
"(Username|Login|login|user name):"? no<br>
<br>
"([Pp]assword|passwd):"? no<br>
<br>
"(#| \(enable\))"? no<br>
<br>
"Login invalid"? no<br>
<br>
[root@test-f5-01:Active] config # <br>
<br>
expect: does " Fri Jul 13 14:38:03 2007 from
172.24.100.12\r\r\n[root@test-f5-01:Active] config # " (spawn_id exp4)
match regular expression "(Connection refused|Secure connection
[^\n\r]+ refused)"? no<br>
<br>
"(Connection closed by|Connection to [^\n\r]+ closed)"? no<br>
<br>
<br>
<br>
expect: does " Fri Jul 13 14:38:03 2007 from
172.24.100.12\r\r\n[root@test-f5-01:Active] config # " (spawn_id exp4)
match glob pattern "unknown host\r"? no<br>
<br>
<br>
<br>
expect: does " Fri Jul 13 14:38:03 2007 from
172.24.100.12\r\r\n[root@test-f5-01:Active] config # " (spawn_id exp4)
match glob pattern "Host is unreachable"? no<br>
<br>
"No address associated with name"? no<br>
<br>
"(Host key not found |The authenticity of host .* be
established).*(yes/no)?"? no<br>
<br>
"HOST IDENTIFICATION HAS CHANGED.* (yes/no)?"? no<br>
<br>
"Offending key for .* (yes/no)?"? no<br>
<br>
"(denied|Sorry)"? no<br>
<br>
"Login failed"? no<br>
<br>
"% (Bad passwords|Authentication failed)"? no<br>
<br>
"Press any key to continue."? no<br>
<br>
"Enter Selection: "? no<br>
<br>
"@[^\r\n]+ ([Pp]assword|passwd):"? no<br>
<br>
"(Username|Login|login|user name):"? no<br>
<br>
"([Pp]assword|passwd):"? no<br>
<br>
"(#| \(enable\))"? yes<br>
<br>
expect: set expect_out(0,string) "#"<br>
<br>
expect: set expect_out(1,string) "#"<br>
<br>
expect: set expect_out(spawn_id) "exp4"<br>
<br>
expect: set expect_out(buffer) " Fri Jul 13 14:38:03 2007 from
172.24.100.12\r\r\n[root@test-f5-01:Active] config #"<br>
<br>
send: sending "\r" to { exp4 }<br>
<br>
<br>
<br>
expect: does " " (spawn_id exp4) match regular expression "[\r\n]+"? no<br>
<br>
"^(.+:)1 (#| \(enable\))"? no<br>
<br>
"^.+(#| \(enable\))"? no<br>
<br>
"^.+&gt; \(enable\)"? no<br>
<br>
ro<br>
<br>
expect: does " ro" (spawn_id exp4) match regular expression "[\r\n]+"?
no<br>
<br>
"^(.+:)1 (#| \(enable\))"? no<br>
<br>
"^.+(#| \(enable\))"? no<br>
<br>
"^.+&gt; \(enable\)"? no<br>
<br>
ot<br>
<br>
-bash: root: command not found<br>
<br>
[root@test-f5-01:Active] config # <br>
<br>
expect: does " root\r\n-bash: root: command not
found\r\n[root@test-f5-01:Active] config # " (spawn_id exp4) match
regular expression "[\r\n]+"? yes<br>
<br>
expect: set expect_out(0,string) "\r\n"<br>
<br>
expect: set expect_out(spawn_id) "exp4"<br>
<br>
expect: set expect_out(buffer) " root\r\n"<br>
<br>
expect: continuing expect<br>
<br>
<br>
<br>
expect: does "-bash: root: command not
found\r\n[root@test-f5-01:Active] config # " (spawn_id exp4) match
regular expression "[\r\n]+"? yes<br>
<br>
expect: set expect_out(0,string) "\r\n"<br>
<br>
expect: set expect_out(spawn_id) "exp4"<br>
<br>
expect: set expect_out(buffer) "-bash: root: command not found\r\n"<br>
<br>
expect: continuing expect<br>
<br>
<br>
<br>
expect: does "[root@test-f5-01:Active] config # " (spawn_id exp4) match
regular expression "[\r\n]+"? no<br>
<br>
"^(.+:)1 (#| \(enable\))"? no<br>
<br>
"^.+(#| \(enable\))"? yes<br>
<br>
expect: set expect_out(0,string) "[root@test-f5-01:Active] config #"<br>
<br>
expect: set expect_out(1,string) "#"<br>
<br>
expect: set expect_out(spawn_id) "exp4"<br>
<br>
expect: set expect_out(buffer) "[root@test-f5-01:Active] config #"<br>
<br>
tty_raw_noecho: was raw = 0&nbsp; echo = 1<br>
<br>
spawn id exp4 sent &lt;\r\n&gt;<br>
<br>
spawn id exp4 sent &lt;[root@test-f5-01:Active] config # &gt;<br>
[root@test-f5-01:Active] config # spawn id exp0 sent &lt;\r&gt;<br>
spawn id exp4 sent &lt;\r\n&gt;<br>
<br>
spawn id exp4 sent &lt;[root@test-f5-01:Active] config # &gt;<br>
[root@test-f5-01:Active] config # spawn id exp0 sent &lt;e&gt;<br>
spawn id exp4 sent &lt;e&gt;<br>
espawn id exp0 sent &lt;x&gt;<br>
spawn id exp4 sent &lt;x&gt;<br>
xspawn id exp0 sent &lt;i&gt;<br>
spawn id exp4 sent &lt;i&gt;<br>
ispawn id exp0 sent &lt;t&gt;<br>
spawn id exp4 sent &lt;t&gt;<br>
tspawn id exp0 sent &lt;\r&gt;<br>
spawn id exp4 sent &lt;\r\nlogout\r\n&gt;<br>
<br>
logout<br>
spawn id exp4 sent &lt;\u001b[H\u001b[J&gt;<br>
spawn id exp4 sent &lt;Connection to test-f5-01 closed.\r\r\n&gt;<br>
Connection to test-f5-01 closed.<br>
<br>
interact: received eof from spawn_id exp4<br>
tty_set: raw = 0, echo = 1<br>
<br>
tty_set: raw = 3, echo = 0<br>
<br>
<br>
$ <br>
$ <br>
<br>
<blockquote
 cite="mid:20070713132808.8e114e4890519e5179c192e02d6bca26.0a49157a0e.wbe@email.secureserver.net"
 type="cite">
  <pre wrap="">What error(s) do you get when you try to run your f5rancid?

Where does it fail if you debug your f5login?


-lance

  </pre>
  <blockquote type="cite">
    <pre wrap="">-------- Original Message --------
Subject: [rancid]  F5 load balancer support
From: Sam Munzani <a class="moz-txt-link-rfc2396E" href="mailto:smunzani@comcast.net">&lt;smunzani@comcast.net&gt;</a>
Date: Fri, July 13, 2007 12:45 pm
To: <a class="moz-txt-link-abbreviated" href="mailto:rancid-discuss@shrubbery.net">rancid-discuss@shrubbery.net</a>

Hi,

Did anybody happened to hack one of Cisco scripts to support BigIP F5
boxes? It should be pretty simple. All I want to do is login and type "b
list" which is equivalent of "show run" on cisco.

However for some reason things not working. All I did was copied clogin
to f5login, copied rancid to f5rancid and added following to rancid-fe.
elsif ($vendor =~ /^f5$/i)              { exec('f5rancid', $router); }

Then modified f5 rancid file and kept only one command in list of
commands "b list".

For some reason its not working. I can post my configs here if somebody
like to see them.

Thanks,
Sam
_______________________________________________
Rancid-discuss mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Rancid-discuss@shrubbery.net">Rancid-discuss@shrubbery.net</a>
<a class="moz-txt-link-freetext" href="http://www.shrubbery.net/mailman/listinfo.cgi/rancid-discuss">http://www.shrubbery.net/mailman/listinfo.cgi/rancid-discuss</a>
    </pre>
  </blockquote>
  <pre wrap=""><!---->

  </pre>
</blockquote>
<br>
</body>
</html>