[rancid] Re: CVS changes with ASA

Jethro R Binks jethro.binks at strath.ac.uk
Mon Feb 2 20:48:18 UTC 2009


On Mon, 2 Feb 2009, Jethro R Binks wrote:

> I'm investigating several PIX/ASA related difficulties with rancid at the 
> moment ...

Since we're looking at these in detail at the moment, here's two more 
things:

As another note, it would be useful to send "term pager 0" as well, to
prevent output paging:

--- clogin.1.118        Fri Jan 30 19:40:20 2009
+++ clogin.1.118.mod    Fri Jan 30 21:01:26 2009
@@ -603,6 +603,8 @@
            set command "set logging session disable;$command"
        } else {
            send "term length 0\r"
+            # ASA 7.x takes this instead:
+           send "term pager 0\r"
        }
        # escape any parens in the prompt, such as "(enable)"
        regsub -all {[)(]} $prompt {\\&} reprompt



The other thing is that parsing of the serial numbers/hardware revisions 
isn't correct.  I haven't looked at this in detail yet, but what you get 
is garbled, for example:

!Slot 0/: type ASA 5550 Adaptive
!Slot 0/: part Security, serial Appliance
!Slot 0/: hvers ASA5550
!Slot 0: hvers 2.0, firmware 1.0(11)2, sw 7.2(4)
!
!Slot 1: hvers 1.0, firmware 1.0(0)8, sw 1.0(0)10
!
!Slot 1/0: type SSM-4GE Included with ASA
!Slot 1/0: part 5550, serial System
!Slot 1/0: hvers SSM-4GE-INC


I suppose the output generated by PIX/ASA doesn't match the usual IOS 
output.  If no-one else gets to it, I will take a closer look in a few 
days hopefully.

One other things I would note: I find getting configs out of my PIX/ASAs 
is much more reliable (but not perfect) if I only let rancid run one of 
"more system:running-config", "write terminal", or "show running-config".  
If two or three run, the output gets a bit garbled, and rancid fails to 
find the end.  I speculate this is something to do with the box producing 
the output, but asynchronously returning the prompt, or some such.

At this point, can I also suggest this small patch, which helped me to 
narrow down the cause of failure in a couple of cases (sorry no line 
numbers for this one, but it is right at the end of 'rancid'):

-       print STDERR "$host: End of run not found\n" if ($debug);
+        print STDERR "$host: End of run not found ",
+              "(clean_run=$clean_run, found_end=$found_end)\n" if ($debug);

Jethro.

-- 
.  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
Jethro R Binks
Computing Officer, IT Services, University Of Strathclyde, Glasgow, UK


More information about the Rancid-discuss mailing list