Mercurial > oi > oi-build
view components/quagga/Solaris/quaggaadm @ 417:7c10b5cba79b
7066915 Move Quagga to Userland
PSARC 2008/038 Move quagga files from /usr/sfw to /usr
6636788 quagga files should move from /usr/sfw
6610234 Pre-quagga start/stop scripts in /usr/sfw/sbin (bgpdstart,ospfdstart,etc..) should be removed
7064040 quagga smf start method no longer needs to worry about upgrade from SUNWzerbra
7027236 ospfd should allow the -a option to be set in smf
7066821 quaggaadm usage message gives program name as quaggaadm_usage instead of quaggaadm.
6933282 quagga manual pages need to be adjusted for the new IPS package names.
6615038 quaagadm: there is no usage info for the -e option
7002951 quagga pkg should deliver headers to allow users to build OSPF-API client programs
author | Brian Utterback <Brian.Utterback@Oracle.COM> |
---|---|
date | Mon, 18 Jul 2011 12:08:25 -0700 |
parents | |
children |
line wrap: on
line source
#!/bin/ksh # # CDDL HEADER START # # The contents of this file are subject to the terms of the # Common Development and Distribution License (the "License"). # You may not use this file except in compliance with the License. # # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE # or http://www.opensolaris.org/os/licensing. # See the License for the specific language governing permissions # and limitations under the License. # # When distributing Covered Code, include this CDDL HEADER in each # file and include the License file at usr/src/OPENSOLARIS.LICENSE. # If applicable, add the following below this CDDL HEADER, with the # fields enclosed by brackets "[]" replaced with your own identifying # information: Portions Copyright [yyyy] [name of copyright owner] # # CDDL HEADER END # # Copyright (c) 2008, 2011, Oracle and/or its affiliates. All rights reserved. # # ident "@(#)quaggaadm 1.3 08/10/02 SMI" daemons="zebra ripd ripngd ospfd ospf6d bgpd isisd" function quaggaadm_usage { print - "Usage:\n" >&2 for H in ${daemons} ; do print - "\t${1} [-e] ${H}\t\tConnect to ${H} daemon" >&2 done print - "\nThe -e flag enables the named daemon to accept ${1} connections and" >&2 print - "must be used on the first use of ${1} to connect to a particular daemon." >&2 } if [ ${#} -gt 2 ] then quaggaadm_usage ${0} exit 1 fi function vty_enable { restart=0; /usr/bin/svcprop -p routing/vty_address ${1} \ | grep -- '[0-9a-zA-Z]' > /dev/null || \ /usr/sbin/routeadm -m ${1} vty_address="127.0.0.1" && \ restart=1 /usr/bin/svcprop -p routing/vty_port ${1}| grep 0 > /dev/null && \ /usr/sbin/routeadm -m ${1} vty_port=${2} if [ $restart = "1" ]; then /usr/sbin/svcadm restart ${1} fi } ENABLE="no" if [ ${#} -eq 2 ] ; then DAEMON=${2} if [ ${1} != "-e" ]; then quaggaadm_usage ${0} exit 1; fi ENABLE="yes" elif [ ${#} -eq 1 ] ; then DAEMON=${1} fi case ${DAEMON} in zebra) # telnet to zebra daemon PORT=2601 SVC="zebra:quagga" ;; rip|ripd) # telnet to ripd daemon PORT=2602 SVC="rip:quagga" ;; ripng|ripngd) # telnet to ripngd daemon PORT=2603 SVC="ripng:quagga" ;; ospfd|ospf) # telnet to ospfd daemon PORT=2604 SVC="ospf:quagga" ;; bgp|bgpd) # telnet to bgpd daemon PORT=2605 SVC="bgp:quagga" ;; ospf6|ospf6d) # telnet to ospf6d daemon PORT=2606 SVC="ospf6:quagga" ;; isis|isisd) # telnet to isisd daemon PORT=2608 SVC="isis:quagga" ;; *) # unknown daemon print - "Unrecognized command: ${1}..." >&2 quaggaadm_usage ${0} exit 1 ;; esac if [ ${ENABLE} = "yes" ] ; then vty_enable ${SVC} ${PORT} || exit 1 fi exec telnet 127.0.0.1 ${PORT} exit 0