Dear all,
Please see the patch for sysutils/rancid update to the latest version.
The version we have in ports tree is quite outdated (2 years), I'd
appreciate if anybody can help keeping it up-to-date.
I tried to contact maintainer several times, but didn't get response.
I tested it on amd64 with a wide range of Cisco platforms (IOS, IOS XR, NX-OS,
WLC), Palo Alto, Citrix NetScaler.
--
With best regards,
Pavel Korovin
Index: Makefile
===================================================================
RCS file: /cvs/ports/sysutils/rancid/Makefile,v
retrieving revision 1.17
diff -u -p -r1.17 Makefile
--- Makefile 15 May 2013 09:49:40 -0000 1.17
+++ Makefile 7 Sep 2015 17:45:31 -0000
@@ -2,8 +2,7 @@
COMMENT = Really Awesome New Cisco confIg Differ
-DISTNAME = rancid-2.3.8
-REVISION = 0
+DISTNAME = rancid-3.2
EPOCH = 0
CATEGORIES = sysutils
@@ -24,15 +23,16 @@ BUILD_DEPENDS = ${RUN_DEPENDS}
LOCALSTATEDIR = ${BASELOCALSTATEDIR}/rancid
-AUTOMAKE_VERSION = 1.8
-CONFIGURE_STYLE = automake
+CONFIGURE_STYLE = gnu
CONFIGURE_ARGS = --prefix=${PREFIX} \
--disable-mk-localstatedir
+MAKE_FLAGS = sysconfdir=${BASESYSCONFDIR}/rancid
+FAKE_FLAGS = sysconfdir=${PREFIX}/share/examples/rancid
USE_GMAKE = yes
-USE_GROFF = Yes
-pre-configure:
- @cp ${FILESDIR}/fnlogin.in ${WRKSRC}/bin/fnlogin.in
+
+post-patch:
+ find ${WRKSRC} -type f -exec perl -pi -e s,3des,3des-cbc, {} \;
.include <bsd.port.mk>
Index: distinfo
===================================================================
RCS file: /cvs/ports/sysutils/rancid/distinfo,v
retrieving revision 1.6
diff -u -p -r1.6 distinfo
--- distinfo 18 Jan 2015 03:15:14 -0000 1.6
+++ distinfo 7 Sep 2015 17:45:31 -0000
@@ -1,2 +1,2 @@
-SHA256 (rancid-2.3.8.tar.gz) = RORMh6IpaNUinAHWCqRpYNoCOiSEbu9D+ePI1w/Vs/s=
-SIZE (rancid-2.3.8.tar.gz) = 379908
+SHA256 (rancid-3.2.tar.gz) = 59pyQsHwcnALjWB3MUvpHB+r5iUo3ivfkTSbcJRynnU=
+SIZE (rancid-3.2.tar.gz) = 470336
Index: files/fnlogin.in
===================================================================
RCS file: files/fnlogin.in
diff -N files/fnlogin.in
--- files/fnlogin.in 16 Dec 2008 21:07:55 -0000 1.1.1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,544 +0,0 @@
-#! @EXPECT_PATH@ --
-##
-## $Id: fnlogin.in,v 1.1.1.1 2008/12/16 21:07:55 pea Exp $
-##
-## rancid 2.3.2a7
-## Copyright (C) 1997-2006 by Terrapin Communications, Inc.
-## All rights reserved.
-##
-## This software may be freely copied, modified and redistributed
-## without fee for non-commerical purposes provided that this license
-## remains intact and unmodified with any RANCID distribution.
-##
-## There is no warranty or other guarantee of fitness of this software.
-## It is provided solely "as is". The author(s) disclaim(s) all
-## responsibility and liability with respect to this software's usage
-## or its effect upon hardware, computer systems, other software, or
-## anything else.
-##
-## Except where noted otherwise, rancid was written by and is maintained by
-## Henry Kilmer, John Heasley, Andrew Partan, Pete Whiting, and Austin Schutz.
-##
-#
-# The login expect scripts were based on Erik Sherk's gwtn, by permission.
-# Netscreen hacks implemented by Stephen Gill <[email protected]>.
-#
-# nlogin - netscreen login
-#
-# Most options are intuitive for logging into a netscreen firewall.
-#
-# Misc notes
-# netscreen does not have the concept of "enable", once logged in, a
-# users permissions can not change.
-
-# Usage line
-set usage "Usage: $argv0 \[-c command\] \[-Evar=x\] \[-f cloginrc-file\] \
-\[-p user-password\] \
-\[-s script-file\] \[-t timeout\] \[-u username\] \
-\[-v vty-password\] \[-x command-file\] \
-\[-y ssh_cypher_type\] router \[router...\]\n"
-
-# env(CLOGIN) may contain:
-# x == do not set xterm banner or name
-
-# Password file
-set password_file $env(HOME)/.cloginrc
-# Default is to login to the firewall
-set do_command 0
-set do_script 0
-# The default is to look in the password file to find the passwords. This
-# tracks if we receive them on the command line.
-set do_passwd 1
-set do_enapasswd 1
-
-# Find the user in the ENV, or use the unix userid.
-if {[ info exists env(CISCO_USER) ]} {
- set default_user $env(CISCO_USER)
-} elseif {[ info exists env(USER) ]} {
- set default_user $env(USER)
-} elseif {[ info exists env(LOGNAME) ]} {
- set default_user $env(LOGNAME)
-} else {
- # This uses "id" which I think is portable. At least it has existed
- # (without options) on all machines/OSes I've been on recently -
- # unlike whoami or id -nu.
- if [ catch {exec id} reason ] {
- send_error "\nError: could not exec id: $reason\n"
- exit 1
- }
- regexp {\(([^)]*)} "$reason" junk default_user
-}
-if {[ info exists env(CLOGINRC) ]} {
- set password_file $env(CLOGINRC)
-}
-
-# Sometimes firewall take awhile to answer (the default is 10 sec)
-set timeout 45
-
-# Process the command line
-for {set i 0} {$i < $argc} {incr i} {
- set arg [lindex $argv $i]
-
- switch -glob -- $arg {
- # Username
- -u* -
- -U* {
- if {! [ regexp .\[uU\](.+) $arg ignore user]} {
- incr i
- set username [ lindex $argv $i ]
- }
- # VTY Password
- } -p* -
- -P* {
- if {! [ regexp .\[pP\](.+) $arg ignore userpasswd]} {
- incr i
- set userpasswd [ lindex $argv $i ]
- }
- set do_passwd 0
- # Environment variable to pass to -s scripts
- } -E*
- {
- if {[ regexp .\[E\](.+)=(.+) $arg ignore varname varvalue]} {
- set E$varname $varvalue
- } else {
- send_user "\nError: invalid format for -E in $arg\n"
- exit 1
- }
- # Command to run.
- } -c* -
- -C* {
- if {! [ regexp .\[cC\](.+) $arg ignore command]} {
- incr i
- set command [ lindex $argv $i ]
- }
- set do_command 1
- # Expect script to run.
- } -s* -
- -S* {
- if {! [ regexp .\[sS\](.+) $arg ignore sfile]} {
- incr i
- set sfile [ lindex $argv $i ]
- }
- if { ! [ file readable $sfile ] } {
- send_user "\nError: Can't read $sfile\n"
- exit 1
- }
- set do_script 1
- # cypher type
- } -y* -
- -Y* {
- if {! [ regexp .\[eE\](.+) $arg ignore cypher]} {
- incr i
- set cypher [ lindex $argv $i ]
- }
- # alternate cloginrc file
- } -f* -
- -F* {
- if {! [ regexp .\[fF\](.+) $arg ignore password_file]} {
- incr i
- set password_file [ lindex $argv $i ]
- }
- } -t* -
- -T* {
- incr i
- set timeout [ lindex $argv $i ]
- } -x* -
- -X {
- if {! [ regexp .\[xX\](.+) $arg ignore cmd_file]} {
- incr i
- set cmd_file [ lindex $argv $i ]
- }
- if [ catch {set cmd_fd [open $cmd_file r]} reason ] {
- send_user "\nError: $reason\n"
- exit 1
- }
- set cmd_text [read $cmd_fd]
- close $cmd_fd
- set command [join [split $cmd_text \n] \;]
- set do_command 1
- # Does tacacs automatically enable us?
- } -autoenable {
- # ignore autoenable
- } -* {
- send_user "\nError: Unknown argument! $arg\n"
- send_user $usage
- exit 1
- } default {
- break
- }
- }
-}
-# Process firewalls...no firewalls listed is an error.
-if { $i == $argc } {
- send_user "\nError: $usage"
-}
-
-# Only be quiet if we are running a script (it can log its output
-# on its own)
-if { $do_script } {
- log_user 0
-} else {
- log_user 1
-}
-
-#
-# Done configuration/variable setting. Now run with it...
-#
-
-# Sets Xterm title if interactive...if its an xterm and the user cares
-proc label { host } {
- global env
- # if CLOGIN has an 'x' in it, don't set the xterm name/banner
- if [info exists env(CLOGIN)] {
- if {[string first "x" $env(CLOGIN)] != -1} { return }
- }
- # take host from ENV(TERM)
- if [info exists env(TERM)] {
- if [regexp \^(xterm|vs) $env(TERM) ignore ] {
- send_user "\033]1;[lindex [split $host "."] 0]\a"
- send_user "\033]2;$host\a"
- }
- }
-}
-
-# This is a helper function to make the password file easier to
-# maintain. Using this the password file has the form:
-# add password sl* pete cow
-# add password at* steve
-# add password * hanky-pie
-proc add {var args} { global int_$var ; lappend int_$var $args}
-proc include {args} {
- global env
- regsub -all "(^{|}$)" $args {} args
- if { [ regexp "^/" $args ignore ] == 0 } {
- set args $env(HOME)/$args
- }
- source_password_file $args
-}
-
-proc find {var firewall} {
- upvar int_$var list
- if { [info exists list] } {
- foreach line $list {
- if { [string match [lindex $line 0] $firewall ] } {
- return [lrange $line 1 end]
- }
- }
- }
- return {}
-}
-
-# Loads the password file. Note that as this file is tcl, and that
-# it is sourced, the user better know what to put in there, as it
-# could install more than just password info... I will assume however,
-# that a "bad guy" could just as easy put such code in the clogin
-# script, so I will leave .cloginrc as just an extention of that script
-proc source_password_file { password_file } {
- global env
- if { ! [file exists $password_file] } {
- send_user "\nError: password file ($password_file) does not exist\n"
- exit 1
- }
- file stat $password_file fileinfo
- if { [expr ($fileinfo(mode) & 007)] != 0000 } {
- send_user "\nError: $password_file must not be world
readable/writable\n"
- exit 1
- }
- if [ catch {source $password_file} reason ] {
- send_user "\nError: $reason\n"
- exit 1
- }
-}
-
-# Log into the firewall.
-# returns: 0 on success, 1 on failure
-proc login { firewall user userpswd passwd enapasswd prompt cmethod
-cyphertype } {
- global spawn_id in_proc do_command do_script sshcmd
- set in_proc 1
- set uprompt_seen 0
-
- # Telnet to the firewall & try to login.
- set progs [llength $cmethod]
- foreach prog [lrange $cmethod 0 end] {
- incr progs -1
- if [string match "telnet*" $prog] {
- regexp {telnet(:([^[:space:]]+))*} $prog command suffix port
- if {"$port" == ""} {
- set retval [ catch {spawn telnet $firewall} reason ]
- } else {
- set retval [ catch {spawn telnet $firewall $port} reason ]
- }
- if { $retval } {
- send_user "\nError: telnet failed: $reason\n"
- return 1
- }
- } elseif ![string compare $prog "ssh"] {
- if [ catch {spawn $sshcmd -c $cyphertype -x -l $user $firewall}
reason ] {
- send_user "\nError: $sshcmd failed: $reason\n"
- return 1
- }
- } elseif ![string compare $prog "rsh"] {
- send_error "\nError: unsupported method: rsh\n"
- if { $progs == 0 } {
- return 1
- }
- continue;
- } else {
- send_user "\nError: unknown connection method: $prog\n"
- return 1
- }
-
- sleep 0.3
-
- # This helps cleanup each expect clause.
- expect_after {
- timeout {
- send_user "\nError: TIMEOUT reached\n"
- catch {close}; wait
- if { $in_proc} {
- return 1
- } else {
- continue
- }
- } eof {
- send_user "\nError: EOF received\n"
- catch {close}; wait
- if { $in_proc} {
- return 1
- } else {
- continue
- }
- }
- }
-
- # Here we get a little tricky. There are several possibilities:
- # the firewall can ask for a username and passwd and then
- # talk to the TACACS server to authenticate you, or if the
- # TACACS server is not working, then it will use the enable
- # passwd. Or, the firewall might not have TACACS turned on,
- # then it will just send the passwd.
- # if telnet fails with connection refused, try ssh
- expect {
- "Connection refused" {
- send_user "\nError: Connection Refused\n"; wait; return 1
- } eof { send_user "\nError: Couldn't login\n"; wait; return 1
- } "Unknown host\r\n" {
- expect eof
- send_user "\nError: Unknown host\n"; wait; return 1
- } "Host is unreachable" {
- expect eof
- send_user "\nError: Host Unreachable!\n"; wait; return 1
- } "No address associated with name" {
- expect eof
- send_user "\nError: Unknown host\n"; wait; return 1
- }
- -re "Are you sure you want to continue connecting .*" {
- send "yes\r"
- send_user "Host $firewall added to the list of known hosts.\n"
- exp_continue }
- -re "Host key not found .* \(yes\/no\)\?" {
- send "yes\r"
- send_user "Host $firewall added to the list of known hosts.\n"
- exp_continue }
- -re "HOST IDENTIFICATION HAS CHANGED.* \(yes\/no\)\?" {
- send "no\r"
- send_user "\nError: The host key for $firewall has changed.
Update the SSH known_hosts file accordingly.\n"
- return 1 }
- -re "Offending key for .* \(yes\/no\)\?" {
- send "no\r"
- send_user "\nError: host key mismatch for $firewall. Update the
SSH known_hosts file accordingly.\n"
- return 1 }
- denied { send_user "\nError: Check your passwd for $firewall\n"
- catch {close}; wait; return 1
- }
- " ### Login failed" {send_user "\nError: Check your passwd for
$firewall\n"; return 1 }
- -re "(login:)" {
- sleep 1;
- send "$user\r"
- set uprompt_seen 1
- exp_continue
- }
- -re "@\[^\r\n]+\[Pp]assword:" {
- # ssh pwd prompt
- sleep 1
- send "$userpswd\r"
- exp_continue
- }
- "\[Pp]assword:" {
- sleep 1;
- if {$uprompt_seen == 1} {
- send "$userpswd\r"
- } else {
- send "$passwd\r"
- }
- exp_continue
- }
- -- "$prompt" { break; }
- }
- }
- set in_proc 0
- return 0
-}
-
-# Run commands given on the command line.
-proc run_commands { prompt command } {
- global in_proc
- set in_proc 1
-
- # Disable output paging.
-# send "config system console\r"
-# send "set output standard\r"
-# send "end\r"
-# expect -re $prompt {}
-
- # Is this a multi-command?
- if [ string match "*\;*" "$command" ] {
- set commands [split $command \;]
- set num_commands [llength $commands]
-
- for {set i 0} {$i < $num_commands} { incr i} {
- send "[subst [lindex $commands $i]]\r"
- expect {
- -re "\[\n\r]+" { exp_continue }
- -re "$prompt" {}
- -gl "--More-- " { send " "
- exp_continue
- }
- }
- }
- } else {
- send "[subst $command]\r"
- expect {
- -re "\[\n\r]+" { exp_continue }
- -re "$prompt" {}
- -gl "--More-- " { send " "
- exp_continue
- }
- }
- }
-# send "config system console\r"
-# send "set output more\r"
-# send "end\r"
-# expect -re $prompt {}
- send "exit\r"
- expect {
- -re "$prompt" {
- #send "exit\r"
- exp_continue
- }
- -re "\[\n\r]+" { exp_continue }
- -gl "Configuration modified, save?" {
- send "n\r"
- exp_continue
- }
- timeout { catch {close}; wait
- return 0
- }
- eof { return 0 }
- }
- set in_proc 0d
-}
-
-#
-# For each firewall... (this is main loop)
-#
-source_password_file $password_file
-set in_proc 0
-foreach firewall [lrange $argv $i end] {
- set firewall [string tolower $firewall]
- send_user "$firewall\n"
-
- # FortiOS 2.x prompts can end in either '#' or '$'
- set prompt "\[#\\$] $"
-
- # Figure out passwords
- if { $do_passwd || $do_enapasswd } {
- set pswd [find password $firewall]
- if { [llength $pswd] == 0 } {
- send_user "\nError: no password for $firewall in $password_file.\n"
- continue
- }
- set passwd [join [lindex $pswd 0] ""]
- set enapasswd [join [lindex $pswd 1] ""]
- } else {
- set passwd $userpasswd
- set enapasswd $enapasswd
- }
-
- # Figure out username
- if {[info exists username]} {
- # command line username
- set ruser $username
- } else {
- set ruser [join [find user $firewall] ""]
- if { "$ruser" == "" } { set ruser $default_user }
- }
-
- # Figure out username's password (if different from the vty password)
- if {[info exists userpasswd]} {
- # command line username
- set userpswd $userpasswd
- } else {
- set userpswd [join [find userpassword $firewall] ""]
- if { "$userpswd" == "" } { set userpswd $passwd }
- }
-
-
- # Figure out cypher type
- if {[info exists cypher]} {
- # command line cypher type
- set cyphertype $cypher
- } else {
- set cyphertype [find cyphertype $firewall]
- if { "$cyphertype" == "" } { set cyphertype "3des" }
- }
-
- # Figure out connection method
- set cmethod [find method $firewall]
- if { "$cmethod" == "" } { set cmethod {{telnet} {ssh}} }
-
- # Figure out the SSH executable name
- set sshcmd [find sshcmd $firewall]
- if { "$sshcmd" == "" } { set sshcmd {ssh} }
-
- # Login to the firewall
- if {[login $firewall $ruser $userpswd $passwd $enapasswd $prompt $cmethod
$cyphertype]} {
- continue
- }
-
- # we are logged in, now figure out the full prompt
- send "\r"
- expect {
- -re "\[\r\n]+" { exp_continue; }
- -re "^(.+$prompt)" { set junk $expect_out(0,string); }
- if {[$junk = "(^\\$ $)"]} {
- set prompt $junk;
- } else {
- if {[$junk = "(^# $)"]} { set prompt $junk ; }
- }
- }
-
- if { $do_command } {
- if {[run_commands $prompt $command]} {
- continue
- }
- } elseif { $do_script } {
- # Disable output paging.
-# send "config system console\r"
-# send "set output standard\r"
-# send "end\r"
-# expect -re $prompt {}
- source $sfile
- close
- } else {
- label $firewall
- log_user 1
- interact
- }
-
- # End of for each firewall
- wait
- sleep 0.3
-}
-exit 0
Index: patches/patch-CHANGES
===================================================================
RCS file: patches/patch-CHANGES
diff -N patches/patch-CHANGES
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-CHANGES 7 Sep 2015 17:45:31 -0000
@@ -0,0 +1,21 @@
+--- CHANGES.orig Mon Jun 1 14:49:37 2015
++++ CHANGES Mon Jun 1 14:54:35 2015
+@@ -1,4 +1,18 @@
+ 3.2
++ control_rancid: fix handling of <group>/rancid.conf in git - Mike Eklund
++
++ control_rancid: fix handling of configs/.cvsignore
++
++ panos.pm: fix package definition
++
++ rancid.type.base: comment adtran definition to avoid confusion
++
++ configure, rancid.pm: check minimum revision of Socket.pm
++
++ junos.pm: fix showsystemlicense for errant licenses w/ 0 available
++
++ rancid.pm: check result from inet_pton()
++
+ mtlogin: support cloginrc passphrase and identity
+
+ ios.pm: add ios::ShowCellular() and cmd show cellular 0 profile
Index: patches/patch-Makefile_in
===================================================================
RCS file: /cvs/ports/sysutils/rancid/patches/patch-Makefile_in,v
retrieving revision 1.4
diff -u -p -r1.4 patch-Makefile_in
--- patches/patch-Makefile_in 8 Jun 2012 13:59:08 -0000 1.4
+++ patches/patch-Makefile_in 7 Sep 2015 17:45:31 -0000
@@ -1,21 +1,21 @@
-$OpenBSD: patch-Makefile_in,v 1.4 2012/06/08 13:59:08 pea Exp $
---- Makefile.in.orig Thu Nov 17 22:10:12 2011
-+++ Makefile.in Tue May 29 13:19:25 2012
-@@ -16,7 +16,7 @@
- @SET_MAKE@
-
- VPATH = @srcdir@
+$OpenBSD: patch-etc_Makefile_in,v 1.4 2012/06/08 13:59:08 pea Exp $
+--- Makefile.in.orig Mon Mar 30 10:51:15 2015
++++ Makefile.in Mon Mar 30 10:52:28 2015
+@@ -70,7 +70,7 @@ am__make_running_with_option = \
+ test $$has_opt = yes
+ am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+ am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
-pkgdatadir = $(datadir)/@PACKAGE@
+pkgdatadir = $(datadir)/doc/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
-@@ -242,7 +242,7 @@ top_build_prefix = @top_build_prefix@
+@@ -349,7 +349,7 @@ top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = foreign no-dependencies
-pkgdata_DATA = COPYING CHANGES FAQ README README.lg UPGRADING cloginrc.sample
+pkgdata_DATA = COPYING CHANGES FAQ README README.lg UPGRADING
- EXTRA_DIST = BUGS Todo configure install-sh \
+ EXTRA_DIST = BUGS Todo configure configure.vers install-sh \
mkinstalldirs Makefile.in Todo $(pkgdata_DATA)
Index: patches/patch-bin_Makefile_in
===================================================================
RCS file: patches/patch-bin_Makefile_in
diff -N patches/patch-bin_Makefile_in
--- patches/patch-bin_Makefile_in 8 Jun 2012 13:59:08 -0000 1.5
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,12 +0,0 @@
-$OpenBSD: patch-bin_Makefile_in,v 1.5 2012/06/08 13:59:08 pea Exp $
---- bin/Makefile.in.orig Thu Nov 17 22:10:11 2011
-+++ bin/Makefile.in Tue May 29 13:19:25 2012
-@@ -363,6 +363,8 @@ f10rancid: $(top_builddir)/config.status $(srcdir)/f10
- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
- flogin: $(top_builddir)/config.status $(srcdir)/flogin.in
- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
-+fnlogin: $(top_builddir)/config.status $(srcdir)/fnlogin.in
-+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
- francid: $(top_builddir)/config.status $(srcdir)/francid.in
- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
- fnlogin: $(top_builddir)/config.status $(srcdir)/fnlogin.in
Index: patches/patch-bin_control_rancid_in
===================================================================
RCS file: patches/patch-bin_control_rancid_in
diff -N patches/patch-bin_control_rancid_in
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-bin_control_rancid_in 7 Sep 2015 17:45:31 -0000
@@ -0,0 +1,43 @@
+--- bin/control_rancid.in.orig Mon Jun 1 14:51:40 2015
++++ bin/control_rancid.in Mon Jun 1 14:56:39 2015
+@@ -206,20 +206,20 @@ routers.all
+ routers.down
+ routers.up
+ EOF
++ fi
+ if [ ! -f configs/.cvsignore ] ; then
+ rm -rf configs/.cvsignore
+- cat > configs/.cvsignore <<EOF
++ cat > configs/.cvsignore <<EOF2
+ .old
+ *.new
+ *.raw
+-EOF
++EOF2
+ fi
+ if [ $RCSSYS = svn ] ; then
+ svn propset svn:ignore -F .cvsignore .
+ svn propset svn:ignore -F configs/.cvsignore configs
+ svn update .
+ svn commit -m 'set svn:ignores' .
+- fi
+ fi
+ ;;
+ esac
+@@ -236,6 +236,7 @@ if [ -f rancid.conf ] ; then
+ ;;
+ git )
+ git status -s rancid.conf | grep '^?'
++ if [ $? -eq 0 ] ; then LN=1; else LN=0; fi
+ ;;
+ esac
+ if [ $LN -eq 0 ] ; then
+@@ -445,7 +446,7 @@ for router in `cut -d\; -f1 ../routers.up` ; do
+ done
+ echo
+ # delete configs from RCS for routers not listed in routers.up.
+-for router in `find . \( -name \*.new -prune -o -name CVS -prune -o -name
.svn -prune -o -name .gitignore -prune \) -o -type f -print | sed -e
's/^.\///'` ; do
++for router in `find . \( -name \*.new -prune -o -name CVS -prune -o -name
.svn -prune -o -name .cvsignore -prune -o -name .gitignore -prune \) -o -type f
-print | sed -e 's/^.\///'` ; do
+ grep -i "^$router\;" ../router.db > /dev/null 2>&1
+ if [ $? -eq 1 ] ; then
+ rm -f $router
Index: patches/patch-bin_fnrancid_in
===================================================================
RCS file: patches/patch-bin_fnrancid_in
diff -N patches/patch-bin_fnrancid_in
--- patches/patch-bin_fnrancid_in 8 Jun 2012 13:59:08 -0000 1.5
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,27 +0,0 @@
-$OpenBSD: patch-bin_fnrancid_in,v 1.5 2012/06/08 13:59:08 pea Exp $
---- bin/fnrancid.in.orig Wed Mar 9 18:19:15 2011
-+++ bin/fnrancid.in Tue May 29 13:19:25 2012
-@@ -172,6 +172,7 @@ sub GetSystem {
-
- while (<INPUT>) {
- tr/\015//d;
-+ s/exit//gi ;
- next if /^\s*$/;
- last if (/$prompt/);
-
-@@ -215,6 +216,15 @@ sub GetConf {
- next;
- }
- ProcessHistory("","","","$_");
-+ if (length($host) == 0) {
-+ if ( $file) {
-+ print(STDERR "Too few arguments: file name required\n");
-+ exit(1);
-+ } else {
-+ print(STDERR "Too few arguments: host name required\n");
-+ exit(1);
-+ }
-+ }
- }
- $found_end = 1;
- return(1);
Index: patches/patch-configure
===================================================================
RCS file: /cvs/ports/sysutils/rancid/patches/patch-configure,v
retrieving revision 1.6
diff -u -p -r1.6 patch-configure
--- patches/patch-configure 18 May 2015 10:12:33 -0000 1.6
+++ patches/patch-configure 7 Sep 2015 17:45:31 -0000
@@ -1,7 +1,32 @@
$OpenBSD: patch-configure,v 1.6 2015/05/18 10:12:33 espie Exp $
---- configure.orig Thu Nov 17 22:10:12 2011
-+++ configure Mon May 18 12:09:18 2015
-@@ -5461,7 +5461,7 @@ fi
+--- configure.orig Sun May 24 17:11:59 2015
++++ configure Sun May 24 17:14:02 2015
+@@ -5307,7 +5307,7 @@ fi
+ else
+ $PERLV_PATH -e 'require 5;'
+ if test $? -ne 0 ; then
+- as_fn_error $? "can't locate a suitable perl5." "$LINENO" 5
++ as_fn_error $? "can't locate a suitable perl5." "$LINENO" 5
+ exit 1
+ fi
+ fi
+@@ -5316,6 +5316,15 @@ fi
+ PERLV=`basename $PERLV_PATH`
+
+
++# check Socket.pm version
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking Socket.pm version" >&5
++$as_echo_n "checking Socket.pm version... " >&6; }
++$PERLV_PATH -e 'use 2.006 Socket qw(inet_pton);' 2>&1 >/dev/null
++if test $? -ne 0 ; then
++ as_fn_error $? "Socket.pm is older than 2.006; upgrade from
http://metacpan.org/pod/Socket" "$LINENO" 5
++ exit 1
++fi
++
+ # Extract the first word of "expect", so it can be a program name with args.
+ set dummy expect; ac_word=$2
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+@@ -5411,7 +5420,7 @@ fi
# ping seems to take one of two formats for count (N)
# BSD: ping -c N host
# SVR: ping host N
@@ -10,28 +35,3 @@ $OpenBSD: patch-configure,v 1.6 2015/05/
if test $? -eq 0 ; then
LG_PING_CMD="$PING_PATH -c 1"
else
-@@ -6068,7 +6068,7 @@ ac_config_files="$ac_config_files bin/nslogin bin/nsra
-
- ac_config_files="$ac_config_files bin/nxrancid"
-
--ac_config_files="$ac_config_files bin/prancid"
-+ac_config_files="$ac_config_files bin/prancid bin/fnlogin"
-
- ac_config_files="$ac_config_files bin/rivlogin bin/rivrancid"
-
-@@ -6854,6 +6854,7 @@ do
- "bin/mtrancid") CONFIG_FILES="$CONFIG_FILES bin/mtrancid" ;;
- "bin/mtlogin") CONFIG_FILES="$CONFIG_FILES bin/mtlogin" ;;
- "bin/nlogin") CONFIG_FILES="$CONFIG_FILES bin/nlogin" ;;
-+ "bin/fnlogin") CONFIG_FILES="$CONFIG_FILES bin/fnlogin" ;;
- "bin/nrancid") CONFIG_FILES="$CONFIG_FILES bin/nrancid" ;;
- "bin/nslogin") CONFIG_FILES="$CONFIG_FILES bin/nslogin" ;;
- "bin/nsrancid") CONFIG_FILES="$CONFIG_FILES bin/nsrancid" ;;
-@@ -7586,6 +7587,7 @@ $as_echo X"$file" |
- "bin/mtrancid":F) chmod a+x $ac_file ;;
- "bin/mtlogin":F) chmod a+x $ac_file ;;
- "bin/nlogin":F) chmod a+x $ac_file ;;
-+ "bin/fnlogin":F) chmod a+x $ac_file ;;
- "bin/nrancid":F) chmod a+x $ac_file ;;
- "bin/nslogin":F) chmod a+x $ac_file ;;
- "bin/nsrancid":F) chmod a+x $ac_file ;;
Index: patches/patch-configure_ac
===================================================================
RCS file: patches/patch-configure_ac
diff -N patches/patch-configure_ac
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-configure_ac 7 Sep 2015 17:45:31 -0000
@@ -0,0 +1,35 @@
+--- configure.ac.orig Sun May 24 17:16:34 2015
++++ configure.ac Sun May 24 17:16:58 2015
+@@ -275,7 +275,7 @@ if test $PERLV_PATH = no; then
+ else
+ $PERLV_PATH -e 'require 5;'
+ if test $? -ne 0 ; then
+- AC_MSG_ERROR([can't locate a suitable perl5.])
++ AC_MSG_ERROR([can't locate a suitable perl5.])
+ exit 1
+ fi
+ fi
+@@ -284,6 +284,14 @@ AC_SUBST(PERLV_PATH)
+ PERLV=`basename $PERLV_PATH`
+ AC_SUBST(PERLV)
+
++# check Socket.pm version
++AC_MSG_CHECKING([Socket.pm version])
++$PERLV_PATH -e 'use 2.006 Socket qw(inet_pton);' 2>&1 >/dev/null
++if test $? -ne 0 ; then
++ AC_MSG_ERROR([Socket.pm is older than 2.006; upgrade from
http://metacpan.org/pod/Socket])
++ exit 1
++fi
++
+ AC_PATH_PROG(EXPECT_PATH,expect,no)
+ if test $EXPECT_PATH = no; then
+ AC_MSG_ERROR([can't locate expect.])
+@@ -300,7 +308,7 @@ fi
+ # ping seems to take one of two formats for count (N)
+ # BSD: ping -c N host
+ # SVR: ping host N
+-$PING_PATH -c 1 -v 127.0.0.1 > /dev/null 2>&1
++true
+ if test $? -eq 0 ; then
+ LG_PING_CMD="$PING_PATH -c 1"
+ else
Index: patches/patch-etc_Makefile_in
===================================================================
RCS file: /cvs/ports/sysutils/rancid/patches/patch-etc_Makefile_in,v
retrieving revision 1.4
diff -u -p -r1.4 patch-etc_Makefile_in
--- patches/patch-etc_Makefile_in 8 Jun 2012 13:59:08 -0000 1.4
+++ patches/patch-etc_Makefile_in 7 Sep 2015 17:45:31 -0000
@@ -1,16 +1,16 @@
$OpenBSD: patch-etc_Makefile_in,v 1.4 2012/06/08 13:59:08 pea Exp $
---- etc/Makefile.in.orig Thu Nov 17 22:10:11 2011
-+++ etc/Makefile.in Tue May 29 13:19:25 2012
-@@ -22,7 +22,7 @@
- # permission and modified beyond recognition.
-
- VPATH = @srcdir@
+--- etc/Makefile.in.orig Mon Mar 30 10:51:23 2015
++++ etc/Makefile.in Mon Mar 30 10:55:17 2015
+@@ -70,7 +70,7 @@ am__make_running_with_option = \
+ test $$has_opt = yes
+ am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+ am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
-pkgdatadir = $(datadir)/@PACKAGE@
+pkgdatadir = $(datadir)/examples/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
-@@ -423,26 +423,10 @@ uninstall-am: uninstall-pkgdataDATA
+@@ -532,30 +532,12 @@ uninstall-am: uninstall-pkgdataDATA uninstall-sysconfD
install-data-local: all
@@ -24,6 +24,9 @@ $OpenBSD: patch-etc_Makefile_in,v 1.4 20
- else \
- $(INSTALL_DATA) rancid.conf.sample
$(DESTDIR)$(sysconfdir)/rancid.conf; \
- fi; \
+- if test ! -f $(DESTDIR)$(sysconfdir)/rancid.types.conf ; then \
+- $(INSTALL_DATA) rancid.types.conf
$(DESTDIR)$(sysconfdir)/rancid.types.conf; \
+- fi; \
- if test -f $(DESTDIR)$(sysconfdir)/lg.conf ; then \
- echo ""; \
- echo "WARNING: *** $(DESTDIR)$(sysconfdir)/lg.conf exists. See "; \
@@ -33,11 +36,14 @@ $OpenBSD: patch-etc_Makefile_in,v 1.4 20
- else \
- $(INSTALL_DATA) lg.conf.sample $(DESTDIR)$(sysconfdir)/lg.conf; \
- fi; \
-- fi
+- fi; \
+- $(INSTALL_DATA) rancid.types.base
$(DESTDIR)$(sysconfdir)/rancid.types.base
+ test -z "$(pkgdatadir)" || $(mkdir_p) "$(DESTDIR)$(pkgdatadir)"
+ $(INSTALL_DATA) ../cloginrc.sample
$(DESTDIR)$(pkgdatadir)/cloginrc.sample; \
+ $(INSTALL_DATA) rancid.conf.sample $(DESTDIR)$(pkgdatadir)/rancid.conf;
\
+ $(INSTALL_DATA) lg.conf.sample $(DESTDIR)$(pkgdatadir)/lg.conf; \
++ $(INSTALL_DATA) rancid.types.conf
$(DESTDIR)$(pkgdatadir)/rancid.types.conf; \
++ $(INSTALL_DATA) rancid.types.base
$(DESTDIR)$(pkgdatadir)/rancid.types.base
lg.conf.sample: Makefile $(srcdir)/lg.conf.sample.in
rm -f lg.conf.sample lg.conf.sample.tmp; \
Index: patches/patch-etc_rancid_conf_sample_in
===================================================================
RCS file: patches/patch-etc_rancid_conf_sample_in
diff -N patches/patch-etc_rancid_conf_sample_in
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-etc_rancid_conf_sample_in 7 Sep 2015 17:45:31 -0000
@@ -0,0 +1,11 @@
+--- etc/rancid.conf.sample.in.orig Tue Jun 2 22:10:06 2015
++++ etc/rancid.conf.sample.in Tue Jun 2 22:17:41 2015
+@@ -32,7 +32,7 @@ TMPDIR=/tmp; export TMPDIR
+ # Be careful changing this, it affects CVSROOT below. It should be a FQPN,
not
+ # relative.
+ BASEDIR=@localstatedir@; export BASEDIR
+-PATH=@bindir@:@ENV_PATH@; export PATH
++PATH=/usr/bin:/bin:@prefix@/bin; export PATH
+ #
+ # Set to the name of the sendmail executable (or script) that will accept the
+ # -t option to take its rcpt and other headers from std-in and $MAILOPTS (see
Index: patches/patch-etc_rancid_types_base
===================================================================
RCS file: patches/patch-etc_rancid_types_base
diff -N patches/patch-etc_rancid_types_base
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-etc_rancid_types_base 7 Sep 2015 17:45:31 -0000
@@ -0,0 +1,40 @@
+--- etc/rancid.types.base.orig Mon Mar 16 22:02:51 2015
++++ etc/rancid.types.base Mon Mar 30 10:48:37 2015
+@@ -7,22 +7,23 @@
+ #
+ agm;script;agmrancid
+ #
+-adtran;script;rancid -t adtran
+-adtran;module;adtran
+-adtran;inloop;adtran::inloop
+-adtran;login;clogin
++# XXX This was the start of support for adtran, but it is incomplete.
++#adtran;script;rancid -t adtran
++#adtran;module;adtran
++#adtran;inloop;adtran::inloop
++#adtran;login;clogin
+ # TA5000
+-adtran;command;adtran::ShowVersion;show version
+-adtran;command;adtran::ShowSystemInventory;show system inventory
+-adtran;command;adtran::ShowTableInterfaces;show table interfaces
+-adtran;command;adtran::ShowEvc;show evc
+-adtran;command;adtran::ShowEvcmap;show evc-map
+-adtran;command;adtran::ShowEfmgroup;show efm-group 1
+-adtran;command;adtran::ShowInterfacesShdsl;show interfaces shdsl
+-adtran;command;adtran::ShowInterfacesAdsl;show interfaces adsl
++#adtran;command;adtran::ShowVersion;show version
++#adtran;command;adtran::ShowSystemInventory;show system inventory
++#adtran;command;adtran::ShowTableInterfaces;show table interfaces
++#adtran;command;adtran::ShowEvc;show evc
++#adtran;command;adtran::ShowEvcmap;show evc-map
++#adtran;command;adtran::ShowEfmgroup;show efm-group 1
++#adtran;command;adtran::ShowInterfacesShdsl;show interfaces shdsl
++#adtran;command;adtran::ShowInterfacesAdsl;show interfaces adsl
+ # EFM NTU
+-adtran;command;adtran::ShowInterfaces;show interfaces
+-adtran;command;adtran::WriteTerm;show running-config
++#adtran;command;adtran::ShowInterfaces;show interfaces
++#adtran;command;adtran::WriteTerm;show running-config
+ #
+ alteon;script;arancid
+ alteon;login;alogin
Index: patches/patch-lib_junos_pm_in
===================================================================
RCS file: patches/patch-lib_junos_pm_in
diff -N patches/patch-lib_junos_pm_in
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-lib_junos_pm_in 7 Sep 2015 17:45:31 -0000
@@ -0,0 +1,24 @@
+--- lib/junos.pm.in.orig Mon Mar 16 22:02:52 2015
++++ lib/junos.pm.in Mon Mar 30 10:48:53 2015
+@@ -439,13 +439,18 @@ sub ShowSystemLicense {
+
+ # licenses used changes constantly. distill it to a percentage.
+ if (/^(\s+scale-subscriber)(\s+)(\d+)(\s+\d+)(.*$)/) {
+- my($a, $sp, $used, $avail, $rem) = ($1, $2, $3, $4, $');
++ my($a, $sp, $used, $avail, $rem) = ($1, $2, $3, $4, $5);
+ my($spl, $usedl) = (length($sp), length($used));
+- my($pcnt) = int(($used + 0.0) / ($avail + 0.0) * 100);
++ my($pcnt);
++ if ($avail < 1) {
++ $pcnt = ">100";
++ } else {
++ $pcnt = int(($used + 0.0) / ($avail + 0.0) * 100);
++ }
+ my($pcntl) = length($pcnt) + 1;
+ $spl = $spl + $usedl - $pcntl;
+
+- my($fmt) = "%s%-" . $spl . "s%d%%%s%s";
++ my($fmt) = "%s%-" . $spl . "s%s%%%s%s\n";
+ $_ = sprintf($fmt, $a, "", $pcnt, $avail, $rem);
+ }
+
Index: patches/patch-lib_panos_pm_in
===================================================================
RCS file: patches/patch-lib_panos_pm_in
diff -N patches/patch-lib_panos_pm_in
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-lib_panos_pm_in 7 Sep 2015 17:45:31 -0000
@@ -0,0 +1,8 @@
+--- lib/panos.pm.in.orig Tue Jun 2 22:24:59 2015
++++ lib/panos.pm.in Tue Jun 2 22:25:12 2015
+@@ -1,4 +1,4 @@
+-package ios;
++package panos;
+ ##
+ ## $Id: panos.pm.in 3019 2015-01-11 05:54:59Z heas $
+ ##
Index: patches/patch-lib_rancid_pm_in
===================================================================
RCS file: patches/patch-lib_rancid_pm_in
diff -N patches/patch-lib_rancid_pm_in
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-lib_rancid_pm_in 7 Sep 2015 17:45:31 -0000
@@ -0,0 +1,24 @@
+--- lib/rancid.pm.in.orig Mon Mar 30 10:48:50 2015
++++ lib/rancid.pm.in Mon Mar 30 10:48:54 2015
+@@ -366,7 +366,9 @@ sub ipaddrval {
+ $l = 128;
+ }
+ $norder = inet_pton(AF_INET6, $a);
+- return unpack("H*", $norder) . unpack("H*", pack("C", $l));
++ if (defined($norder)) {
++ return unpack("H*", $norder) . unpack("H*", pack("C", $l));
++ }
+ } else {
+ my($l);
+ if ($a =~ /\//) {
+@@ -375,7 +377,9 @@ sub ipaddrval {
+ $l = 32;
+ }
+ $norder = inet_pton(AF_INET, $a);
+- return(unpack("H*", $norder) . unpack("H*", pack("C", $l)));
++ if (defined($norder)) {
++ return(unpack("H*", $norder) . unpack("H*", pack("C", $l)));
++ }
+ }
+
+ # otherwise return the original key value, so as not to sort on null
Index: pkg/DESCR
===================================================================
RCS file: /cvs/ports/sysutils/rancid/pkg/DESCR,v
retrieving revision 1.1.1.1
diff -u -p -r1.1.1.1 DESCR
--- pkg/DESCR 16 Dec 2008 21:07:55 -0000 1.1.1.1
+++ pkg/DESCR 7 Sep 2015 17:45:31 -0000
@@ -1,12 +1,12 @@
RANCID monitors a router's (or more generally a device's)
configuration, including software and hardware (cards, serial numbers,
-etc) and uses CVS (Concurrent Version System) to maintain history of
+etc) and uses CVS (Concurrent Version System) to maintain history of
changes.
RANCID does this by the very simple process summarized here:
- * login to each device in the router table (router.db)
- * run various commands to get the information that will be saved
- * cook the output; re-format, remove oscillating or incrementing data
+ * login to each device in the router table (router.db)
+ * run various commands to get the information that will be saved
+ * cook the output; re-format, remove oscillating or incrementing data
* email any differences (sample) from the previous collection to a
- mail list
+ mail list
* and finally commit those changes to the revision control system
Index: pkg/MESSAGE
===================================================================
RCS file: pkg/MESSAGE
diff -N pkg/MESSAGE
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ pkg/MESSAGE 7 Sep 2015 17:45:31 -0000
@@ -0,0 +1,7 @@
+If you are upgrading from rancid-<3, please note that router.db field
+separator has been changed from ':' to ';' to avoid conflict with IPv6
+addresses. Replace the field separator in router.db files before running
+rancid.
+
+The configuration files location is changed from ${SYSCONFDIR} to
+${SYSCONFDIR}/rancid.
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/sysutils/rancid/pkg/PLIST,v
retrieving revision 1.7
diff -u -p -r1.7 PLIST
--- pkg/PLIST 8 Jun 2012 13:59:08 -0000 1.7
+++ pkg/PLIST 7 Sep 2015 17:45:31 -0000
@@ -1,9 +1,12 @@
@comment $OpenBSD: PLIST,v 1.7 2012/06/08 13:59:08 pea Exp $
@conflict par-*
+@conflict rancid-<3v0
+@ask-update rancid-<3v0 Make sure router.db files use new fields separator
before upgrading
@newgroup _rancid:613
@newuser _rancid:613:_rancid:daemon:Rancid user:/var/rancid:/bin/sh
bin/agmrancid
bin/alogin
+bin/anlogin
bin/arancid
bin/arrancid
bin/avologin
@@ -12,8 +15,10 @@ bin/blogin
bin/brancid
bin/cat5rancid
bin/clogin
+bin/complogin
bin/control_rancid
bin/cssrancid
+bin/dllogin
bin/elogin
bin/erancid
bin/f10rancid
@@ -21,7 +26,6 @@ bin/f5rancid
bin/flogin
bin/fnlogin
bin/fnrancid
-bin/francid
bin/hlogin
@bin bin/hpuifilter
bin/hrancid
@@ -29,21 +33,19 @@ bin/htlogin
bin/htrancid
bin/jerancid
bin/jlogin
-bin/jrancid
@comment bin/lg.cgi
@comment bin/lgform.cgi
bin/mrancid
bin/mrvlogin
-bin/mrvrancid
bin/mtlogin
bin/mtrancid
bin/nlogin
bin/nrancid
bin/nslogin
bin/nsrancid
-bin/nxrancid
-bin/par
-bin/prancid
+bin/panlogin
+@bin bin/par
+bin/plogin
bin/rancid
bin/rancid-cvs
bin/rancid-fe
@@ -53,14 +55,29 @@ bin/rivrancid
bin/rrancid
bin/srancid
bin/tlogin
-bin/tntlogin
-bin/tntrancid
bin/trancid
+bin/wlogin
+bin/xilogin
+bin/xirancid
bin/xrancid
-bin/xrrancid
bin/zrancid
+lib/rancid/
+lib/rancid/arbor.pm
+lib/rancid/ciscowlc.pm
+lib/rancid/dell.pm
+lib/rancid/eos.pm
+lib/rancid/foundry.pm
+lib/rancid/ios.pm
+lib/rancid/iosxr.pm
+lib/rancid/junos.pm
+lib/rancid/mrv.pm
+lib/rancid/nxos.pm
+lib/rancid/panos.pm
+lib/rancid/rancid.pm
@man man/man1/agmrancid.1
@man man/man1/alogin.1
+@man man/man1/anlogin.1
+@man man/man1/anrancid.1
@man man/man1/arancid.1
@man man/man1/arrancid.1
@man man/man1/avologin.1
@@ -69,8 +86,11 @@ bin/zrancid
@man man/man1/brancid.1
@man man/man1/cat5rancid.1
@man man/man1/clogin.1
+@man man/man1/complogin.1
+@man man/man1/comprancid.1
@man man/man1/control_rancid.1
@man man/man1/cssrancid.1
+@man man/man1/dllogin.1
@man man/man1/elogin.1
@man man/man1/erancid.1
@man man/man1/f10rancid.1
@@ -78,18 +98,15 @@ bin/zrancid
@man man/man1/flogin.1
@man man/man1/fnlogin.1
@man man/man1/fnrancid.1
-@man man/man1/francid.1
@man man/man1/hlogin.1
@man man/man1/hrancid.1
@man man/man1/htlogin.1
@man man/man1/htrancid.1
@man man/man1/jerancid.1
@man man/man1/jlogin.1
-@man man/man1/jrancid.1
@man man/man1/lg_intro.1
@man man/man1/mrancid.1
@man man/man1/mrvlogin.1
-@man man/man1/mrvrancid.1
@man man/man1/mtlogin.1
@man man/man1/mtrancid.1
@man man/man1/nlogin.1
@@ -97,7 +114,9 @@ bin/zrancid
@man man/man1/nslogin.1
@man man/man1/nsrancid.1
@man man/man1/nxrancid.1
+@man man/man1/panlogin.1
@man man/man1/par.1
+@man man/man1/plogin.1
@man man/man1/prancid.1
@man man/man1/rancid-cvs.1
@man man/man1/rancid-run.1
@@ -108,15 +127,18 @@ bin/zrancid
@man man/man1/rrancid.1
@man man/man1/srancid.1
@man man/man1/tlogin.1
-@man man/man1/tntlogin.1
-@man man/man1/tntrancid.1
@man man/man1/trancid.1
+@man man/man1/wlogin.1
+@man man/man1/xilogin.1
+@man man/man1/xirancid.1
@man man/man1/xrancid.1
-@man man/man1/xrrancid.1
@man man/man1/zrancid.1
+@man man/man3/rancid.3
@man man/man5/cloginrc.5
@man man/man5/lg.conf.5
@man man/man5/rancid.conf.5
+@man man/man5/rancid.types.base.5
+@man man/man5/rancid.types.conf.5
@man man/man5/router.db.5
share/doc/pkg-readmes/${FULLPKGNAME}
share/doc/rancid/
@@ -127,12 +149,15 @@ share/doc/rancid/README
share/doc/rancid/README.lg
share/doc/rancid/UPGRADING
share/examples/rancid/
+@sample ${SYSCONFDIR}/rancid/
share/examples/rancid/cloginrc.sample
share/examples/rancid/lg.conf
share/examples/rancid/lg.conf.sample
share/examples/rancid/rancid.conf
-@sample ${SYSCONFDIR}/rancid.conf
+@sample ${SYSCONFDIR}/rancid/rancid.conf
share/examples/rancid/rancid.conf.sample
+share/examples/rancid/rancid.types.base
+@sample ${SYSCONFDIR}/rancid/rancid.types.base
share/rancid/
share/rancid/README.misc
share/rancid/cisco-load.exp
Index: pkg/README
===================================================================
RCS file: /cvs/ports/sysutils/rancid/pkg/README,v
retrieving revision 1.2
diff -u -p -r1.2 README
--- pkg/README 2 Jun 2011 13:41:41 -0000 1.2
+++ pkg/README 7 Sep 2015 17:45:31 -0000
@@ -4,19 +4,19 @@ $OpenBSD: README,v 1.2 2011/06/02 13:41:
| Running ${FULLPKGNAME} on OpenBSD
+-----------------------------------------------------------------------
-On OpenBSD, RANCID lives and works in /var/rancid, with user id _rancid.
+On OpenBSD, RANCID lives and works in ${LOCALSTATEDIR}, with user id _rancid.
Quick Installation Guide (an example):
-1) Modify ${SYSCONFDIR}/rancid.conf. The variable LIST_OF_GROUPS is a space
- delimited list of router "groups".
+1) Modify ${SYSCONFDIR}/rancid/rancid.conf. The variable LIST_OF_GROUPS is
+ a space delimited list of router "groups".
e.g.:
LIST_OF_GROUPS="backbone aggregation switches"
-2) Create /var/rancid/.cloginrc, with read/write permissions only for
+2) Create ${LOCALSTATEDIR}/.cloginrc, with read/write permissions only for
the _rancid user, e.g. 0600 or 0640.
- Review ${TRUEPREFIX}/share/examples/rancid/cloginrc.sample for examples
+ Review ${TRUEPREFIX}/share/examples/rancid/cloginrc.sample for examples
and a good starting point. See also cloginrc(5).
Test to make sure that you can login to every router.
@@ -35,7 +35,7 @@ Quick Installation Guide (an example):
do it. See also rancid-cvs(1).
5) For each "group", modify the router.db file in the group directory.
- The file is of the form "router:mfg:state", where "router" is
+ The file is of the form "router;mfg;state", where "router" is
the name (we use FQDN) of the router, mfg is the manufacturer from
the set of (cat5|cisco|juniper), and "state" is either up or down.
Each router listed as "up" will have the configuration grabbed.
@@ -44,16 +44,16 @@ Quick Installation Guide (an example):
6) For first-time users or new installations, run `rancid-run' (with no
arguments) as the user _rancid and check the resulting log file(s)
- (in /var/rancid/logs/*) for errors. Repeat until there are no
+ (in ${LOCALSTATEDIR}/logs/*) for errors. Repeat until there are no
errors.
7) Put `rancid-run' in _rancid's crontab to be called however often you
want it to run for each group (rancid-run [<GROUP>]). If you run it
less often than once/hour, check the setting of OLDTIME in
- ${SYSCONFDIR}/rancid.conf.
+ ${SYSCONFDIR}/rancid/rancid.conf.
Example:
# run config differ hourly
1 * * * * ${TRUEPREFIX}/bin/rancid-run
# clean out config differ logs
- 50 23 * * * /usr/bin/find /var/rancid/logs -type f -mtime +2 -exec rm
{} \;
+ 50 23 * * * /usr/bin/find ${LOCALSTATEDIR}/logs -type f -mtime +2 -exec
rm {} \;