#! @PERLV_PATH@ ## ## $Id$ ## ## @PACKAGE@ @VERSION@ ## Copyright (c) 1997-2007 by Terrapin Communications, Inc. ## All rights reserved. ## ## This code is derived from software contributed to and maintained by ## Terrapin Communications, Inc. by Henry Kilmer, John Heasley, Andrew Partan, ## Pete Whiting, Austin Schutz, and Andrew Fort. ## ## Redistribution and use in source and binary forms, with or without ## modification, are permitted provided that the following conditions ## are met: ## 1. Redistributions of source code must retain the above copyright ## notice, this list of conditions and the following disclaimer. ## 2. Redistributions in binary form must reproduce the above copyright ## notice, this list of conditions and the following disclaimer in the ## documentation and/or other materials provided with the distribution. ## 3. All advertising materials mentioning features or use of this software ## must display the following acknowledgement: ## This product includes software developed by Terrapin Communications, ## Inc. and its contributors for RANCID. ## 4. Neither the name of Terrapin Communications, Inc. nor the names of its ## contributors may be used to endorse or promote products derived from ## this software without specific prior written permission. ## 5. It is requested that non-binding fixes and modifications be contributed ## back to Terrapin Communications, Inc. ## ## THIS SOFTWARE IS PROVIDED BY Terrapin Communications, INC. AND CONTRIBUTORS ## ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED ## TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR ## PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COMPANY OR CONTRIBUTORS ## BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR ## CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF ## SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS ## INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN ## CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ## ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE ## POSSIBILITY OF SUCH DAMAGE. # # rancid-FE - front-end to rancid/jrancid/etc. for use with par. # # usage: rancid-fe : # require 5; ($router, $vendor) = split('\:', $ARGV[0]); $vendor =~ tr/[A-Z]/[a-z]/; %vendortable = ( 'alteon' => 'arancid', 'avocent' => 'avorancid', 'baynet' => 'brancid', 'bigip' => 'f5rancid', 'cat5' => 'cat5rancid', 'cisco' => 'rancid', 'css' => 'cssrancid', 'enterasys' => 'rivrancid', 'erx' => 'jerancid', 'extreme' => 'xrancid', 'ezt3' => 'erancid', 'force10' => 'f10rancid', 'fortigate' => 'fnrancid', 'foundry' => 'francid', 'hitachi' => 'htrancid', 'hp' => 'hrancid', 'juniper' => 'jrancid', 'mrtd' => 'mrancid', 'netscaler' => 'nsrancid', 'netscreen' => 'nrancid', 'procket' => 'prancid', 'redback' => 'rrancid', 'riverhead' => 'agmrancid', 'riverstone' => 'rivrancid', 'smc' => 'srancid', 'tnt' => 'tntrancid', 'zebra' => 'zrancid' ); if ($vendortable{$vendor} eq "") { printf(STDERR "unknown router manufacturer for $router: $vendor\n"); exit(-1); } else { exec($vendortable{$vendor} . " $router"); } printf(STDERR "exec failed router manufacturer $vendor: $!\n"); exit(-1);