bird: Rename to bird1 and bump to v1.6.4
[feed/routing.git] / bird-openwrt / bird4-openwrt / src / init.d / bird4
diff --git a/bird-openwrt/bird4-openwrt/src/init.d/bird4 b/bird-openwrt/bird4-openwrt/src/init.d/bird4
deleted file mode 100755 (executable)
index e5fe473..0000000
+++ /dev/null
@@ -1,233 +0,0 @@
-#!/bin/sh /etc/rc.common
-
-# Copyright (C) 2014-2017 - Eloi Carbo
-#
-# 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 <http://www.gnu.org/licenses/>.
-#
-
-# Extra Service Function to get the Status of the Service
-# This complements /etc/rc.common functions
-# Commands ending with *_quiet are meant to be ran in Luci. These
-# scripts' return minimal output.
-EXTRA_COMMANDS="status start_quiet stop_quiet restart_quiet status_quiet"
-EXTRA_HELP="        status  Returns service status"
-
-BIRD="bird4"
-BIRD_CONFIG="/etc/${BIRD}.conf"
-BIRD_LOG="/var/log/${BIRD}.log"
-BIRD_ERR="/tmp/${BIRD}.err"
-
-START=99
-STOP=10
-
-SERVICE_DAEMONIZE=1
-SERVICE_USE_PID=1
-SERVICE_PID_FILE="/var/run/${BIRD}.pid"
-
-BIRD_BIN="/usr/sbin/${BIRD}"
-# Special non-terminal-rich output for Luci calls
-LUCI="false"
-
-. /etc/${BIRD}/init.d/${BIRD}-lib.sh
-
-start() {
-    config_load ${BIRD}
-    local use_UCI_config
-    get use_UCI_config 'bird'
-
-    #Start the service
-    if [ "${LUCI}" == "false" ]; then
-        echo "Starting ${BIRD} Service [ ... ]"
-    fi
-    if [ -f ${BIRD_ERR} ]; then
-        echo -n "" > ${BIRD_ERR}
-    else
-        touch ${BIRD_ERR}
-    fi
-
-    if [ -z "${use_UCI_config}" -o "${use_UCI_config}" = "0" ]; then
-        # Disable Custom bird-openwrt settings.
-        # Use default behaviour and files
-        ${BIRD_BIN} -d -c ${BIRD_CONFIG} -P ${SERVICE_PID_FILE} -D ${BIRD_LOG} &> ${BIRD_ERR} &
-    else
-        #Set Bird4 configuration location:
-        local UCI_config_file
-        local log_file
-        get UCI_config_file 'bird'
-        get log_file 'global'
-        BIRD_CONFIG="${UCI_config_file:-$BIRD_CONFIG}"
-        BIRD_LOG="${log_file:-$BIRD_LOG}"
-        #Backup previous configuration
-        [ -f ${BIRD_CONFIG} ] && cp ${BIRD_CONFIG} ${BIRD_CONFIG}.bak
-        #Setup the basic configuration
-        prepare_global 'global'
-
-        # Gather and set all Functions
-        gather_functions
-        # Gather and set all Filters
-        gather_filters
-
-        # Setup Main Protocols
-        config_foreach prepare_kernel 'kernel'
-        config_foreach prepare_static 'static'
-        config_foreach prepare_device 'device'
-        config_foreach prepare_direct 'direct'
-        config_foreach prepare_pipe 'pipe'
-
-        #Setup protocol's configuration: BGP
-        config_foreach prepare_bgp_template 'bgp_template'
-        config_foreach prepare_bgp 'bgp'
-
-        #Setup protocol's configuration: OSPF
-        config_foreach prepare_ospf_instance 'ospf'
-
-        #Start the service
-        ${BIRD_BIN} -d -c ${BIRD_CONFIG} -P ${SERVICE_PID_FILE} -D ${BIRD_LOG} &>${BIRD_ERR} &
-    fi
-    while [ ! -s ${SERVICE_PID_FILE} ]; do
-        sleep 1
-        if [ -s ${BIRD_ERR} ]; then
-            if [ "${LUCI}" == "false" ]; then
-                echo -e "${BIRD} Daemon Start Status: \033[0;31m[ FAILED ]\e[m"
-                cat ${BIRD_ERR}
-                cat ${BIRD_ERR} >> ${BIRD_LOG}
-            else
-                echo "${BIRD} - Failed: $(cat ${BIRD_ERR})"
-                cat ${BIRD_ERR} >> ${BIRD_LOG}
-            fi
-            break
-        fi
-    done
-
-    # PID & ERROR contents are read from their files to avoid an issue
-    # where if [ -s ${SERVICE_PID_FILE} ] and if [ -s ${BIRD_ERR} ]
-    # fails unless a previous command reads its contents making its
-    # behaviour unreliable.
-    SVC_PID="$(cat ${SERVICE_PID_FILE})"
-    BRDERR_TXT="$(cat ${BIRD_ERR})"
-    if [ -n "${SVC_PID}" ]; then
-        if [ -n "${BRDERR_TXT}" ]; then
-            if [ "${LUCI}" == "false" ]; then
-                echo -e "${BIRD} Daemon already started. Status \033[0;32m[ RUNNING ]\e[m"
-            else
-                echo "${BIRD} already started"
-            fi
-        else
-            if [ "${LUCI}" == "false" ]; then
-                echo -e "${BIRD} Daemon Start Status: \033[0;32m[ STARTED ]\e[m"
-            else
-                echo "${BIRD} - Started"
-            fi
-        fi
-        # PID File found (service started correctly)
-        return 0
-    fi
-
-    # PID File not found (error while starting service)
-    return 1
-}
-
-stop() {
-    if [ -s ${SERVICE_PID_FILE} ]; then
-        config_load ${BIRD}
-        local log_file
-        get log_file 'global'
-        BIRD_LOG="${log_file:-$BIRD_LOG}"
-        start-stop-daemon -p ${SERVICE_PID_FILE} -K 2>&1 >> ${BIRD_LOG}
-        if [ $? -eq 0 ]; then
-            if [ "${LUCI}" == "false" ]; then
-                echo -e "${BIRD} Daemon Stop Status: \033[0;32m[ OK ]\e[m"
-            else
-                echo "${BIRD} - Stopped"
-            fi
-            echo -n "" > ${BIRD_ERR}
-        else
-            if [ "${LUCI}" == "false" ]; then
-                echo -e "${BIRD} Daemon Stop Status: \033[0;31m[ FAILED ]\e[m"
-                echo "Check ${BIRD_LOG} file for more information."
-            else
-                echo "${BIRD} Failed to Stop. See Log file: ${BIRD_LOG}"
-            fi
-        fi
-    else
-        if [ "${LUCI}" == "false" ]; then
-            echo -e "${BIRD} Daemon Service already stopped. \033[0;31m[ FAILED ]\e[m"
-        else
-            echo "${BIRD} already stopped"
-        fi
-    fi
-    return 0
-}
-
-restart() {
-    stop
-    sleep 1
-    if [ "${LUCI}" == "true" ]; then
-        echo " ... "
-    fi
-    start
-}
-
-reload() {
-    service_reload ${BIRD_BIN}
-}
-
-status() {
-    if [ -s ${SERVICE_PID_FILE} ]; then
-        if [ "${LUCI}" == "false" ]; then
-            echo -e "${BIRD} start status: \033[0;32m[ RUNNING ]\e[m"
-        else
-            echo "${BIRD}: Running"
-        fi
-        return 0
-    else
-        if [ -s ${BIRD_ERR} ]; then
-            if [ "${LUCI}" == "false" ]; then
-                echo -e "${BIRD} service status: \033[0;31m[ STOPPED ]\e[m"
-                cat ${BIRD_ERR}
-            else
-                echo "${BIRD}: Failed - $(cat ${BIRD_ERR})"
-            fi
-            return 2
-        else
-            if [ "${LUCI}" == "false" ]; then
-                echo -e "${BIRD} service status: \033[0;31m[ STOPPED ]\e[m"
-            else
-                echo "${BIRD}: Stopped"
-            fi
-            return 1
-        fi
-    fi
-}
-
-
-# Luci-specific calls (stripped output).
-# The following scripts are not meant to be ran using Ash Terminal
-# Used in: LUCI/model/cbi/bird4/status.lua
-start_quiet() {
-    LUCI="true"
-    start
-}
-stop_quiet() {
-    LUCI="true"
-    stop
-}
-restart_quiet() {
-    LUCI="true"
-    restart
-}
-status_quiet() {
-    LUCI="true"
-    status
-}