--- /usr/lib/rancid/bin/srancid.orig 2015-05-07 00:00:19.000000000 +0200
+++ /usr/lib/rancid/bin/srancid 2015-09-24 16:02:23.379156524 +0200
@@ -49,6 +49,8 @@
#
# Code tested and working fine on these models:
#
+# DELL PowerConnect M8024 / M8024-k
+# DELL PowerConnect M6348
# DELL PowerConnect 62xx
# DELL 34xx (partially; configuration is incomplete)
#
@@ -174,6 +176,7 @@
sub Dir {
print STDERR " In Dir: $_" if ($debug);
+ ProcessHistory("COMMENTS","keysort","D1","!Directory contents:\n");
while () {
s/^\s+\015//g;
tr/\015//d;
@@ -184,6 +187,7 @@
ProcessHistory("COMMENTS","keysort","D1","! $_");
}
+ ProcessHistory("COMMENTS","keysort","D1","! \n");
return(0);
}
@@ -198,6 +202,9 @@
# pager remnants like: ^H^H^H ^H^H^H content
s/[\b]+\s*[\b]*//g;
+ # Remove Uptime
+ / up time/i && next;
+
ProcessHistory("COMMENTS","keysort","B1","! $_");
}
return(0);
@@ -218,9 +225,12 @@
/ up time/i && next;
# filter temperature sensor info for Dell 6428 stacks
- /Temperature Sensors:/ && next;
+ /Temperature Sensors:/ &&
+ ProcessHistory("COMMENTS","keysort","C1","\n! $_") &&
+ next;
if (/Temperature \(Celsius\)/ &&
- ProcessHistory("COMMENTS","keysort","C1","! Unit\tStatus\n")) {
+ ProcessHistory("COMMENTS","keysort","C1","! Unit\tStatus\n") &&
+ ProcessHistory("COMMENTS","keysort","C1","! ----\t------\n")) {
while () {
s/^\s+\015//g;
tr/\015//d;
@@ -228,6 +238,26 @@
ProcessHistory("COMMENTS","keysort","C1","! $1\t$2\n");
/^\s*$/ && last;
}
+ }
+ # Filter temperature sensor info for Dell M6348 and M8024 blade switches
+ #
+ # M6348 and M8024 sample lines:
+ # Unit Description Temperature Status
+ # (Celsius)
+ # ---- ----------- ----------- ------
+ # 1 System 39 Good
+ # 2 System 39 Good
+ elsif (/Temperature/ &&
+ ProcessHistory("COMMENTS","keysort","C1","! Unit\tDescription\tStatus\n") &&
+ ProcessHistory("COMMENTS","keysort","C1","! ----\t-----------\t------\n")) {
+ while () {
+ /\(celsius\)/i && next;
+ s/^\s+\015//g;
+ tr/\015//d;
+ /(\d+)\s+(\w+)\s+\d+\s+(.*)$/ &&
+ ProcessHistory("COMMENTS","keysort","C1","! $1\t$2\t\t$3\n");
+ /^\s*$/ && last;
+ }
}
/system description: (.*)/i &&
@@ -242,6 +272,7 @@
sub ShowVlan {
print STDERR " In ShowVlan: $_" if ($debug);
+ ProcessHistory("COMMENTS","keysort","D1","!VLAN definitions:\n");
while () {
s/^\s+\015//g;
tr/\015//d;
@@ -254,6 +285,7 @@
/ up time/i && next;
ProcessHistory("COMMENTS","keysort","D1","! $_");
}
+ ProcessHistory("COMMENTS","keysort","D1","! \n");
return(0);
}