mirror of
https://git.FreeBSD.org/ports.git
synced 2025-01-30 10:38:37 +00:00
Add a quagga version back at 0.99.23.1. 0.99.24 seems to have some problems
with OSPFv3 on 8.4. Sponsored by: Absolight
This commit is contained in:
parent
75c88882b7
commit
8445a2820c
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=381584
@ -970,6 +970,7 @@
|
||||
SUBDIR += qt5-network
|
||||
SUBDIR += qtweetlib
|
||||
SUBDIR += quagga
|
||||
SUBDIR += quagga23
|
||||
SUBDIR += queso
|
||||
SUBDIR += quiterss
|
||||
SUBDIR += quoted
|
||||
|
100
net/quagga23/Makefile
Normal file
100
net/quagga23/Makefile
Normal file
@ -0,0 +1,100 @@
|
||||
# Created by: Bruce M Simpson <bms@FreeBSD.org>
|
||||
# $FreeBSD$
|
||||
|
||||
PORTNAME= quagga
|
||||
PORTVERSION= 0.99.23.1
|
||||
PORTREVISION= 4
|
||||
CATEGORIES= net ipv6
|
||||
MASTER_SITES= SAVANNAH
|
||||
PKGNAMESUFFIX= 23
|
||||
|
||||
MAINTAINER= mat@FreeBSD.org
|
||||
COMMENT= Free RIPv1, RIPv2, OSPFv2, BGP4, IS-IS route software
|
||||
|
||||
LICENSE= GPLv2
|
||||
|
||||
BUILD_DEPENDS= gawk:${PORTSDIR}/lang/gawk
|
||||
|
||||
CONFLICTS= openbgpd-[0-9]* openospfd-[0-9]* zebra-0* quagga-re-[0-9]*
|
||||
|
||||
GNU_CONFIGURE= yes
|
||||
CONFIGURE_ARGS= --enable-exampledir=${PREFIX}/share/examples/quagga
|
||||
INSTALL_TARGET= install-strip
|
||||
USES= gmake libtool makeinfo perl5 readline compiler:c11 cpe
|
||||
USE_LDCONFIG= yes
|
||||
USE_PERL5= build
|
||||
|
||||
INFO= quagga
|
||||
|
||||
OPTIONS_DEFINE= ISISD PAM OSPF_OPAQUE_LSA RTADV SNMP TCPSOCKETS DLMALLOC \
|
||||
NO_BGP_ANNOUNCE OSPF_NEXTHOP
|
||||
OPTIONS_SUB= yes
|
||||
|
||||
ISISD_DESC= Enable experimental ISIS daemon
|
||||
PAM_DESC= PAM authentication for vtysh
|
||||
OSPF_OPAQUE_LSA_DESC= OSPF Opaque-LSA support (RFC2370)
|
||||
RTADV_DESC= IPv6 Router Advertisements
|
||||
TCPSOCKETS_DESC= Use TCP/IP sockets for protocol daemons
|
||||
DLMALLOC_DESC= Use dlmalloc (makes bgpd much faster)
|
||||
NO_BGP_ANNOUNCE_DESC= Turn off BGP route announcement
|
||||
OSPF_NEXTHOP_DESC= Set ip next-hop in OSPF route maps
|
||||
|
||||
ENABLE_USER?= quagga
|
||||
ENABLE_GROUP?= quagga
|
||||
|
||||
USERS= ${ENABLE_USER}
|
||||
GROUPS= ${ENABLE_GROUP}
|
||||
|
||||
SYSCONF_DIR?= ${ETCDIR}
|
||||
LOCALSTATE_DIR?=/var/run/quagga
|
||||
|
||||
CONFIGURE_ARGS= --enable-user=${ENABLE_USER} \
|
||||
--enable-group=${ENABLE_GROUP} \
|
||||
--sysconfdir=${SYSCONF_DIR} \
|
||||
--localstatedir=${LOCALSTATE_DIR} \
|
||||
--enable-vtysh
|
||||
|
||||
.if defined(ENABLE_VTY_GROUP)
|
||||
CONFIGURE_ARGS+=--enable-vty-group=${ENABLE_VTY_GROUP}
|
||||
.endif
|
||||
|
||||
ISISD_CONFIGURE_ENABLE= isisd
|
||||
PAM_CONFIGURE_WITH= libpam
|
||||
OSPF_OPAQUE_LSA_CONFIGURE_ENABLE= opaque-lsa
|
||||
RTADV_CONFIGURE_ENABLE= rtadv
|
||||
SNMP_CONFIGURE_ENABLE= snmp
|
||||
SNMP_LIB_DEPENDS= libnetsnmp.so:${PORTSDIR}/net-mgmt/net-snmp
|
||||
TCPSOCKETS_CONFIGURE_ENABLE= tcp-zebra
|
||||
DLMALLOC_LIB_DEPENDS= libdlmalloc.so:${PORTSDIR}/devel/libdlmalloc
|
||||
DLMALLOC_LIBS= -L${LOCALBASE}/lib -ldlmalloc
|
||||
NO_BGP_ANNOUNCE_CONFIGURE_ON= --disable-bgp-announce
|
||||
NO_BGP_ANNOUNCE_CONFIGURE_OFF= --enable-bgp-announce
|
||||
OSPF_NEXTHOP_EXTRA_PATCH= ${PATCHDIR}/extra-patch-ospf-nexthop
|
||||
|
||||
USE_RC_SUBR= quagga watchquagga
|
||||
|
||||
SUB_LIST+= LOCALSTATE_DIR=${LOCALSTATE_DIR} \
|
||||
SYSCONF_DIR=${SYSCONF_DIR}
|
||||
|
||||
PLIST_SUB+= LOCALSTATE_DIR=${LOCALSTATE_DIR} \
|
||||
SYSCONF_DIR=${SYSCONF_DIR} \
|
||||
ENABLE_USER=${ENABLE_USER} \
|
||||
ENABLE_GROUP=${ENABLE_GROUP}
|
||||
|
||||
pre-everything::
|
||||
@${ECHO} "============================================================="
|
||||
@${ECHO}
|
||||
@${ECHO} "You can build ${PORTNAME} with the following options:"
|
||||
@${ECHO}
|
||||
@${ECHO} "ENABLE_USER Specify user to run Quagga suite as"
|
||||
@${ECHO} "ENABLE_GROUP Specify group to run Quagga suite as"
|
||||
@${ECHO} "ENABLE_VTY_GROUP Specify group for vty socket ownership"
|
||||
@${ECHO} "SYSCONF_DIR Specify directory for Quagga configuration files"
|
||||
@${ECHO} "LOCALSTATE_DIR Specify directory for Quagga runtime files"
|
||||
|
||||
post-install:
|
||||
${MKDIR} ${STAGEDIR}${LOCALSTATE_DIR} ${STAGEDIR}${SYSCONF_DIR} \
|
||||
${STAGEDIR}${EXAMPLESDIR}
|
||||
@${MV} ${STAGEDIR}${ETCDIR}/* ${STAGEDIR}${EXAMPLESDIR}
|
||||
|
||||
.include <bsd.port.mk>
|
2
net/quagga23/distinfo
Normal file
2
net/quagga23/distinfo
Normal file
@ -0,0 +1,2 @@
|
||||
SHA256 (quagga-0.99.23.1.tar.gz) = 3abf2046bc27539ce2d17c238e06c8fd0d479a8e402580c6aa455808bd48e004
|
||||
SIZE (quagga-0.99.23.1.tar.gz) = 2526612
|
171
net/quagga23/files/extra-patch-ospf-nexthop
Normal file
171
net/quagga23/files/extra-patch-ospf-nexthop
Normal file
@ -0,0 +1,171 @@
|
||||
--- ospfd/ospf_asbr.c.orig 2014-08-25 16:56:53 UTC
|
||||
+++ ospfd/ospf_asbr.c
|
||||
@@ -122,6 +122,7 @@
|
||||
{
|
||||
values->metric = -1;
|
||||
values->metric_type = -1;
|
||||
+ values->nexthop.s_addr = -1;
|
||||
}
|
||||
|
||||
int
|
||||
--- ospfd/ospf_asbr.h.orig 2014-08-25 16:56:53 UTC
|
||||
+++ ospfd/ospf_asbr.h
|
||||
@@ -27,6 +27,7 @@
|
||||
{
|
||||
int32_t metric;
|
||||
int32_t metric_type;
|
||||
+ struct in_addr nexthop;
|
||||
};
|
||||
|
||||
/* Redistributed external information. */
|
||||
@@ -50,6 +51,7 @@
|
||||
struct route_map_set_values route_map_set;
|
||||
#define ROUTEMAP_METRIC(E) (E)->route_map_set.metric
|
||||
#define ROUTEMAP_METRIC_TYPE(E) (E)->route_map_set.metric_type
|
||||
+#define ROUTEMAP_NEXTHOP(E) (E)->route_map_set.nexthop
|
||||
};
|
||||
|
||||
#define OSPF_ASBR_CHECK_DELAY 30
|
||||
--- ospfd/ospf_lsa.c.orig 2014-08-25 16:56:53 UTC
|
||||
+++ ospfd/ospf_lsa.c
|
||||
@@ -1633,7 +1633,8 @@
|
||||
stream_put_ospf_metric (s, mvalue);
|
||||
|
||||
/* Get forwarding address to nexthop if on the Connection List, else 0. */
|
||||
- fwd_addr = ospf_external_lsa_nexthop_get (ospf, ei->nexthop);
|
||||
+ fwd_addr = (ei->route_map_set.nexthop.s_addr != -1) ?
|
||||
+ ROUTEMAP_NEXTHOP (ei) : ospf_external_lsa_nexthop_get (ospf, ei->nexthop);
|
||||
|
||||
/* Put forwarding address. */
|
||||
stream_put_ipv4 (s, fwd_addr.s_addr);
|
||||
--- ospfd/ospf_routemap.c.orig 2014-08-25 16:56:53 UTC
|
||||
+++ ospfd/ospf_routemap.c
|
||||
@@ -531,6 +531,62 @@
|
||||
route_set_metric_type_free,
|
||||
};
|
||||
|
||||
+/* `set ip next-hop IP_ADDRESS' */
|
||||
+/* Set nexthop to object. */
|
||||
+static route_map_result_t
|
||||
+route_set_ip_nexthop (void *rule, struct prefix *prefix,
|
||||
+ route_map_object_t type, void *object)
|
||||
+{
|
||||
+ struct in_addr *address;
|
||||
+ struct external_info *ei;
|
||||
+
|
||||
+ if (type == RMAP_OSPF)
|
||||
+ {
|
||||
+ /* Fetch routemap's rule information. */
|
||||
+ address = rule;
|
||||
+ ei = object;
|
||||
+
|
||||
+ /* Set metric out value. */
|
||||
+ ei->route_map_set.nexthop = *address;
|
||||
+ }
|
||||
+ return RMAP_OKAY;
|
||||
+}
|
||||
+
|
||||
+/* set ip next-hop compilation. */
|
||||
+static void *
|
||||
+route_set_ip_nexthop_compile (const char *arg)
|
||||
+{
|
||||
+ struct in_addr *address = NULL;
|
||||
+ int ret;
|
||||
+
|
||||
+ address = XMALLOC (MTYPE_ROUTE_MAP_COMPILED, sizeof (struct in_addr));
|
||||
+ ret = inet_aton (arg, address);
|
||||
+
|
||||
+ if (ret == 0)
|
||||
+ {
|
||||
+ XFREE (MTYPE_ROUTE_MAP_COMPILED, address);
|
||||
+ return NULL;
|
||||
+ }
|
||||
+
|
||||
+ return address;
|
||||
+}
|
||||
+
|
||||
+/* Free route map's compiled `set ip next-hop' value. */
|
||||
+static void
|
||||
+route_set_ip_nexthop_free (void *rule)
|
||||
+{
|
||||
+ XFREE (MTYPE_ROUTE_MAP_COMPILED, rule);
|
||||
+}
|
||||
+
|
||||
+/* Set ip next-hop rule structure. */
|
||||
+struct route_map_rule_cmd route_set_ip_nexthop_cmd =
|
||||
+{
|
||||
+ "ip next-hop",
|
||||
+ route_set_ip_nexthop,
|
||||
+ route_set_ip_nexthop_compile,
|
||||
+ route_set_ip_nexthop_free,
|
||||
+};
|
||||
+
|
||||
DEFUN (match_ip_nexthop,
|
||||
match_ip_nexthop_cmd,
|
||||
"match ip next-hop (<1-199>|<1300-2699>|WORD)",
|
||||
@@ -785,6 +841,49 @@
|
||||
"OSPF[6] external type 1 metric\n"
|
||||
"OSPF[6] external type 2 metric\n")
|
||||
|
||||
+DEFUN (set_ip_nexthop,
|
||||
+ set_ip_nexthop_cmd,
|
||||
+ "set ip next-hop A.B.C.D",
|
||||
+ SET_STR
|
||||
+ IP_STR
|
||||
+ "Next hop address\n"
|
||||
+ "IP address of next hop\n")
|
||||
+{
|
||||
+ union sockunion su;
|
||||
+ int ret;
|
||||
+
|
||||
+ ret = str2sockunion (argv[0], &su);
|
||||
+ if (ret < 0)
|
||||
+ {
|
||||
+ vty_out (vty, "%% Malformed Next-hop address%s", VTY_NEWLINE);
|
||||
+ return CMD_WARNING;
|
||||
+ }
|
||||
+
|
||||
+ return ospf_route_set_add (vty, vty->index, "ip next-hop", argv[0]);
|
||||
+}
|
||||
+
|
||||
+DEFUN (no_set_ip_nexthop,
|
||||
+ no_set_ip_nexthop_cmd,
|
||||
+ "no set ip next-hop",
|
||||
+ NO_STR
|
||||
+ SET_STR
|
||||
+ "Next hop address\n")
|
||||
+{
|
||||
+ if (argc == 0)
|
||||
+ return ospf_route_set_delete (vty, vty->index, "ip next-hop", NULL);
|
||||
+
|
||||
+ return ospf_route_set_delete (vty, vty->index, "ip next-hop", argv[0]);
|
||||
+}
|
||||
+
|
||||
+ALIAS (no_set_ip_nexthop,
|
||||
+ no_set_ip_nexthop_val_cmd,
|
||||
+ "no set ip next-hop A.B.C.D",
|
||||
+ NO_STR
|
||||
+ SET_STR
|
||||
+ IP_STR
|
||||
+ "Next hop address\n"
|
||||
+ "IP address of next hop\n")
|
||||
+
|
||||
/* Route-map init */
|
||||
void
|
||||
ospf_route_map_init (void)
|
||||
@@ -804,6 +903,7 @@
|
||||
|
||||
route_map_install_set (&route_set_metric_cmd);
|
||||
route_map_install_set (&route_set_metric_type_cmd);
|
||||
+ route_map_install_set (&route_set_ip_nexthop_cmd);
|
||||
|
||||
install_element (RMAP_NODE, &match_ip_nexthop_cmd);
|
||||
install_element (RMAP_NODE, &no_match_ip_nexthop_cmd);
|
||||
@@ -827,4 +927,7 @@
|
||||
install_element (RMAP_NODE, &set_metric_type_cmd);
|
||||
install_element (RMAP_NODE, &no_set_metric_type_cmd);
|
||||
install_element (RMAP_NODE, &no_set_metric_type_val_cmd);
|
||||
+ install_element (RMAP_NODE, &set_ip_nexthop_cmd);
|
||||
+ install_element (RMAP_NODE, &no_set_ip_nexthop_cmd);
|
||||
+ install_element (RMAP_NODE, &no_set_ip_nexthop_val_cmd);
|
||||
}
|
11
net/quagga23/files/patch-configure
Normal file
11
net/quagga23/files/patch-configure
Normal file
@ -0,0 +1,11 @@
|
||||
--- configure.orig 2014-08-25 17:02:06 UTC
|
||||
+++ configure
|
||||
@@ -18158,7 +18158,7 @@ fi
|
||||
|
||||
|
||||
|
||||
-if test "${enable_snmp}" != ""; then
|
||||
+if test "x${enable_snmp}" != "xno"; then
|
||||
if test -n "$ac_tool_prefix"; then
|
||||
# Extract the first word of "${ac_tool_prefix}net-snmp-config", so it can be a program name with args.
|
||||
set dummy ${ac_tool_prefix}net-snmp-config; ac_word=$2
|
21
net/quagga23/files/patch-doc__bgpd.8
Normal file
21
net/quagga23/files/patch-doc__bgpd.8
Normal file
@ -0,0 +1,21 @@
|
||||
--- doc/bgpd.8.orig 2014-08-25 16:56:53 UTC
|
||||
+++ doc/bgpd.8
|
||||
@@ -28,6 +28,8 @@
|
||||
] [
|
||||
.B \-g
|
||||
.I group
|
||||
+] [
|
||||
+.B \--no_kernel
|
||||
]
|
||||
.SH DESCRIPTION
|
||||
.B bgpd
|
||||
@@ -76,6 +78,9 @@
|
||||
.TP
|
||||
\fB\-v\fR, \fB\-\-version\fR
|
||||
Print the version and exit.
|
||||
+.TP
|
||||
+\fB\--no_kernel\fR
|
||||
+Prevents route updates to be submitted to the kernel.
|
||||
.SH FILES
|
||||
.TP
|
||||
.BI /usr/local/sbin/bgpd
|
12
net/quagga23/files/patch-lib__zebra.h
Normal file
12
net/quagga23/files/patch-lib__zebra.h
Normal file
@ -0,0 +1,12 @@
|
||||
--- lib/zebra.h.orig 2014-08-25 16:56:53 UTC
|
||||
+++ lib/zebra.h
|
||||
@@ -358,7 +358,8 @@
|
||||
* OpenBSD: network byte order, apart from older versions which are as per
|
||||
* *BSD
|
||||
*/
|
||||
-#if defined(__NetBSD__) || defined(__FreeBSD__) \
|
||||
+#if defined(__NetBSD__) \
|
||||
+ || (defined(__FreeBSD__) && (__FreeBSD_version < 1100030)) \
|
||||
|| (defined(__OpenBSD__) && (OpenBSD < 200311)) \
|
||||
|| (defined(__APPLE__)) \
|
||||
|| (defined(SUNOS_5) && defined(WORDS_BIGENDIAN))
|
11
net/quagga23/files/patch-vtysh__extract.pl.in
Normal file
11
net/quagga23/files/patch-vtysh__extract.pl.in
Normal file
@ -0,0 +1,11 @@
|
||||
--- vtysh/extract.pl.in.orig 2014-08-25 16:56:53 UTC
|
||||
+++ vtysh/extract.pl.in
|
||||
@@ -63,7 +63,7 @@
|
||||
foreach (@ARGV) {
|
||||
$file = $_;
|
||||
|
||||
- open (FH, "@CPP@ -DHAVE_CONFIG_H -DVTYSH_EXTRACT_PL -DHAVE_IPV6 -I@top_builddir@ -I@srcdir@/ -I@srcdir@/.. -I@top_srcdir@/lib -I@top_builddir@/lib -I@top_srcdir@/isisd/topology @CPPFLAGS@ $file |");
|
||||
+ open (FH, "@CPP@ -DHAVE_CONFIG_H -DVTYSH_EXTRACT_PL -DHAVE_IPV6 -I@top_builddir@ -I@srcdir@/ -I@srcdir@/.. -I@top_srcdir@/lib -I@top_builddir@/lib -I/usr/local/include -I@top_srcdir@/isisd/topology @CPPFLAGS@ $file |");
|
||||
local $/; undef $/;
|
||||
$line = <FH>;
|
||||
close (FH);
|
148
net/quagga23/files/quagga.in
Normal file
148
net/quagga23/files/quagga.in
Normal file
@ -0,0 +1,148 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# $FreeBSD$
|
||||
#
|
||||
|
||||
# PROVIDE: quagga
|
||||
# REQUIRE: netif routing
|
||||
# KEYWORD: nojail shutdown
|
||||
|
||||
# Add the following line to /etc/rc.conf to enable quagga:
|
||||
# quagga_enable="YES"
|
||||
#
|
||||
# You may also wish to use the following variables to fine-tune startup:
|
||||
# quagga_flags=""
|
||||
# quagga_daemons="zebra ripd ripngd ospfd ospf6d bgpd isisd"
|
||||
# quagga_vysh_boot="YES"
|
||||
# Per daemon tuning may be done with daemon_name_flags
|
||||
# zebra_flags="-P 0"
|
||||
# bgpd_flags="-nrP 0" and so on
|
||||
# If you want to give the routing deamons a chance to catchup before
|
||||
# continueing, set quagga_wait_for to a "default" or certain prefix.
|
||||
# quagga_wait_for="default"
|
||||
# Set the time limit for the wait.
|
||||
# quagga_wait_seconds="90"
|
||||
#
|
||||
# If the quagga daemons require additional shared libraries to start,
|
||||
# use the following variable to run ldconfig(8) in advance:
|
||||
# quagga_extralibs_path="/usr/local/lib ..."
|
||||
#
|
||||
|
||||
. /etc/rc.subr
|
||||
|
||||
name=quagga
|
||||
rcvar=quagga_enable
|
||||
|
||||
start_postcmd=start_postcmd
|
||||
stop_postcmd="rm -f $pidfile"
|
||||
configtest_cmd=check_config
|
||||
extra_commands=configtest
|
||||
command_args="-d"
|
||||
|
||||
load_rc_config $name
|
||||
|
||||
quagga_enable=${quagga_enable:-"NO"}
|
||||
quagga_flags=${quagga_flags:-""}
|
||||
quagga_daemons=${quagga_daemons:-"zebra ripd ripngd ospfd ospf6d bgpd isisd"}
|
||||
quagga_vtysh_boot=${quagga_vtysh_boot:-"NO"}
|
||||
quagga_wait_for=${quagga_wait_for:-""}
|
||||
quagga_wait_seconds=${quagga_wait_seconds:-"90"}
|
||||
|
||||
check_config()
|
||||
{
|
||||
echo "Checking $daemon.conf"
|
||||
$command $daemon_flags -C
|
||||
result=$?
|
||||
if [ "$result" -eq "0" ]; then
|
||||
echo "OK"
|
||||
else
|
||||
echo "FAILED"
|
||||
exit
|
||||
fi
|
||||
}
|
||||
|
||||
start_postcmd()
|
||||
{
|
||||
local waited_for
|
||||
waited_for=0
|
||||
# Wait only when last daemon has started.
|
||||
if [ "${quagga_daemons}" = "${quagga_daemons% ${name}}" ]; then
|
||||
return;
|
||||
fi
|
||||
if [ -n "${quagga_wait_for}" ]; then
|
||||
echo Waiting for ${quagga_wait_for} route...
|
||||
while [ ${waited_for} -lt ${quagga_wait_seconds} ]; do
|
||||
/sbin/route -n get ${quagga_wait_for} >/dev/null 2>&1 && break;
|
||||
waited_for=$((${waited_for}+1))
|
||||
sleep 1;
|
||||
done
|
||||
[ ${waited_for} -lt ${quagga_wait_seconds} ] || echo Giving up...
|
||||
fi
|
||||
}
|
||||
|
||||
do_cmd()
|
||||
{
|
||||
local ret
|
||||
ret=0
|
||||
for daemon in ${quagga_daemons}; do
|
||||
command=%%PREFIX%%/sbin/${daemon}
|
||||
required_files=%%SYSCONF_DIR%%/${daemon}.conf
|
||||
pidfile=%%LOCALSTATE_DIR%%/${daemon}.pid
|
||||
if [ ${quagga_cmd} = "restart" -o ${quagga_cmd} = "start" ]; then
|
||||
check_config
|
||||
fi
|
||||
if [ ${quagga_cmd} = "start" -a ! -f ${required_files} ]; then
|
||||
continue
|
||||
fi
|
||||
if [ ${quagga_cmd} = "stop" -a -z $(check_process ${command}) ]; then
|
||||
continue
|
||||
fi
|
||||
eval flags=\$\{${daemon}_flags:-\"${quagga_flags}\"\}
|
||||
name=${daemon}
|
||||
_rc_restart_done=false
|
||||
run_rc_command "$1" || ret=1
|
||||
done
|
||||
if checkyesno quagga_vtysh_boot; then
|
||||
echo "Booting for integrated-vtysh-config..."
|
||||
%%PREFIX%%/bin/vtysh -b
|
||||
fi
|
||||
return ${ret}
|
||||
}
|
||||
|
||||
quagga_cmd=$1
|
||||
|
||||
case "$1" in
|
||||
force*)
|
||||
quagga_cmd=${quagga_cmd#force}
|
||||
;;
|
||||
fast*)
|
||||
quagga_cmd=${quagga_cmd#fast}
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
|
||||
if [ $# -ge 1 ]; then
|
||||
quagga_daemons="$*"
|
||||
fi
|
||||
|
||||
case "${quagga_cmd}" in
|
||||
start)
|
||||
if [ -n "${quagga_extralibs_path}" ]; then
|
||||
/sbin/ldconfig -m ${quagga_extralibs_path}
|
||||
fi
|
||||
do_cmd "start"
|
||||
;;
|
||||
stop)
|
||||
quagga_daemons=$(reverse_list ${quagga_daemons})
|
||||
do_cmd "stop"
|
||||
;;
|
||||
restart)
|
||||
quagga_daemons=$(reverse_list ${quagga_daemons})
|
||||
do_cmd "stop"
|
||||
quagga_daemons=$(reverse_list ${quagga_daemons})
|
||||
do_cmd "start"
|
||||
;;
|
||||
*)
|
||||
do_cmd "${quagga_cmd}"
|
||||
;;
|
||||
esac
|
30
net/quagga23/files/watchquagga.in
Normal file
30
net/quagga23/files/watchquagga.in
Normal file
@ -0,0 +1,30 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# $FreeBSD$
|
||||
#
|
||||
|
||||
# PROVIDE: watchquagga
|
||||
# REQUIRE: NETWORKING quagga
|
||||
# KEYWORD: shutdown
|
||||
|
||||
# Add the following line to /etc/rc.conf to enable watchquagga:
|
||||
# watchquagga_enable="YES"
|
||||
#
|
||||
# You may also wish to use the following variables to fine-tune startup:
|
||||
# watchquagga_flags
|
||||
|
||||
. /etc/rc.subr
|
||||
|
||||
name=watchquagga
|
||||
rcvar=watchquagga_enable
|
||||
|
||||
load_rc_config $name
|
||||
|
||||
stop_postcmd="rm -f $pidfile"
|
||||
|
||||
watchquagga_enable=${watchquagga_enable:-"NO"}
|
||||
|
||||
command=%%PREFIX%%/sbin/watchquagga
|
||||
pidfile=%%LOCALSTATE_DIR%%/watchquagga.pid
|
||||
|
||||
run_rc_command "$1"
|
8
net/quagga23/pkg-descr
Normal file
8
net/quagga23/pkg-descr
Normal file
@ -0,0 +1,8 @@
|
||||
Quagga is a routing software suite, providing implementations of
|
||||
OSPFv2, OSPFv3, RIP v1 and v2, RIPv3, BGPv4 and experemental ISIS
|
||||
for Unix platforms, particularly FreeBSD and Linux and also NetBSD,
|
||||
to mention a few. Quagga is a fork of GNU Zebra which was developed
|
||||
by KunihiroIshiguro. The Quagga tree aims to build a more involved
|
||||
community around Quagga than the current centralised model of GNU Zebra.
|
||||
|
||||
WWW: http://www.quagga.net/
|
13
net/quagga23/pkg-message
Normal file
13
net/quagga23/pkg-message
Normal file
@ -0,0 +1,13 @@
|
||||
==========================================================
|
||||
To enable quagga, add the following lines to rc.conf:
|
||||
|
||||
defaultrouter="NO"
|
||||
quagga_enable="YES"
|
||||
|
||||
Also, you may wish to set the following options:"
|
||||
quagga_daemons="zebra bgpd etc..."
|
||||
quagga_flags="...."
|
||||
quagga_extralibs_path="... ..."
|
||||
router_enable="NO"
|
||||
watchquagga_enable="YES"
|
||||
==========================================================
|
94
net/quagga23/pkg-plist
Normal file
94
net/quagga23/pkg-plist
Normal file
@ -0,0 +1,94 @@
|
||||
sbin/babeld
|
||||
sbin/bgpd
|
||||
%%ISISD%%sbin/isisd
|
||||
sbin/ospf6d
|
||||
%%OSPF_OPAQUE_LSA%%sbin/ospfclient
|
||||
sbin/ospfd
|
||||
sbin/ripd
|
||||
sbin/ripngd
|
||||
sbin/watchquagga
|
||||
sbin/zebra
|
||||
bin/vtysh
|
||||
lib/libospf.a
|
||||
lib/libospf.so
|
||||
lib/libospf.so.0
|
||||
lib/libospf.so.0.0.0
|
||||
%%OSPF_OPAQUE_LSA%%lib/libospfapiclient.a
|
||||
%%OSPF_OPAQUE_LSA%%lib/libospfapiclient.so
|
||||
%%OSPF_OPAQUE_LSA%%lib/libospfapiclient.so.0
|
||||
%%OSPF_OPAQUE_LSA%%lib/libospfapiclient.so.0.0.0
|
||||
lib/libzebra.a
|
||||
lib/libzebra.so
|
||||
lib/libzebra.so.0
|
||||
lib/libzebra.so.0.0.0
|
||||
include/quagga/buffer.h
|
||||
include/quagga/checksum.h
|
||||
include/quagga/command.h
|
||||
include/quagga/distribute.h
|
||||
include/quagga/filter.h
|
||||
include/quagga/getopt.h
|
||||
include/quagga/hash.h
|
||||
include/quagga/if.h
|
||||
include/quagga/if_rmap.h
|
||||
include/quagga/jhash.h
|
||||
include/quagga/keychain.h
|
||||
include/quagga/libospf.h
|
||||
include/quagga/linklist.h
|
||||
include/quagga/log.h
|
||||
include/quagga/md5.h
|
||||
include/quagga/memory.h
|
||||
include/quagga/memtypes.h
|
||||
include/quagga/network.h
|
||||
%%OSPF_OPAQUE_LSA%%include/quagga/ospfapi/ospf_apiclient.h
|
||||
include/quagga/ospfd/ospf_api.h
|
||||
include/quagga/ospfd/ospf_asbr.h
|
||||
include/quagga/ospfd/ospf_dump.h
|
||||
include/quagga/ospfd/ospf_ism.h
|
||||
include/quagga/ospfd/ospf_lsa.h
|
||||
include/quagga/ospfd/ospf_lsdb.h
|
||||
include/quagga/ospfd/ospf_nsm.h
|
||||
include/quagga/ospfd/ospf_opaque.h
|
||||
include/quagga/ospfd/ospfd.h
|
||||
include/quagga/plist.h
|
||||
include/quagga/pqueue.h
|
||||
include/quagga/prefix.h
|
||||
include/quagga/privs.h
|
||||
include/quagga/routemap.h
|
||||
include/quagga/route_types.h
|
||||
include/quagga/sigevent.h
|
||||
include/quagga/smux.h
|
||||
include/quagga/sockopt.h
|
||||
include/quagga/sockunion.h
|
||||
include/quagga/str.h
|
||||
include/quagga/stream.h
|
||||
include/quagga/table.h
|
||||
include/quagga/thread.h
|
||||
include/quagga/vector.h
|
||||
include/quagga/version.h
|
||||
include/quagga/vty.h
|
||||
include/quagga/workqueue.h
|
||||
include/quagga/zassert.h
|
||||
include/quagga/zclient.h
|
||||
include/quagga/zebra.h
|
||||
%%EXAMPLESDIR%%/babeld.conf.sample
|
||||
%%EXAMPLESDIR%%/bgpd.conf.sample
|
||||
%%EXAMPLESDIR%%/bgpd.conf.sample2
|
||||
%%ISISD%%%%EXAMPLESDIR%%/isisd.conf.sample
|
||||
%%EXAMPLESDIR%%/ospf6d.conf.sample
|
||||
%%EXAMPLESDIR%%/ospfd.conf.sample
|
||||
%%EXAMPLESDIR%%/ripd.conf.sample
|
||||
%%EXAMPLESDIR%%/ripngd.conf.sample
|
||||
%%EXAMPLESDIR%%/vtysh.conf.sample
|
||||
%%EXAMPLESDIR%%/zebra.conf.sample
|
||||
man/man1/vtysh.1.gz
|
||||
man/man8/bgpd.8.gz
|
||||
%%ISISD%%man/man8/isisd.8.gz
|
||||
man/man8/ospf6d.8.gz
|
||||
man/man8/ospfd.8.gz
|
||||
%%OSPF_OPAQUE_LSA%%man/man8/ospfclient.8.gz
|
||||
man/man8/ripd.8.gz
|
||||
man/man8/ripngd.8.gz
|
||||
man/man8/watchquagga.8.gz
|
||||
man/man8/zebra.8.gz
|
||||
@dir(%%ENABLE_USER%%,%%ENABLE_GROUP%%,750) %%LOCALSTATE_DIR%%
|
||||
@dir(%%ENABLE_USER%%,%%ENABLE_GROUP%%,750) %%ETCDIR%%
|
Loading…
Reference in New Issue
Block a user