+++ /dev/null
-#
-# Copyright (C) 2009-2012 OpenWrt.org
-#
-# This is free software, licensed under the GNU General Public License v2.
-# See /LICENSE for more information.
-
-include $(TOPDIR)/rules.mk
-
-PKG_NAME:=bird
-PKG_VERSION:=1.3.7
-PKG_RELEASE:=1
-
-PKG_SOURCE:=bird-$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL:=ftp://bird.network.cz/pub/bird
-PKG_MD5SUM:=c400b008ef834d9e7288dcdbe41b7c15
-PKG_BUILD_DEPENDS:=libncurses libreadline
-
-include $(INCLUDE_DIR)/package.mk
-
-define Package/bird/Default
- TITLE:=The BIRD Internet Routing Daemon
- URL:=http://bird.network.cz/
- DEPENDS:=
-endef
-
-define Package/birdc/Default
- TITLE:=The BIRD command-line client
- URL:=http://bird.network.cz/
- DEPENDS:= +libreadline +libncurses
-endef
-
-define Package/bird/Default/description1
-BIRD is an internet routing daemon which manages TCP/IP routing tables
-with support of modern routing protocols, easy to use configuration
-interface and powerful route filtering language. It is lightweight and
-efficient and therefore appropriate for small embedded routers.
-
-endef
-
-define Package/bird/Default/description2
-In BGP, BIRD supports communities, multiprotocol extensions, MD5
-authentication, 32bit AS numbers and could act as a route server or a
-route reflector. BIRD also supports multiple RIBs, multiple kernel
-routing tables and redistribution between the protocols with a powerful
-configuration syntax.
-
-endef
-
-define Package/bird/Default/description3
-This is a BIRD command-line client. It is used to send commands to BIRD,
-commands can perform simple actions such as enabling/disabling of
-protocols, telling BIRD to show various information, telling it to show
-a routing table filtered by a filter, or asking BIRD to reconfigure.
-
-Unless you can't afford dependency on ncurses and readline, you
-should install BIRD command-line client together with BIRD.
-
-endef
-
-define Package/bird4
-$(call Package/bird/Default)
- SECTION:=net
- CATEGORY:=Network
- SUBMENU:=Routing and Redirection
- TITLE+= (IPv4)
-endef
-
-define Package/birdc4
-$(call Package/birdc/Default)
- SECTION:=net
- CATEGORY:=Network
- SUBMENU:=Routing and Redirection
- TITLE+= (IPv4)
- DEPENDS+= +bird4
-endef
-
-define Package/bird6
-$(call Package/bird/Default)
- SECTION:=net
- CATEGORY:=Network
- TITLE+= (IPv6)
-endef
-
-define Package/birdc6
-$(call Package/birdc/Default)
- SECTION:=net
- CATEGORY:=Network
- TITLE+= (IPv6)
- DEPENDS+= +bird6
-endef
-
-define Package/bird4/description
-$(call Package/bird/Default/description1)
-This is IPv4 version of BIRD, it supports OSPFv2, RIPv2 and BGP
-protocols.
-
-$(call Package/bird/Default/description2)
-endef
-
-define Package/birdc4/description
-$(call Package/bird/Default/description1)
-$(call Package/bird/Default/description3)
-endef
-
-define Package/bird6/description
-$(call Package/bird/Default/description1)
-This is IPv6 version of BIRD, it supports OSPFv3, RIPng and BGP
-protocols.
-
-$(call Package/bird/Default/description2)
-endef
-
-define Package/birdc6/description
-$(call Package/bird/Default/description1)
-$(call Package/bird/Default/description3)
-endef
-
-CONFIGURE_ARGS += --with-linux-headers="$(LINUX_DIR)"
-
-define Build/Template
-
-$(STAMP_BUILT)-$(2): $(STAMP_PREPARED)
- $(call Build/Configure/Default,$(3))
- $(call Build/Compile/Default,)
- ( cd $(PKG_BUILD_DIR); mv -f bird bird$(2); mv -f birdc birdc$(2) )
- -$(MAKE) -C $(PKG_BUILD_DIR) clean
- touch $$@
-
-$(STAMP_BUILT): $(STAMP_BUILT)-$(2)
-
-define Package/bird$(2)/install
- $(INSTALL_DIR) $$(1)/usr/sbin
- $(INSTALL_BIN) $$(PKG_BUILD_DIR)/bird$(2) $$(1)/usr/sbin/
- $(INSTALL_BIN) ./files/bird$(2)loop $$(1)/usr/sbin/
- $(INSTALL_DIR) $$(1)/etc
- $(INSTALL_DATA) ./files/bird$(2).conf $$(1)/etc/
- $(INSTALL_DIR) $$(1)/etc/init.d
- $(INSTALL_BIN) ./files/bird$(2).init $$(1)/etc/init.d/bird$(2)
-
-endef
-
-define Package/bird$(2)/conffiles
-/etc/bird$(2).conf
-endef
-
-define Package/birdc$(2)/install
- $(INSTALL_DIR) $$(1)/usr/sbin
- $(INSTALL_BIN) $$(PKG_BUILD_DIR)/birdc$(2) $$(1)/usr/sbin/
-endef
-
-endef
-
-
-$(eval $(call Build/Template,bird4,4, --disable-ipv6))
-$(eval $(call Build/Template,bird6,6, --enable-ipv6))
-
-$(eval $(call BuildPackage,bird4))
-$(eval $(call BuildPackage,birdc4))
-$(eval $(call BuildPackage,bird6))
-$(eval $(call BuildPackage,birdc6))
+++ /dev/null
-
-# THIS CONFIG FILE IS NOT A COMPLETE DOCUMENTATION
-# PLEASE LOOK IN THE BIRD DOCUMENTATION FOR MORE INFO
-
-# However, most of options used here are just for example
-# and will be removed in real-life configs.
-
-log syslog all;
-
-# Override router ID
-#router id 192.168.0.1;
-
-# Turn on global debugging of all protocols
-#debug protocols all;
-
-
-# Define a route filter...
-# filter test_filter {
-# if net ~ 10.0.0.0/16 then accept;
-# else reject;
-# }
-
-# The direct protocol automatically generates device routes to all network
-# interfaces. Can exist in as many instances as you wish if you want to
-# populate multiple routing tables with device routes. Because device routes
-# are handled by Linux kernel, this protocol is usually not needed.
-# protocol direct {
-# interface "*"; # Restrict network interfaces it works with
-# }
-
-# This pseudo-protocol performs synchronization between BIRD's routing
-# tables and the kernel. You can run multiple instances of the kernel
-# protocol and synchronize different kernel tables with different BIRD tables.
-protocol kernel {
-# learn; # Learn all alien routes from the kernel
-# persist; # Don't remove routes on bird shutdown
- scan time 20; # Scan kernel routing table every 20 seconds
-# import none; # Default is import all
-# export all; # Default is export none
-}
-
-# This pseudo-protocol watches all interface up/down events.
-protocol device {
- scan time 10; # Scan interfaces every 10 seconds
-}
-
-# Static routes (again, there can be multiple instances, so that you
-# can disable/enable various groups of static routes on the fly).
-protocol static {
-# export all; # Default is export none
-# route 0.0.0.0/0 via 62.168.0.13;
-# route 10.0.0.0/8 reject;
-# route 192.168.0.0/16 reject;
-}
-
-
-#protocol rip {
-# disabled;
-# import all;
-# export all;
-# export filter test_filter;
-
-# port 1520;
-# period 7;
-# infinity 16;
-# garbage time 60;
-# interface "*" { mode broadcast; };
-# honor neighbor;
-# honor always;
-# honor never;
-# authentication none;
-#}
-
-
-#protocol ospf {
-# disabled;
-# import all;
-# export all;
-# export where source = RTS_STATIC;
-
-# area 0 {
-# interface "eth*" {
-# cost 10;
-# hello 3;
-# retransmit 2;
-# wait 5;
-# dead 20;
-# type broadcast;
-# authentication simple;
-# password "pass";
-# };
-# };
-#}
-
-
-#protocol bgp {
-# disabled;
-# import all;
-# export all;
-# export where source = RTS_STATIC;
-
-# local as 65000;
-# neighbor 192.168.1.1 as 65001;
-# multihop 20 via 192.168.2.1;
-
-# hold time 240;
-# startup hold time 240;
-# connect retry time 120;
-# keepalive time 80; # defaults to hold time / 3
-# start delay time 5; # How long do we wait before initial connect
-# error wait time 60, 300;# Minimum and maximum time we wait after an error (when consecutive
-# # errors occur, we increase the delay exponentially ...
-# error forget time 300; # ... until this timeout expires)
-# disable after error; # Disable the protocol automatically when an error occurs
-# next hop self; # Disable next hop processing and always advertise our local address as nexthop
-# source address 62.168.0.14; # What local address we use for the TCP connection
-# password "secret" # Password used for MD5 authentication
-# rr client; # I am a route reflector and the neighor is my client
-# rr cluster id 1.0.0.1 # Use this value for cluster id instead of my router id
-# };
-#}
+++ /dev/null
-#!/bin/sh /etc/rc.common
-# Copyright (C) 2010-2011 OpenWrt.org
-
-START=50
-
-SERVICE_DAEMONIZE=1
-SERVICE_WRITE_PID=1
-
-start() {
- service_start /usr/sbin/bird4 -d
-# ( SERVICE_MATCH_NAME=1 service_start /usr/sbin/bird4loop )
-}
-
-stop() {
-# ( SERVICE_MATCH_NAME=1 service_stop /usr/sbin/bird4loop )
- service_stop /usr/sbin/bird4
-}
-
-reload() {
- service_reload /usr/sbin/bird4
-}
+++ /dev/null
-#!/bin/sh
-
-BIRD=/usr/sbin/bird4
-
-$BIRD -p || return 1
-
-. /lib/functions.sh
-. /lib/functions/service.sh
-
-SERVICE_DAEMONIZE=1
-SERVICE_WRITE_PID=1
-
-sig_handler() {
- running=0
- service_stop $BIRD
-}
-
-running=1
-trap sig_handler INT
-trap sig_handler TERM
-while [ $running -gt 0 ]; do
- service_check $BIRD || service_start $BIRD -d "$@"
- sleep 3
-done
+++ /dev/null
-
-# THIS CONFIG FILE IS NOT A COMPLETE DOCUMENTATION
-# PLEASE LOOK IN THE BIRD DOCUMENTATION FOR MORE INFO
-
-# However, most of options used here are just for example
-# and will be removed in real-life configs.
-
-log syslog all;
-
-# Override router ID
-#router id 192.168.0.1;
-
-# Turn on global debugging of all protocols
-#debug protocols all;
-
-
-# Define a route filter...
-# filter test_filter {
-# if net ~ 10.0.0.0/16 then accept;
-# else reject;
-# }
-
-# The direct protocol automatically generates device routes to all network
-# interfaces. Can exist in as many instances as you wish if you want to
-# populate multiple routing tables with device routes. Because device routes
-# are handled by Linux kernel, this protocol is usually not needed.
-# protocol direct {
-# interface "*"; # Restrict network interfaces it works with
-# }
-
-# This pseudo-protocol performs synchronization between BIRD's routing
-# tables and the kernel. You can run multiple instances of the kernel
-# protocol and synchronize different kernel tables with different BIRD tables.
-protocol kernel {
-# learn; # Learn all alien routes from the kernel
-# persist; # Don't remove routes on bird shutdown
- scan time 20; # Scan kernel routing table every 20 seconds
-# import none; # Default is import all
-# export all; # Default is export none
-}
-
-# This pseudo-protocol watches all interface up/down events.
-protocol device {
- scan time 10; # Scan interfaces every 10 seconds
-}
-
-# Static routes (again, there can be multiple instances, so that you
-# can disable/enable various groups of static routes on the fly).
-protocol static {
-# export all; # Default is export none
-# route 0.0.0.0/0 via 62.168.0.13;
-# route 10.0.0.0/8 reject;
-# route 192.168.0.0/16 reject;
-}
-
-
-#protocol rip {
-# disabled;
-# import all;
-# export all;
-# export filter test_filter;
-
-# port 1520;
-# period 7;
-# infinity 16;
-# garbage time 60;
-# interface "*" { mode broadcast; };
-# honor neighbor;
-# honor always;
-# honor never;
-# authentication none;
-#}
-
-
-#protocol ospf {
-# disabled;
-# import all;
-# export all;
-# export where source = RTS_STATIC;
-
-# area 0 {
-# interface "eth*" {
-# cost 10;
-# hello 3;
-# retransmit 2;
-# wait 5;
-# dead 20;
-# type broadcast;
-# authentication simple;
-# password "pass";
-# };
-# };
-#}
-
-
-#protocol bgp {
-# disabled;
-# import all;
-# export all;
-# export where source = RTS_STATIC;
-
-# local as 65000;
-# neighbor 192.168.1.1 as 65001;
-# multihop 20 via 192.168.2.1;
-
-# hold time 240;
-# startup hold time 240;
-# connect retry time 120;
-# keepalive time 80; # defaults to hold time / 3
-# start delay time 5; # How long do we wait before initial connect
-# error wait time 60, 300;# Minimum and maximum time we wait after an error (when consecutive
-# # errors occur, we increase the delay exponentially ...
-# error forget time 300; # ... until this timeout expires)
-# disable after error; # Disable the protocol automatically when an error occurs
-# next hop self; # Disable next hop processing and always advertise our local address as nexthop
-# source address 62.168.0.14; # What local address we use for the TCP connection
-# password "secret" # Password used for MD5 authentication
-# rr client; # I am a route reflector and the neighor is my client
-# rr cluster id 1.0.0.1 # Use this value for cluster id instead of my router id
-# };
-#}
+++ /dev/null
-#!/bin/sh /etc/rc.common
-# Copyright (C) 2010-2011 OpenWrt.org
-
-START=50
-
-SERVICE_DAEMONIZE=1
-SERVICE_WRITE_PID=1
-
-start() {
- service_start /usr/sbin/bird6 -d
-# ( SERVICE_MATCH_NAME=1 service_start /usr/sbin/bird6loop )
-}
-
-stop() {
-# ( SERVICE_MATCH_NAME=1 service_stop /usr/sbin/bird6loop )
- service_stop /usr/sbin/bird6
-}
-
-reload() {
- service_reload /usr/sbin/bird6
-}
+++ /dev/null
-#!/bin/sh
-
-BIRD=/usr/sbin/bird6
-
-$BIRD -p || return 1
-
-. /lib/functions.sh
-. /lib/functions/service.sh
-
-SERVICE_DAEMONIZE=1
-SERVICE_WRITE_PID=1
-
-sig_handler() {
- running=0
- service_stop $BIRD
-}
-
-running=1
-trap sig_handler INT
-trap sig_handler TERM
-while [ $running -gt 0 ]; do
- service_check $BIRD || service_start $BIRD -d "$@"
- sleep 3
-done
+++ /dev/null
-diff --git a/sysdep/config.h b/sysdep/config.h
-index 03399bd..bc5eb77 100644
---- a/sysdep/config.h
-+++ b/sysdep/config.h
-@@ -46,11 +46,11 @@ typedef u16 word;
- # endif
- #else
- # ifdef DEBUGGING
--# define PATH_CONFIG "bird.conf"
--# define PATH_CONTROL_SOCKET "bird.ctl"
-+# define PATH_CONFIG "bird4.conf"
-+# define PATH_CONTROL_SOCKET "bird4.ctl"
- # else
--# define PATH_CONFIG PATH_CONFIG_DIR "/bird.conf"
--# define PATH_CONTROL_SOCKET PATH_CONTROL_SOCKET_DIR "/bird.ctl"
-+# define PATH_CONFIG PATH_CONFIG_DIR "/bird4.conf"
-+# define PATH_CONTROL_SOCKET PATH_CONTROL_SOCKET_DIR "/bird4.ctl"
- # endif
- #endif
-