From: Oliver Graute <oliver.graute@gmail.com>
To: ptxdist@pengutronix.de
Cc: Oliver Graute <oliver.graute@neuhaus.de>
Subject: [ptxdist] [PATCHv4] quagga: this patch adds quagga support to ptxdist
Date: Fri, 24 Jul 2015 11:00:21 +0200 [thread overview]
Message-ID: <1437728422-25140-1-git-send-email-oliver.graute@neuhaus.de> (raw)
Quagga is a routing software suite, providing implementations of
OSPFv2, OSPFv3, RIP v1 and v2, RIPng and BGP-4 for Unix platforms,
particularly FreeBSD, Linux, Solaris and NetBSD.
Signed-off-by: Oliver Graute <oliver.graute@neuhaus.de>
---
projectroot/etc/babeld.conf | 30 ++++++++++
projectroot/etc/bgpd.conf | 29 +++++++++
projectroot/etc/ospf6d.conf | 52 +++++++++++++++++
projectroot/etc/ospfd.conf | 13 +++++
projectroot/etc/ripd.conf | 24 ++++++++
projectroot/etc/ripngd.conf | 22 +++++++
projectroot/etc/vtysh.conf | 7 +++
projectroot/etc/zebra.conf | 25 ++++++++
rules/quagga.in | 76 ++++++++++++++++++++++++
rules/quagga.make | 136 +++++++++++++++++++++++++++++++++++++++++++
10 files changed, 414 insertions(+)
create mode 100644 projectroot/etc/babeld.conf
create mode 100644 projectroot/etc/bgpd.conf
create mode 100644 projectroot/etc/ospf6d.conf
create mode 100644 projectroot/etc/ospfd.conf
create mode 100644 projectroot/etc/ripd.conf
create mode 100644 projectroot/etc/ripngd.conf
create mode 100644 projectroot/etc/vtysh.conf
create mode 100644 projectroot/etc/zebra.conf
create mode 100644 rules/quagga.in
create mode 100644 rules/quagga.make
diff --git a/projectroot/etc/babeld.conf b/projectroot/etc/babeld.conf
new file mode 100644
index 0000000..a4924ec
--- /dev/null
+++ b/projectroot/etc/babeld.conf
@@ -0,0 +1,30 @@
+debug babel common
+!debug babel kernel
+!debug babel filter
+!debug babel timeout
+!debug babel interface
+!debug babel route
+!debug babel all
+
+router babel
+! network wlan0
+! network eth0
+! redistribute kernel
+! no redistribute static
+
+! The defaults are fine for a wireless interface
+
+!interface wlan0
+
+! A few optimisation tweaks are optional but recommended on a wired interface
+! Disable link quality estimation, enable split horizon processing, and
+! increase the hello and update intervals.
+
+!interface eth0
+! babel wired
+! babel split-horizon
+! babel hello-interval 12000
+! babel update-interval 36000
+
+! log file /var/log/quagga/babeld.log
+log stdout
diff --git a/projectroot/etc/bgpd.conf b/projectroot/etc/bgpd.conf
new file mode 100644
index 0000000..b6a8b6f
--- /dev/null
+++ b/projectroot/etc/bgpd.conf
@@ -0,0 +1,29 @@
+! -*- bgp -*-
+!
+! BGPd sample configuratin file
+!
+! $Id: bgpd.conf.sample,v 1.1 2002/12/13 20:15:29 paul Exp $
+!
+hostname bgpd
+password zebra
+!enable password please-set-at-here
+!
+!bgp mulitple-instance
+!
+router bgp 7675
+! bgp router-id 10.0.0.1
+! network 10.0.0.0/8
+! neighbor 10.0.0.2 remote-as 7675
+! neighbor 10.0.0.2 route-map set-nexthop out
+! neighbor 10.0.0.2 ebgp-multihop
+! neighbor 10.0.0.2 next-hop-self
+!
+! access-list all permit any
+!
+!route-map set-nexthop permit 10
+! match ip address all
+! set ip next-hop 10.0.0.1
+!
+!log file bgpd.log
+!
+log stdout
diff --git a/projectroot/etc/ospf6d.conf b/projectroot/etc/ospf6d.conf
new file mode 100644
index 0000000..0a6ddb7
--- /dev/null
+++ b/projectroot/etc/ospf6d.conf
@@ -0,0 +1,52 @@
+!
+! Zebra configuration saved from vty
+! 2003/11/28 00:49:49
+!
+hostname ospf6d@plant
+password zebra
+log stdout
+service advanced-vty
+!
+debug ospf6 neighbor state
+!
+interface fxp0
+ ipv6 ospf6 cost 1
+ ipv6 ospf6 hello-interval 10
+ ipv6 ospf6 dead-interval 40
+ ipv6 ospf6 retransmit-interval 5
+ ipv6 ospf6 priority 0
+ ipv6 ospf6 transmit-delay 1
+ ipv6 ospf6 instance-id 0
+!
+interface lo0
+ ipv6 ospf6 cost 1
+ ipv6 ospf6 hello-interval 10
+ ipv6 ospf6 dead-interval 40
+ ipv6 ospf6 retransmit-interval 5
+ ipv6 ospf6 priority 1
+ ipv6 ospf6 transmit-delay 1
+ ipv6 ospf6 instance-id 0
+!
+router ospf6
+ router-id 255.1.1.1
+ redistribute static route-map static-ospf6
+ interface fxp0 area 0.0.0.0
+!
+access-list access4 permit 127.0.0.1/32
+!
+ipv6 access-list access6 permit 3ffe:501::/32
+ipv6 access-list access6 permit 2001:200::/48
+ipv6 access-list access6 permit ::1/128
+!
+ipv6 prefix-list test-prefix seq 1000 deny any
+!
+route-map static-ospf6 permit 10
+ match ipv6 address prefix-list test-prefix
+ set metric-type type-2
+ set metric 2000
+!
+line vty
+ access-class access4
+ ipv6 access-class access6
+ exec-timeout 0 0
+!
diff --git a/projectroot/etc/ospfd.conf b/projectroot/etc/ospfd.conf
new file mode 100644
index 0000000..0e8ac67
--- /dev/null
+++ b/projectroot/etc/ospfd.conf
@@ -0,0 +1,13 @@
+! -*- ospf -*-
+!
+! OSPFd sample configuration file
+!
+!
+hostname ospfd
+password zebra
+!enable password please-set-at-here
+!
+!router ospf
+! network 192.168.1.0/24 area 0
+!
+log stdout
diff --git a/projectroot/etc/ripd.conf b/projectroot/etc/ripd.conf
new file mode 100644
index 0000000..2902ff9
--- /dev/null
+++ b/projectroot/etc/ripd.conf
@@ -0,0 +1,24 @@
+! -*- rip -*-
+!
+! RIPd sample configuration file
+!
+! $Id: ripd.conf.sample,v 1.1 2002/12/13 20:15:30 paul Exp $
+!
+hostname ripd
+password zebra
+!
+! debug rip events
+! debug rip packet
+!
+router rip
+! network 11.0.0.0/8
+! network eth0
+! route 10.0.0.0/8
+! distribute-list private-only in eth0
+!
+!access-list private-only permit 10.0.0.0/8
+!access-list private-only deny any
+!
+!log file ripd.log
+!
+log stdout
diff --git a/projectroot/etc/ripngd.conf b/projectroot/etc/ripngd.conf
new file mode 100644
index 0000000..ad673e5
--- /dev/null
+++ b/projectroot/etc/ripngd.conf
@@ -0,0 +1,22 @@
+! -*- rip -*-
+!
+! RIPngd sample configuration file
+!
+! $Id: ripngd.conf.sample,v 1.1 2002/12/13 20:15:30 paul Exp $
+!
+hostname ripngd
+password zebra
+!
+! debug ripng events
+! debug ripng packet
+!
+!
+router ripng
+! network sit1
+! route 3ffe:506::0/32
+! distribute-list local-only out sit1
+!
+!ipv6 access-list local-only permit 3ffe:506::0/32
+!ipv6 access-list local-only deny any
+!
+log stdout
diff --git a/projectroot/etc/vtysh.conf b/projectroot/etc/vtysh.conf
new file mode 100644
index 0000000..4e0a2be
--- /dev/null
+++ b/projectroot/etc/vtysh.conf
@@ -0,0 +1,7 @@
+!
+! Sample configuration file for vtysh.
+!
+!service integrated-vtysh-config
+!hostname quagga-router
+!username root nopassword
+!
diff --git a/projectroot/etc/zebra.conf b/projectroot/etc/zebra.conf
new file mode 100644
index 0000000..a5d0732
--- /dev/null
+++ b/projectroot/etc/zebra.conf
@@ -0,0 +1,25 @@
+! -*- zebra -*-
+!
+! zebra sample configuration file
+!
+! $Id: zebra.conf.sample,v 1.1 2002/12/13 20:15:30 paul Exp $
+!
+hostname Router
+password zebra
+enable password zebra
+!
+! Interface's description.
+!
+!interface lo
+! description test of desc.
+!
+!interface sit0
+! multicast
+
+!
+! Static default route sample.
+!
+!ip route 0.0.0.0/0 203.181.89.241
+!
+
+!log file zebra.log
diff --git a/rules/quagga.in b/rules/quagga.in
new file mode 100644
index 0000000..abca344
--- /dev/null
+++ b/rules/quagga.in
@@ -0,0 +1,76 @@
+## SECTION=networking
+
+menuconfig QUAGGA
+ tristate
+ prompt "quagga"
+ help
+ Quagga Routing Suite. Quagga is a routing software suite, providing
+ implementations of OSPFv2, OSPFv3, RIP v1 and v2, RIPng and BGP-4
+ for Unix platforms, particularly FreeBSD, Linux, Solaris and NetBSD.
+ Quagga is a fork of GNU Zebra which was developed by Kunihiro
+ Ishiguro. The Quagga tree aims to build a more involved community
+ around Quagga than the current centralised model of GNU Zebra.
+
+config QUAGGA_VTYSH
+ bool
+ default y
+ prompt "Install vtysh"
+ help
+ Disable the vtysh component if you do not need it
+
+config QUAGGA_ZEBRA
+ bool
+ default y
+ prompt "Install zebra"
+ help
+ Disable the zebra component if you do not need it
+
+config QUAGGA_BGPD
+ bool
+ default y
+ prompt "Install bgpd"
+ help
+ Disable the bgpd component if you do not need it
+
+config QUAGGA_RIPD
+ bool
+ default y
+ prompt "Install ripd"
+ help
+ Disable the ripd component if you do not need it
+
+config QUAGGA_RIPNGD
+ bool
+ default y
+ prompt "Install ripngd"
+ help
+ Disable the ripngd component if you do not need it
+
+config QUAGGA_OSPFD
+ bool
+ default y
+ prompt "Install ospfd"
+ help
+ Disable the ospfd component if you do not need it
+
+config QUAGGA_OSPF6D
+ bool
+ default y
+ prompt "Install ospf6d"
+ help
+ Disable the ospf6d component if you do not need it
+
+config QUAGGA_BABELD
+ bool
+ default y
+ prompt "Install babeld"
+ help
+ Disable the babeld component if you do not need it
+
+config QUAGGA_WATCHQUAGGA
+ bool
+ default y
+ prompt "Install watchquagga"
+ help
+ Disable the watchquagga component if you do not need it
+
diff --git a/rules/quagga.make b/rules/quagga.make
new file mode 100644
index 0000000..c9aad91
--- /dev/null
+++ b/rules/quagga.make
@@ -0,0 +1,136 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2015 Dr. Neuhaus Telekommunikation GmbH, Hamburg Germany, Oliver Graute <oliver.graute@neuhaus.de>
+#
+# See CREDITS for details about who has contributed to this project.
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+PACKAGES-$(PTXCONF_QUAGGA) += quagga
+
+#
+# Paths and names
+#
+QUAGGA_VERSION := 0.99.23
+QUAGGA_MD5 := d17145e62b6ea14f0f13bb63f59e5166
+QUAGGA := quagga-$(QUAGGA_VERSION)
+QUAGGA_SUFFIX := tar.gz
+QUAGGA_URL := http://download.savannah.gnu.org/releases/quagga/$(QUAGGA).$(QUAGGA_SUFFIX)
+QUAGGA_SOURCE := $(SRCDIR)/$(QUAGGA).$(QUAGGA_SUFFIX)
+QUAGGA_DIR := $(BUILDDIR)/$(QUAGGA)
+QUAGGA_LICENSE := GPLv2
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+#
+# autoconf
+#
+QUAGGA_CONF_TOOL := autoconf
+QUAGGA_CONF_OPT := \
+ $(CROSS_AUTOCONF_USR) \
+ $(GLOBAL_LARGE_FILE_OPTION) \
+ $(GLOBAL_IPV6_OPTION) \
+ --$(call ptx/endis, PTXCONF_VTYSH)-vtysh \
+ --$(call ptx/endis, PTXCONF_ZEBRA)-zebra \
+ --$(call ptx/endis, PTXCONF_BGPD)-bgpd \
+ --$(call ptx/endis, PTXCONF_RIPD)-ripd \
+ --$(call ptx/endis, PTXCONF_RIPNGD)-ripngd \
+ --$(call ptx/endis, PTXCONF_OSPFD)-ospfd \
+ --$(call ptx/endis, PTXCONF_OSPF6D)-ospf6d \
+ --$(call ptx/endis, PTXCONF_BABELD)-babeld \
+ --$(call ptx/endis, PTXCONF_WATCHQUAGGA)-watchquagga \
+ --disable-doc \
+ --enable-isisd \
+ --enable-solaris \
+ --disable-bgp-announce \
+ --enable-netlink \
+ --enable-snmp=agentx \
+ --enable-tcp-zebra \
+ --disable-opaque-lsa \
+ --disable-ospfapi \
+ --disable-ospfclient \
+ --disable-ospf-te \
+ --enable-multipath=1 \
+ --enable-user=user \
+ --enable-group=group \
+ --enable-vty-group=no \
+ --enable-configfile-mask=-600 \
+ --enable-logfile-mask=-600 \
+ --disable-rtadv \
+ --enable-irdp \
+ --enable-isis-topology \
+ --disable-capabilities \
+ --disable-rusage \
+ --enable-gcc-ultra-verbose \
+ --enable-linux24-tcp-md5 \
+ --enable-gcc-rdynamic \
+ --disable-backtrace \
+ --disable-time-check \
+ --enable-pcreposix \
+ --enable-fpm \
+ --disable-pie
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/quagga.targetinstall:
+ @$(call targetinfo)
+
+ @$(call install_init, quagga)
+ @$(call install_fixup, quagga,PRIORITY,optional)
+ @$(call install_fixup, quagga,SECTION,base)
+ @$(call install_fixup, quagga,AUTHOR,"<oliver.graute@neuhaus.de>")
+ @$(call install_fixup, quagga,DESCRIPTION,missing)
+ @$(call install_lib, quagga, 0, 0, 0644, libzebra)
+
+ifdef PTXCONF_RIPD
+ @$(call install_copy, quagga, 0, 0, 0755, -, /usr/sbin/ripd)
+ @$(call install_alternative, quagga, 0, 0, 0644, /etc/ripd.conf)
+endif
+ifdef PTXCONF_RIPNGD
+ @$(call install_copy, quagga, 0, 0, 0755, -, /usr/sbin/ripngd)
+ @$(call install_alternative, quagga, 0, 0, 0644, /etc/ripngd.conf)
+endif
+ifdef PTXCONF_BABELD
+ @$(call install_copy, quagga, 0, 0, 0755, -, /usr/sbin/babeld)
+ @$(call install_alternative, quagga, 0, 0, 0644, /etc/babeld.conf)
+endif
+ifdef PTXCONF_BGPD
+ @$(call install_copy, quagga, 0, 0, 0755, -, /usr/sbin/bgpd)
+ @$(call install_alternative, quagga, 0, 0, 0644, /etc/bgpd.conf)
+endif
+ifdef PTXCONF_ZEBRA
+ @$(call install_copy, quagga, 0, 0, 0755, -, /usr/sbin/zebra)
+ @$(call install_alternative, quagga, 0, 0, 0644, /etc/zebra.conf)
+endif
+ifdef PTXCONF_OSPFD
+ @$(call install_copy, quagga, 0, 0, 0755, -, /usr/sbin/ospfd)
+ @$(call install_copy, quagga, 0, 0, 0755, -, /usr/sbin/ospfclient)
+ @$(call install_alternative, quagga, 0, 0, 0644, /etc/ospfd.conf)
+endif
+ifdef PTXCONF_OSPF6D
+ @$(call install_copy, quagga, 0, 0, 0755, -, /usr/sbin/ospf6d)
+ @$(call install_alternative, quagga, 0, 0, 0644, /etc/ospf6d.conf)
+endif
+ifdef PTXCONF_WATCHQUAGGA
+ @$(call install_copy, quagga, 0, 0, 0755, -, /usr/sbin/watchquagga)
+endif
+ifdef PTXCONF_VTYSH
+ @$(call install_copy, quagga, 0, 0, 0755, -, /usr/sbin/vtysh)
+ @$(call install_alternative, quagga, 0, 0, 0644, /etc/vtysh.conf)
+endif
+
+
+ @$(call install_finish, quagga)
+
+ @$(call touch)
+
+# vim: syntax=make
--
1.7.9.5
--
ptxdist mailing list
ptxdist@pengutronix.de
reply other threads:[~2015-07-24 7:01 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1437728422-25140-1-git-send-email-oliver.graute@neuhaus.de \
--to=oliver.graute@gmail.com \
--cc=oliver.graute@neuhaus.de \
--cc=ptxdist@pengutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox