#!/bin/sh ############################################################################### # # # IPFire.org - A linux based firewall # # Copyright (C) 2007-2022 IPFire Team # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # # the Free Software Foundation, either version 3 of the License, or # # (at your option) any later version. # # # # 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. # # # # You should have received a copy of the GNU General Public License # # along with this program. If not, see . # # # ############################################################################### . /etc/sysconfig/rc . ${rc_functions} DAEMONS="mgmtd zebra bgpd ospfd staticd" case "${1}" in start) # Fix permissions of configuration directory if [ -d "/etc/frr" ]; then chown root.frr /etc/frr chmod 775 /etc/frr fi for daemon in ${DAEMONS}; do if [ -f "/etc/frr/${daemon}.conf" ]; then # Set permissions chown frr.frr "/etc/frr/${daemon}.conf" boot_mesg "Starting FRRouting ${daemon}..." loadproc "/usr/sbin/${daemon}" --daemon fi done ;; stop) for daemon in ${DAEMONS}; do boot_mesg "Stopping FRRouting ${daemon}..." killproc "/usr/sbin/${daemon}" done ;; reload) # Reload all daemons for daemon in ${DAEMONS}; do boot_mesg "Reloading FRRouting ${daemon}..." reloadproc "/usr/sbin/${daemon}" done ;; restart) ${0} stop sleep 1 ${0} start ;; status) for daemon in ${DAEMONS}; do statusproc "/usr/sbin/${daemon}" done ;; *) echo "Usage: ${0} {start|stop|reload|restart|status}" exit 1 ;; esac