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 Kunihiro Ishiguro. The Quagga tree aims to build a more involved
community around Quagga than the current centralised model of GNU Zebra.
===> The following configuration options are available for quagga-1.2.4_13:
DLMALLOC=off: Use dlmalloc (makes bgpd much faster)
EXAMPLES=on: Build and/or install examples
ISISD=on: Enable ISIS daemon (beta)
ISIS_TOPOLOGY=off: Enable IS-IS topology generator
LEGACY=on: Install to legacy paths (conflicts with FRR etc.)
NO_BGP_ANNOUNCE=off: Turn off BGP route announcement
OSPF_NEXTHOP=off: Set ip next-hop in OSPF route maps
PAM=off: PAM authentication for vtysh
PIMD=on: PIM-SSM multicast routing
RTADV=on: IPv6 Router Advertisements
SNMP=off: SNMP network protocol support
TCPSOCKETS=off: Use TCP/IP sockets for protocol daemons
===> Use 'make config' to modify these settings
net/quagga: minor fixes
- generalize CONFLICTS;
- fix subtle bug in my patch-vtysh.c;
- fix call to getgrouplist() function,
this part based on submission by Alexander Mitrokhin.
Bump PORTREVISION.
net/quagga: introduce compatible installation mode
This change makes it possible to build a package not conflicting
with frr, pimd nor openbgpd introducing new port option LEGACY
enabled by default. If disabled, the package is called quagga-compat
and has following differences:
* /usr/local/bin/vtysh renamed to /usr/local/bin/qvtysh;
* libraries install to /usr/local/quagga/lib instead of /usr/local/lib;
* binaries install to /usr/local/quagga/sbin instead of /usr/local/sbin.
* manual pages install to /usr/local/quagga/man;
This is intended to ease migration from quagga to frr
making it possible to stop quagga and start frr at once
and fall back quickly if things go wrong.
Also, remove unneeded USES=ssl. Add other distfile mirrors.
net/quagga: use MORE=-E implicitly within vtysh
quagga's vtysh utility defaults to "more" as PAGER that is less(1)
under FreeBSD and its current behaviour is not suitable for vtysh.
Generally, setting MORE=-E in user environment makes it behave better
but due to collateral damage in bash version 5+
this setting may be ignored.
Let's make it work out of the box while still allowing users to change or
restore pager behaviour with custom MORE settings.
net/quagga: take maintainership and undeprecate
With years, Quagga got decent support for FreeBSD networking stack
that is still better than one in FRRouting project tested with Linux mostly.
Quagga deals with FreeBSD implementation of IP aliases better,
its OSPF implementation is more robust etc.
I use the software and will maintain the port.
net/quagga: Deprecate and set expiration date to 2023-03-31
Abandonware, last release in 2018 and no development in years.
Redirect users to alternatives such as net/frr* , net/bird2 and net/openbgpd*
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
net: remove 'Created by' lines
A big Thank You to the original contributors of these ports:
* <ports@c0decafe.net>
* Aaron Dalton <aaron@FreeBSD.org>
* Aaron Straup Cope <ascope@cpan.org>
* Aaron Zauner <az_mail@gmx.at>
* Adam Jette <jettea46@yahoo.com>
* Adam Weinberger <adamw@FreeBSD.org>
* Alan Eldridge <alane@geeksrus.net>
* Alex Bakhtin <Alex.Bakhtin@gmail.com>
* Alex Deiter <Alex.Deiter@Gmail.COM>
* Alex Dupre <ale@FreeBSD.org>
* Alex Dupre <sysadmin@alexdupre.com>
(Only the first 15 lines of the commit message are shown above )
net/quagga: make it fetchable again
SAVANNAH does not hold the distfile anymore,
so switch to GITHUB as distfile source (same checksum).
Also, drop unneeded GAWK build dependency.
PORTREVISION not changed as both distfile and resulting package
not affected.
net/quagga: fix build for clang 11 and gcc 10 (FreeBSD 13)
Adding -fcommon to CFLAGS as patching would be too invasive.
PORTREVISION not bumped as it fixes build for FreeBSD 13.
Pet portlint.
Reported by: pkg-fallout
Bump PORTREVISION for ports depending on the canonical version of GCC
as defined in Mk/bsd.default-versions.mk which has moved from GCC 8.3
to GCC 9.1 under most circumstances now after revision 507371.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, everything INDEX-11 shows with a dependency on lang/gcc9 now.
PR: 238330
net/quagga: unbreak ripd for 1.2.4
ripd is essentially non-functional in quagga-1.2.4
as it aborts on first announce timeout due to some threading logic bug.
The problem was reported upstream over a year ago and ignored:
https://bugzilla.quagga.net/show_bug.cgi?id=985https://bugzilla.quagga.net/show_bug.cgi?id=1008
Add work-around that restores ripd stability.
PR: 238760
Approved by: pi (maintainer timeout, 2 weeks)
Bump PORTREVISION for ports depending on the canonical version of GCC
defined via Mk/bsd.default-versions.mk which has moved from GCC 7.4 t
GCC 8.2 under most circumstances.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, as a double check, everything INDEX-11 showed depending on lang/gcc7.
PR: 231590
Install texinfo files (GNU info) into ${PREFIX}/share/info
After a discussion on the mailing list on moving manpages to
${PREFIX}/share/man for consistency with base where it is
installed in usr/share/man, it appeared the same should happen
to GNU info files which were installed under share in base and
not in ports.
Now texinfo is not in base on any of the supported version of FreeBSD
it is possible to proceed to this move and it is easier to do than
the manpage change.
Other benefit than consistency are less patching: all build tools but
cmake are expecting info files to be under share/info and cmake (patched here)
was having an exception for BSD so the patch makes FreeBSD case less
specific for them
Bump revision of all impacted ports
PR: 232907
exp-run by: antoine
Differential Revision: https://reviews.freebsd.org/D17816
Bump PORTREVISION for ports depending on the canonical version of GCC
in the ports tree (via Mk/bsd.default-versions.mk and lang/gcc) which
has now moved from GCC 6 to GCC 7 by default.
This includes ports
- featuring USE_GCC=yes or USE_GCC=any,
- featuring USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and those
- with USES=compiler specifying one of openmp, nestedfct, c11, c++0x,
c++11-lib, c++11-lang, c++14-lang, c++17-lang, or gcc-c++11-lib.
PR: 222542
net/quagga: fix build if SNMP is not selected
- configure script tries to detect net-snmp even if not requested,
but fails, if net-snmp is not installed.
Reported by: antoine, garga
net/quagga: update 1.2.2 -> 1.2.3
- doc/security: Security announcements for 4 issues
- doc/security: Add a doc/security folder and template for announcements
- doc: Add commit message template, suitable for commit.template
- bgpd: remove stream_pnt use for notify data
- lib/privs: Remove of CAP_NET_BROADCAST forgot to decrement array count
- bgpd/security: debug print of received NOTIFY data can over-read msg array
- bgpd/security: fix infinite loop on certain invalid OPEN messages
- bgpd/security: Fix double free of unknown attribute
- bgpd/security: invalid attr length sends NOTIFY with data overrun
- zebra/redistribute: Implicit withdraw needs to be explicit if
update isn't sent
- doc: 'match aspath' should be 'match as-path'
- bgpd: fix SIGBUS
(Only the first 15 lines of the commit message are shown above )
net/quagga: update 1.2.1 -> 1.2.2
- bgpd: Fix AS_PATH size calculation for long paths
- zebra: Fix to set tag for a static route configured, #955
- Removed the installation of vrf specific tag and distance command
- nhrpd: several changes and bug fixes
- ripd: ripv2 fails to send packets on non multicast interface
- vtysh:address-family vpnv6 and vpnv6 unicast added, #950
Reported by: Balaji Gurudoss <balajig81@gmail.com>
Bump PORTREVISION for ports depending on the canonical version of GCC
(via Mk/bsd.default-versions.mk and lang/gcc) which has moved from
GCC 5.4 to GCC 6.4 under most circumstances.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c++11-lib, c++11-lang,
c++14-lang, c++0x, c11, or gcc-c++11-lib.
PR: 219275
Bump PORTREVISIONs for ports depending on the canonical version of GCC and
lang/gcc which have moved from GCC 4.9.4 to GCC 5.4 (at least under some
circumstances such as versions of FreeBSD or platforms).
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using using Mk/bsd.octave.mk which in turn has USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c++11-lib, c++14-lang,
c++11-lang, c++0x, c11, or gcc-c++11-lib.
PR: 216707
Bump PORTREVISIONS for ports depending on the canonical version of GCC and
lang/gcc which have moved from GCC 4.8.5 to GCC 4.9.4 (at least under some
circumstances such as versions of FreeBSD or platforms).
In particular that is ports with USE_GCC=yes, USE_GCC=any, or one of
gcc-c++11-lib, openmp, nestedfct, c++11-lib as well as c++14-lang,
c++11-lang, c++0x, c11 requested via USES=compiler.
Fix build.
As I managed to somehow build it yesterday before committing the update,
and I am removing an option, I'm bumping PORTREVISION
Submitted by: pkg-fallout
Sponsored by: Absolight
net/quagga: Update 1.0.20160315 -> 1.0.20161017
- This release also includes 4 other fixes for undefined behaviour that
may have security implications, for BGP, IS-IS and OSPFv3.
PR: 213576
Changes: https://lists.quagga.net/pipermail/quagga-users/2016-October/014477.html
Security: CVE-2016-4049
MFH: 2016Q4
Approved by: mat (maintainer)
Fix with custom SYSCONF_DIR and fix qa tests
Change the home directory of the quagga user to /var/empty which prevent QA
First the home does not need to be harcoded to /usr/local/etc/quagga, second
it fixes issues where the home created by the user addition is 755 then the
plist modifies it to 750
Reviewed by: mat
Approved by: mat (maintainer)
Sponsored by: gandi.net
Differential Revision: https://reviews.freebsd.org/D3135
Fix build on 8 and 9. This time for reals.
So, quagga uses some anonymous structs/unions, it's part of c11, and gcc from
base on 8 and 9, while not throwing errors when seeing those, kindly ignores
the definition and breaks everything.
Sponsored by: Absolight
Install ETCDIR and /var/run/quagga with the right owner and group so the
service can be started without manual intervention.
While there, fix a non reviewed makeplist problem.
Sponsored by: Absolight
- Add an optional patch to allow 'set ip next-hop' in route maps
for OSPF announces. This is useful for OSPF with CARP.
Submitted by: glebius
Approved by: maintainer
Feature safe: yes
In the rc.d scripts, change assignments to rcvar to use the
literal name_enable wherever possible, and ${name}_enable
when it's not, to prepare for the demise of set_rcvar().
In cases where I had to hand-edit unusual instances also
modify formatting slightly to be more uniform (and in
some cases, correct). This includes adding some $FreeBSD$
tags, and most importantly moving rcvar= to right after
name= so it's clear that one is derived from the other.