[rancid] Re: Netscreen: nlogin file 'set console page 0'

john heasley heas at shrubbery.net
Fri Nov 14 00:32:13 UTC 2008


Wed, Nov 12, 2008 at 01:33:42PM -0500, Atif.SIDDIQUI at HydroOne.com:
> Mike,
> 
> Thanks for the help here. This is the exact solution I was looking for. 

Are you confirming that this works reliably?

> Atif 
> 
> -----Original Message-----
> From: Skinner, Michael [mailto:Michael.Skinner at virginmedia.co.uk] 
> Sent: Wednesday, November 12, 2008 5:37 AM
> To: rancid-discuss at shrubbery.net
> Cc: john heasley; SIDDIQUI Atif
> Subject: RE: [rancid] Re: Netscreen: nlogin file 'set console page 0'
> 
> It is possible for rancid to deal with the pager on netscreens.  In my
> infrastructure rancid has read only accounts on devices, so has no
> ability to edit the console page, it gets on fine... admittedly I had to
> hack the code a bit, as the build in read-only support was broken.
> 
> Problem and fix when originally discovered:
> http://www.shrubbery.net/pipermail/rancid-discuss/2007-May/002224.html
> 
> Paul Zimmerman took the trouble to tidy this up further, details at
> bottom of email
> 
> There is no reason this method couldn't be used for read/write accounts.
> 
> Mike
> 
> 
> [rancid at caillez ~/local/libexec/rancid]$ sccs diffs -C8 -r1.2 nrancid
> 
> ------- nrancid -------
> *** -   Mon Jul 23 09:20:57 2007
> --- nrancid     Mon Jul 23 09:17:18 2007
> ***************
> *** 141,160 ****
>    }
> 
>    # This routine parses "get system"
>    sub GetSystem {
>        print STDERR "    In GetSystem: $_" if ($debug);
> 
>        while (<INPUT>) {
>          tr/\015//d;
>          next if /^\s*$/;
>          last if(/$prompt/);
> -       # throw away the pager lines
> -       next if /^--- more ---/;
> 
>          /^Serial Number: (\d+), Control Number: \d+$/ &&
>                  ProcessHistory("SYSTEM","","", "!SN: $1\n") && next;
>          /^Product Name: (\S+)$/ &&
>                  ProcessHistory("SYSTEM","","", "!Product: $1\n") &&
> next;
>          /^Hardware Version: (\S+), / &&
>                  ProcessHistory("SYSTEM","","", "!HW: $1\n") && next;
>          /^Software Version: (\S+), Type: (\S+)$/ &&
> --- 141,160 ----
>    }
> 
>    # This routine parses "get system"
>    sub GetSystem {
>        print STDERR "    In GetSystem: $_" if ($debug);
> 
>        while (<INPUT>) {
>          tr/\015//d;
> +       # throw away the pager text
> +       s/^--- more ---( \x08|\x08)*//;
>          next if /^\s*$/;
>          last if(/$prompt/);
> 
>          /^Serial Number: (\d+), Control Number: \d+$/ &&
>                  ProcessHistory("SYSTEM","","", "!SN: $1\n") && next;
>          /^Product Name: (\S+)$/ &&
>                  ProcessHistory("SYSTEM","","", "!Product: $1\n") &&
> next;
>          /^Hardware Version: (\S+), / &&
>                  ProcessHistory("SYSTEM","","", "!HW: $1\n") && next;
>          /^Software Version: (\S+), Type: (\S+)$/ &&
> ***************
> *** 179,199 ****
>        ProcessHistory("FILE","","","!\n");
>        return(0);
>    }
> 
>    sub GetConf {
>        print STDERR "    In GetConf: $_" if ($debug);
>        while (<INPUT>) {
>          tr/\015//d;
>          next if /^\s*$/;
>          next if /^Total Config.+$/i;
>          last if(/$prompt/);
> -       # throw away the pager lines
> -       next if /^--- more ---/;
> 
>          if (/^set admin name "(\S+)"$/ && $filter_pwds >= 1) {
>              ProcessHistory("ADMIN","","","!set admin name <removed>
> \n");
>              next;
>          }
>          if (/^set admin password (\S+)$/ && $filter_pwds >= 1) {
>              ProcessHistory("ADMIN","","","!set admin password
> <removed>\n");
>              next;
> --- 179,199 ----
>        ProcessHistory("FILE","","","!\n");
>        return(0);
>    }
> 
>    sub GetConf {
>        print STDERR "    In GetConf: $_" if ($debug);
>        while (<INPUT>) {
>          tr/\015//d;
> +       # throw away the pager text
> +       s/^--- more ---( \x08|\x08)*//;
>          next if /^\s*$/;
>          next if /^Total Config.+$/i;
>          last if(/$prompt/);
> 
>          if (/^set admin name "(\S+)"$/ && $filter_pwds >= 1) {
>              ProcessHistory("ADMIN","","","!set admin name <removed>
> \n");
>              next;
>          }
>          if (/^set admin password (\S+)$/ && $filter_pwds >= 1) {
>              ProcessHistory("ADMIN","","","!set admin password
> <removed>\n");
>              next;
> 
> 
> 
> -----Original Message-----
> From: rancid-discuss-bounces at shrubbery.net
> [mailto:rancid-discuss-bounces at shrubbery.net] On Behalf Of john heasley
> Sent: 12 November 2008 02:01
> To: Atif.SIDDIQUI at HydroOne.com
> Cc: rancid-discuss at shrubbery.net
> Subject: [rancid] Re: Netscreen: nlogin file 'set console page 0'
> 
> Tue, Nov 11, 2008 at 05:57:41PM -0500, Atif.SIDDIQUI at HydroOne.com:
> > I found this patch: config change;
> > 
> >  
> > 
> >  but we should be able to put in the page only for that vty sessionnot
> 
> > affecting all the users and config;
> > 
> > As RANCID does not save the config after doing the following steps; 
> > other users always get a message to save the config or not; even 
> > though they have not change anything; it was because RANCID added "set
> 
> > console 0" then unset it cause the config changes. Can we have a
> workaround.
> 
> That does not seem to be a very good fix.  If another user happens to be
> logged-in when rancid runs, the pager will be disabled AND if another
> user re-enables the pager it will confuse nlogin, possibly causing it to
> hang (thus more emails about problems collecting...).
> 
> A better fix, assuming this is still a global knob, is to deal with the
> pager, if possible.
> _______________________________________________
> Rancid-discuss mailing list
> Rancid-discuss at shrubbery.net
> http://www.shrubbery.net/mailman/listinfo.cgi/rancid-discuss
> 
> ------------------------------------------------------------------------
> ------
> Save Paper - Do you really need to print this e-mail?
> 
> Visit www.virginmedia.com for more information, and more fun.
> 
> This email and any attachments are or may be confidential and legally
> privileged
> and are sent solely for the attention of the addressee(s). If you have
> received this
> email in error, please delete it from your system: its use, disclosure
> or copying is
> unauthorised. Statements and opinions expressed in this email may not
> represent
> those of Virgin Media. Any representations or commitments in this email
> are
> subject to contract. Please note that we are migrating our email
> addresses to a
> company wide address of "@virginmedia.co.uk". If you are sending to a
> Telewest or
> ntl email address your email will be re-directed. 
> 
> Registered office: 160 Great Portland Street, London W1W 5QA.
> Registered in England and Wales with number 2591237
> ========================================================================
> ======


More information about the Rancid-discuss mailing list