|
|
|
|
@ -9,6 +9,15 @@
|
|
|
|
|
zebra_flags="" |
|
|
|
|
zebra_bind="127.0.0.1" |
|
|
|
|
zebra_port="2601" |
|
|
|
|
zebra_rip_flags="" |
|
|
|
|
zebra_rip_bind="${zebra_bind}" |
|
|
|
|
zebra_rip_port="2602" |
|
|
|
|
zebra_ospf_flags="" |
|
|
|
|
zebra_ospf_bind="${zebra_bind}" |
|
|
|
|
zebra_ospf_port="2604" |
|
|
|
|
zebra_bgp_flags="" |
|
|
|
|
zebra_bgp_bind="${zebra_bind}" |
|
|
|
|
zebra_bgp_port="2605" |
|
|
|
|
zebra_log_prolog="true" |
|
|
|
|
zebra_log_epilog="true" |
|
|
|
|
zebra_log_numfiles="10" |
|
|
|
|
@ -31,20 +40,28 @@
|
|
|
|
|
%start -u @l_susr@ |
|
|
|
|
rcService zebra enable yes || exit 0 |
|
|
|
|
rcService zebra active yes && exit 0 |
|
|
|
|
flags="$zebra_flags" |
|
|
|
|
echo $flags | grep -- -A >/dev/null |
|
|
|
|
if [ $? -ne 0 -a ".$zebra_bind" != . ]; then |
|
|
|
|
flags="$flags -A $zebra_bind" |
|
|
|
|
fi |
|
|
|
|
echo $flags | grep -- -P >/dev/null |
|
|
|
|
if [ $? -ne 0 -a ".$zebra_port" != . ]; then |
|
|
|
|
flags="$flags -P $zebra_port" |
|
|
|
|
fi |
|
|
|
|
cd @l_prefix@/etc/zebra |
|
|
|
|
@l_prefix@/sbin/zebra -d $flags |
|
|
|
|
for protocol in $zebra_protocols; do |
|
|
|
|
if [ -f @l_prefix@/sbin/${protocol}d ]; then |
|
|
|
|
@l_prefix@/sbin/${protocol}d -d |
|
|
|
|
for i in zebra $zebra_protocols; do |
|
|
|
|
if [ ".$i" = .zebra ]; then |
|
|
|
|
midfix="" |
|
|
|
|
daemon="${i}"; |
|
|
|
|
else |
|
|
|
|
midfix="${i}_"; |
|
|
|
|
daemon="${i}d"; |
|
|
|
|
fi |
|
|
|
|
if [ -x @l_prefix@/sbin/${daemon} ]; then |
|
|
|
|
flags=`eval echo \\\$zebra_${midfix}flags`; |
|
|
|
|
extra=`eval echo \\\$zebra_${midfix}bind`; |
|
|
|
|
echo $flags | grep -- -A >/dev/null |
|
|
|
|
if [ $? -ne 0 -a ".$extra" != . ]; then |
|
|
|
|
flags="$flags -A $extra" |
|
|
|
|
fi |
|
|
|
|
extra=`eval echo \\\$zebra_${midfix}port`; |
|
|
|
|
echo $flags | grep -- -P >/dev/null |
|
|
|
|
if [ $? -ne 0 -a ".$extra" != . ]; then |
|
|
|
|
flags="$flags -P $extra" |
|
|
|
|
fi |
|
|
|
|
@l_prefix@/sbin/${daemon} -d ${flags} |
|
|
|
|
fi |
|
|
|
|
done |
|
|
|
|
@l_prefix@/bin/vtysh -b |
|
|
|
|
|