diff options
author | Michael Larson <slioch@slioch.vyatta.com> | 2010-08-19 17:48:53 -0700 |
---|---|---|
committer | Michael Larson <slioch@slioch.vyatta.com> | 2010-08-19 17:48:53 -0700 |
commit | 63b71c2c9f140897f1597eb3223b50df96adf67a (patch) | |
tree | 17b3539c8ad73f78c4df09338b40e4f7924d45bb | |
parent | a785fe685d9fa0edd813e2a53f1ebbc227ba2c7f (diff) | |
download | vyatta-cfg-quagga-63b71c2c9f140897f1597eb3223b50df96adf67a.tar.gz vyatta-cfg-quagga-63b71c2c9f140897f1597eb3223b50df96adf67a.zip |
larkspur fix for bug 6069.
set first tmp file on first visitation. clean up other files in etc/commit hook.
-rw-r--r-- | Makefile.am | 2 | ||||
-rw-r--r-- | debian/vyatta-cfg-quagga.postinst | 7 | ||||
-rwxr-xr-x | scripts/vyatta-asn-first-cleanup.pl | 34 | ||||
-rw-r--r-- | templates/protocols/bgp/node.def | 6 |
4 files changed, 48 insertions, 1 deletions
diff --git a/Makefile.am b/Makefile.am index f6c04a85..50e67f34 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,3 +1,4 @@ +commithookdir = /etc/commit share_perl5dir = /opt/vyatta/share/perl5/Vyatta/Quagga cfgdir = $(datadir)/vyatta-cfg/templates curverdir = $(sysconfdir)/config-migrate/current @@ -10,6 +11,7 @@ sbin_SCRIPTS += scripts/policy/vyatta-check-as-prepend.pl sbin_SCRIPTS += scripts/vyatta-policy-action-verify.pl sbin_SCRIPTS += scripts/vyatta-gateway-static_route-check.pl sbin_SCRIPTS += scripts/vyatta-link-detect +sbin_SCRIPTS += scripts/vyatta-asn-first-cleanup.pl sbin_PROGRAMS = src/check_prefix_boundary diff --git a/debian/vyatta-cfg-quagga.postinst b/debian/vyatta-cfg-quagga.postinst new file mode 100644 index 00000000..4e19570a --- /dev/null +++ b/debian/vyatta-cfg-quagga.postinst @@ -0,0 +1,7 @@ +#!/bin/bash + +mkdir -p /etc/commit +ln -s /opt/vyatta/sbin/vyatta-asn-first-cleanup.pl /etc/commit/vyatta-asn-first-cleanup.pl 2>/dev/null + +exit 0 + diff --git a/scripts/vyatta-asn-first-cleanup.pl b/scripts/vyatta-asn-first-cleanup.pl new file mode 100755 index 00000000..cec82d7c --- /dev/null +++ b/scripts/vyatta-asn-first-cleanup.pl @@ -0,0 +1,34 @@ +#!/usr/bin/perl +# Module: vyatta-asn-first-cleanup.pl +# +# **** License **** +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License version 2 as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# A copy of the GNU General Public License is available as +# `/usr/share/common-licenses/GPL' in the Debian GNU/Linux distribution +# or on the World Wide Web at `http://www.gnu.org/copyleft/gpl.html'. +# You can also obtain it by writing to the Free Software Foundation, +# Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, +# MA 02110-1301, USA. +# +# This code was originally developed by Vyatta, Inc. +# Portions created by Vyatta are Copyright (C) 2008 Vyatta, Inc. +# All Rights Reserved. +# +# Author: Michael Larson +# Date: June 2008 +# Description: Removes file at end of asn node visitation +# **** End License **** + +use strict; +use warnings; +use lib "/opt/vyatta/share/perl5/"; + +`rm -f /tmp/protocols-bgp.*`; diff --git a/templates/protocols/bgp/node.def b/templates/protocols/bgp/node.def index 3e9e6b51..44319838 100644 --- a/templates/protocols/bgp/node.def +++ b/templates/protocols/bgp/node.def @@ -7,4 +7,8 @@ val_help: u32:1-4294967294; AS number syntax:expression: $VAR(@) >= 1 && $VAR(@) <= 4294967294 ; \ "AS number must be between 1 and 4294967294" -end: /opt/vyatta/sbin/vyatta-bgp.pl --main +end: +if [ ! -f "/tmp/protocols-bgp.$PPID" ]; then + touch /tmp/protocols-bgp.$PPID; + /opt/vyatta/sbin/vyatta-bgp.pl --main +fi;
\ No newline at end of file |