]> git.proxmox.com Git - mirror_frr.git/log
mirror_frr.git
6 years agoMerge pull request #1418 from qlyoung/mfa-fix-3.0 FRR-3.0.1
Russ White [Tue, 7 Nov 2017 01:54:55 +0000 (20:54 -0500)]
Merge pull request #1418 from qlyoung/mfa-fix-3.0

bgpd: fix mishandled attribute length [3.0]

6 years agobgpd: fix mishandled attribute length
Quentin Young [Mon, 23 Oct 2017 20:43:32 +0000 (16:43 -0400)]
bgpd: fix mishandled attribute length

A crafted BGP UPDATE with a malformed path attribute length field causes
bgpd to dump up to 65535 bytes of application memory and send it as the
data field in a BGP NOTIFY message, which is truncated to 4075 bytes
after accounting for protocol headers. After reading a malformed length
field, a NOTIFY is generated that is supposed to contain the problematic
data, but the malformed length field is inadvertently used to compute
how much data we send.

CVE-2017-15865

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
6 years agolib: Fix nexthop reading to work better
Donald Sharp [Mon, 6 Nov 2017 16:20:40 +0000 (11:20 -0500)]
lib: Fix nexthop reading to work better

Fixes: #1404
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
6 years agoMerge pull request #1386 from opensourcerouting/fix-1251
Donald Sharp [Mon, 30 Oct 2017 12:18:19 +0000 (08:18 -0400)]
Merge pull request #1386 from opensourcerouting/fix-1251

isisd: free-up circuit ip entries when addresses are deleted

6 years agoisisd: free-up circuit ip entries when addresses are deleted
Christian Franke [Mon, 30 Oct 2017 03:15:52 +0000 (04:15 +0100)]
isisd: free-up circuit ip entries when addresses are deleted

6 years agobgpd: Check for per-peer outbound configuration, in addition to the peer-group config
Brian Rak [Mon, 14 Aug 2017 21:22:03 +0000 (17:22 -0400)]
bgpd: Check for per-peer outbound configuration, in addition to the peer-group config

When displaying the config, bgpd only checked for the existance of a peer-group prefix-list before
deciding to not display the outbound prefix-list.  This commit updates the outbound prefix-list
logic to match the inbound.

6 years agoMerge pull request #1369 from LabNConsulting/working/3.0/cherry-pick/minusS
Lou Berger [Thu, 26 Oct 2017 13:15:15 +0000 (09:15 -0400)]
Merge pull request #1369 from LabNConsulting/working/3.0/cherry-pick/minusS

bgpd: cherry-pick -S fix from master, fix issue #1369

6 years agobgpd: skip run as option can be reused
Philippe Guibert [Mon, 25 Sep 2017 14:13:11 +0000 (16:13 +0200)]
bgpd: skip run as option can be reused

the '-S' option was not usable, whereas it was shown on the vty.
Enable the '-S' option.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
6 years agoMerge pull request #1352 from opensourcerouting/rpm-fix-3.0
Donald Sharp [Mon, 23 Oct 2017 12:32:52 +0000 (08:32 -0400)]
Merge pull request #1352 from opensourcerouting/rpm-fix-3.0

Rpm fix 3.0

6 years agoredhat: Fix doc by removing outdated package information and point to main doc/ direc...
Martin Winter [Sat, 21 Oct 2017 01:22:24 +0000 (18:22 -0700)]
redhat: Fix doc by removing outdated package information and point to main doc/ directory for it

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agoredhat: Add posttrans scriptlet as a temp fix for missing restart during upgrade
Martin Winter [Sat, 21 Oct 2017 01:19:36 +0000 (18:19 -0700)]
redhat: Add posttrans scriptlet as a temp fix for missing restart during upgrade

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agoredhat: Fix rpm scripts to correctly restart daemons on upgrade
Martin Winter [Fri, 20 Oct 2017 23:33:39 +0000 (16:33 -0700)]
redhat: Fix rpm scripts to correctly restart daemons on upgrade

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agoredhat: Add fix to correct watchfrr config during upgrade
Martin Winter [Fri, 20 Oct 2017 21:06:05 +0000 (14:06 -0700)]
redhat: Add fix to correct watchfrr config during upgrade

- /etc/frr/daemon is a config file and won't be replaced, do quick sed fix
- Updated changelog

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agoredhat: systemd file should not be executable
Martin Winter [Fri, 20 Oct 2017 02:36:59 +0000 (19:36 -0700)]
redhat: systemd file should not be executable

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agoredhat: Always reference main frr start/stop script in /usr/lib/frr
Martin Winter [Fri, 20 Oct 2017 01:02:45 +0000 (18:02 -0700)]
redhat: Always reference main frr start/stop script in /usr/lib/frr

* Fixes issue where daemon default config tried to use /etc/init.d/frr script which doesn't exist on systemd systems

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agoMerge pull request #1329 from opensourcerouting/debian9-pkg
Donald Sharp [Wed, 18 Oct 2017 23:12:03 +0000 (19:12 -0400)]
Merge pull request #1329 from opensourcerouting/debian9-pkg

debianpkg: Add Debian 9 Package support

6 years agodoc: Adding Doc for building on Debian 9
Martin Winter [Wed, 18 Oct 2017 22:15:55 +0000 (15:15 -0700)]
doc: Adding Doc for building on Debian 9

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agodebianpkg: Add debian9 backport to distribution tar
Martin Winter [Mon, 16 Oct 2017 11:01:48 +0000 (04:01 -0700)]
debianpkg: Add debian9 backport to distribution tar

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agodebianpkg: Add Debian 9 Package support
Martin Winter [Mon, 16 Oct 2017 10:31:47 +0000 (03:31 -0700)]
debianpkg: Add Debian 9 Package support

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agoRelease: FRR 3.0 frr-3.0
Martin Winter [Fri, 13 Oct 2017 23:17:26 +0000 (16:17 -0700)]
Release: FRR 3.0

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agoRevert "ospfd: Free memory associated with ospf instance startup"
Martin Winter [Thu, 12 Oct 2017 00:56:17 +0000 (17:56 -0700)]
Revert "ospfd: Free memory associated with ospf instance startup"

This reverts commit 79942104bff838362cd6609485a26617492aa6f5.
The original commit causes a heap-use-after-free. See issue
https://github.com/FRRouting/frr/issues/1326

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agorelease: FRR 3.0-rc3 frr-3.0-rc3
Martin Winter [Tue, 10 Oct 2017 22:13:10 +0000 (15:13 -0700)]
release: FRR 3.0-rc3

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agoMerge pull request #1320 from opensourcerouting/Debian-Pkg-3.0
Donald Sharp [Tue, 10 Oct 2017 16:33:36 +0000 (12:33 -0400)]
Merge pull request #1320 from opensourcerouting/Debian-Pkg-3.0

Debian pkg 3.0

6 years agodebianpkg: Fix non-empty-dependency_libs-in-la-file for frr modules
Martin Winter [Tue, 10 Oct 2017 06:14:27 +0000 (23:14 -0700)]
debianpkg: Fix non-empty-dependency_libs-in-la-file for frr modules

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agodebian-pkg: Remove hardening-wrapper and replace with dpkg-buildflags
Martin Winter [Tue, 10 Oct 2017 01:17:09 +0000 (18:17 -0700)]
debian-pkg: Remove hardening-wrapper and replace with dpkg-buildflags

* hardening-wrapper is obsolete
* Fixes Issue #967

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agodebianpkg: Always build FPM module
Martin Winter [Mon, 9 Oct 2017 09:33:11 +0000 (02:33 -0700)]
debianpkg: Always build FPM module

- FPM is a module since 3.0. Always build it and allow user choice to enable or disable it

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agodebianpkg: Remove -werror from Ubuntu 14.04 and 12.04 build to skip warnings from...
Martin Winter [Fri, 29 Sep 2017 02:59:35 +0000 (19:59 -0700)]
debianpkg: Remove -werror from Ubuntu 14.04 and 12.04 build to skip warnings from flex generated code

- Flex is too old on these releases and misses some prototypes in the generated code. Removing the
werror allows to build the package anyway

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agodebianpkg: Add missing XSBC-Original-Maintainer field (fixes merge error)
Martin Winter [Fri, 29 Sep 2017 01:09:44 +0000 (18:09 -0700)]
debianpkg: Add missing XSBC-Original-Maintainer field (fixes merge error)

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agodebianpkg: Fix leftover marking from merge
Martin Winter [Fri, 29 Sep 2017 00:35:24 +0000 (17:35 -0700)]
debianpkg: Fix leftover marking from merge

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agodebianpkg: Fix some old references to freerangerouting instead of frrouting
Martin Winter [Fri, 29 Sep 2017 00:08:31 +0000 (17:08 -0700)]
debianpkg: Fix some old references to freerangerouting instead of frrouting

6 years agofrr.lintian-overrides: update for current list of built libs
smccroskey [Tue, 8 Aug 2017 21:51:38 +0000 (14:51 -0700)]
frr.lintian-overrides: update for current list of built libs

Because the lintian warning no longer matched exactly due to removal
of unused protobuf libraries from the build, the warning wasn't
masked.  Update it to match the current warning string.

Signed-off-by: Silas McCroskey <smccroskey@cumulusnetworks.com>
6 years agoubuntu trusty/precise: remove leftover debconf call
smccroskey [Tue, 8 Aug 2017 19:22:29 +0000 (12:22 -0700)]
ubuntu trusty/precise: remove leftover debconf call

Forgot to unstash this when attempting to rebase it into
1e6df754913b4218ec809742fe0fff4eb8461035.

Signed-off-by: Silas McCroskey <smccroskey@cumulusnetworks.com>
6 years agodebianpkg/Makefile.am: remove frr.config
smccroskey [Tue, 8 Aug 2017 18:36:10 +0000 (11:36 -0700)]
debianpkg/Makefile.am: remove frr.config

File was removed by 1e6df754913b4218ec809742fe0fff4eb8461035
but missed removing it from the Makefile.am.

Signed-off-by: Silas McCroskey <smccroskey@cumulusnetworks.com>
6 years agodebianpkg/Makefile.am: remove po/ directory
smccroskey [Tue, 8 Aug 2017 18:24:05 +0000 (11:24 -0700)]
debianpkg/Makefile.am: remove po/ directory

Directory was removed by 1e6df754913b4218ec809742fe0fff4eb8461035 but
missed removing it from the Makefile.am.

Signed-off-by: Silas McCroskey <smccroskey@cumulusnetworks.com>
6 years agofrr.service: remove explicit dependency on socket-based syslog.target
smccroskey [Sat, 29 Jul 2017 00:29:36 +0000 (17:29 -0700)]
frr.service: remove explicit dependency on socket-based syslog.target

Testing done: built and installed for all ubuntu targets

Socket-based services such as syslog need not be specified as
dependencies in service files, and doing so may slow down boot by
reducing parallelism.  All known supported systemd-based platforms
have syslog as a socket-based service.

Clears the following lintian warnings:
W: frr: systemd-service-file-refers-to-obsolete-target lib/systemd/system/frr.service syslog.target

Signed-off-by: Silas McCroskey <smccroskey@cumulusnetworks.com>
6 years agopb libs: don't build if protobuf support is disabled
smccroskey [Sat, 29 Jul 2017 00:25:30 +0000 (17:25 -0700)]
pb libs: don't build if protobuf support is disabled

Testing done: built and installed for all ubuntu targets

These library targets should not be built if protobuf support is
disabled, as that is their only functionality.

Clears the following lintian warnings:
W: frr: non-dev-pkg-with-shlib-symlink usr/lib/libfrr_pb.so.0.0.0 usr/lib/libfrr_pb.so
W: frr: non-dev-pkg-with-shlib-symlink usr/lib/libfrrfpm_pb.so.0.0.0 usr/lib/libfrrfpm_pb.so
W: frr-dbg: debug-file-with-no-debug-symbols usr/lib/debug/usr/lib/libfrr_pb.so.0.0.0
W: frr-dbg: debug-file-with-no-debug-symbols usr/lib/debug/usr/lib/libfrrfpm_pb.so.0.0.0

Signed-off-by: Silas McCroskey <smccroskey@cumulusnetworks.com>
6 years agoubuntu12.04: shorten frr-dbg description
smccroskey [Sat, 29 Jul 2017 00:22:20 +0000 (17:22 -0700)]
ubuntu12.04: shorten frr-dbg description

Testing done: built and installed on all ubuntu

Fix was applied elsewhere but didn't make it into this file.

Clears the following lintian warning:
W: frr-dbg: description too long

Signed-off-by: Silas McCroskey <smccroskey@cumulusnetworks.com>
6 years agodeb-based-distros: clean up leftover debconf references
smccroskey [Thu, 27 Jul 2017 01:45:52 +0000 (18:45 -0700)]
deb-based-distros: clean up leftover debconf references

Testing done: built and installed on all ubuntu

Debconf was in use by this packaging a long time ago, and references to it
were never fully cleaned up when the one question it asked was deleted.

Clears the following lintian warning:
W: frr: no-debconf-templates

Signed-off-by: Silas McCroskey <smccroskey@cumulusnetworks.com>
6 years agobackports: don't install frr-reload.py in frr package
smccroskey [Thu, 20 Jul 2017 18:58:43 +0000 (11:58 -0700)]
backports: don't install frr-reload.py in frr package

Testing done: built in sbuild with lintian enabled
              verified frr-reload.py still in frr-pythontools

Clean up issues missed when moving the script into a separate package.

Clears the following lintian warning:
E: frr: python-script-but-no-python-dep usr/lib/frr/frr-reload.py

Signed-off-by: Silas McCroskey <smccroskey@cumulusnetworks.com>
6 years agodebian: install PNG files in /usr/share/info
smccroskey [Mon, 29 May 2017 22:34:02 +0000 (15:34 -0700)]
debian: install PNG files in /usr/share/info

Testing done: built in sbuild with lintian enabled

Clears lintian warnings of the following form:
W: frr-doc: info-document-missing-image-file

According to the documentation for the lintian warning, certain
applications (e.g.  emacs) can render images from info files inline,
and expect the images to either have their full path defined or be
installed in the same directory as the info files themselves.
Automake doesn't seem to have a primary for handling this sort of
installation (info_DATA is invalid and causes an error), so opted to
handle it in the debian install file itself.

Installing the images elsewhere (another path installed by frr-doc)
and giving a full path to their location in info files might be a
better approach.

Signed-off-by: Silas McCroskey <smccroskey@cumulusnetworks.com>
6 years agodebianpkg: Overriding lintian package-name-doesnt-match-sonames warning
Martin Winter [Sat, 8 Jul 2017 01:37:58 +0000 (18:37 -0700)]
debianpkg: Overriding lintian package-name-doesnt-match-sonames warning

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agodebianpkg: Fix 'make backports' warning about autopkgtest
Silas McCroskey [Fri, 7 Jul 2017 22:16:20 +0000 (15:16 -0700)]
debianpkg: Fix 'make backports' warning about autopkgtest

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agodebianpkg: Move frr-reload.py to frr-pythontools subpackage
Martin Winter [Fri, 16 Jun 2017 22:49:27 +0000 (15:49 -0700)]
debianpkg: Move frr-reload.py to frr-pythontools subpackage

- avoids python dependency on main frr package

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agodebianpkg: Register/remove init script on init.d based systems
Martin Winter [Fri, 16 Jun 2017 00:30:08 +0000 (17:30 -0700)]
debianpkg: Register/remove init script on init.d based systems

- Ubuntu 12.04 and Ubuntu 14.04 need init script registered during
  install and removed at uninstall

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agodebianpkg: Fix description (make shorter - max 80 chars)
Martin Winter [Thu, 15 Jun 2017 21:23:09 +0000 (14:23 -0700)]
debianpkg: Fix description (make shorter - max 80 chars)

- Fixes lintian error 'description-too-long'

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agodebianpkg: Support --with-pkg-extra-version and other modifier to build custom packag...
Martin Winter [Wed, 14 Jun 2017 01:06:14 +0000 (18:06 -0700)]
debianpkg: Support --with-pkg-extra-version and other modifier to build custom package version

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agodebianpkg: Cleanup configure options
Martin Winter [Tue, 13 Jun 2017 02:32:02 +0000 (19:32 -0700)]
debianpkg: Cleanup configure options

- Make them configurable (with WANT_xxx env variables)
- Adjust defaults to generic package
- remove obsolete configure options

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agodebianpkg: Do not start package after installation
Martin Winter [Mon, 12 Jun 2017 23:14:03 +0000 (16:14 -0700)]
debianpkg: Do not start package after installation

- Remove auto-start from Ubuntu 12.04 Backport
- Update Doc to explain on how to enable startup

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agotools: Rename to FRRouting in frr.service file
Martin Winter [Sat, 10 Jun 2017 09:20:29 +0000 (02:20 -0700)]
tools: Rename to FRRouting in frr.service file

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agodebianpkg/Ubuntu12.04-backport: Remove accidental reference to frr_sudoers
Martin Winter [Sat, 10 Jun 2017 03:41:09 +0000 (20:41 -0700)]
debianpkg/Ubuntu12.04-backport: Remove accidental reference to frr_sudoers

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agodebianpkg: Update control to fix maintainer email
Martin Winter [Fri, 9 Jun 2017 22:57:32 +0000 (15:57 -0700)]
debianpkg: Update control to fix maintainer email

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agodebianpkg: Fix Date format in changelog and version numbering to make sure custom...
Martin Winter [Fri, 9 Jun 2017 22:30:21 +0000 (15:30 -0700)]
debianpkg: Fix Date format in changelog and version numbering to make sure custom build is newer

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agodebianpkg: Add backport for Debian 8
Martin Winter [Fri, 9 Jun 2017 08:58:31 +0000 (01:58 -0700)]
debianpkg: Add backport for Debian 8

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agodebianpkg: debian rules file needs to be executable
Martin Winter [Fri, 9 Jun 2017 06:30:09 +0000 (23:30 -0700)]
debianpkg: debian rules file needs to be executable

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agodebianpkg: Update Build-Depends to use libjson-c-dev / libjson-c2 instead of libjson0...
Martin Winter [Fri, 9 Jun 2017 06:12:02 +0000 (23:12 -0700)]
debianpkg: Update Build-Depends to use libjson-c-dev / libjson-c2 instead of libjson0 on newer debian systems

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agodebianpkg: Add initial README to document the steps required to build the debian...
Martin Winter [Fri, 9 Jun 2017 03:34:22 +0000 (20:34 -0700)]
debianpkg: Add initial README to document the steps required to build the debian packages with backports

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agodebian->debianpkg: Move debian files from debian dir to debianpkg dir.
Martin Winter [Fri, 9 Jun 2017 02:14:41 +0000 (19:14 -0700)]
debian->debianpkg: Move debian files from debian dir to debianpkg dir.

Debian build systems use debian subdir for building and having a debian
dir in the source package causes issues.
Moving it to debianpkg avoids the issue and allows us to ship debian
package files in the source distribution

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agobackports: minimize diffs with base debian files
smccroskey [Fri, 28 Apr 2017 07:00:53 +0000 (00:00 -0700)]
backports: minimize diffs with base debian files

minimize diffs between the base debian files and each backport to the
changes that actually matter, so that they aren't lost in the noise of
capitalization and ordering differences.

Signed-off-by: Silas McCroskey <smccroskey@cumulusnetworks.com>
6 years agodebian: clean up, update base debian/control
smccroskey [Fri, 28 Apr 2017 06:58:13 +0000 (23:58 -0700)]
debian: clean up, update base debian/control

this removes some cruft -- old/outdated/incorrect information,
trailing whitespace, etc., and updates the descriptions.  Some small
changes were made where appropriate to minimize the diff between the
base control file and those of the various backports.

Signed-off-by: Silas McCroskey <smccroskey@cumulusnetworks.com>
6 years agodebian: delete unused files out of debian/
smccroskey [Thu, 27 Apr 2017 23:42:43 +0000 (16:42 -0700)]
debian: delete unused files out of debian/

These are unused and not referenced anywhere.

debian/rules.orig: included by mistake
debian/watch: no longer applicable; url is not valid
debian/patches: stale, unused, misleading

Signed-off-by: Silas McCroskey <smccroskey@cumulusnetworks.com>
6 years agoprecise/trusty: don't attempt to install pimd or ldpd manuals
smccroskey [Thu, 27 Apr 2017 21:31:29 +0000 (14:31 -0700)]
precise/trusty: don't attempt to install pimd or ldpd manuals

Neither of these daemons are installed on 14.04, leading to build
failures now that the man pages are excluded from the Makefiles when
the daemons aren't enabled for install.

Signed-off-by: Silas McCroskey <smccroskey@cumulusnetworks.com>
6 years agobackports: error out on upstream/downstream version mismatch
smccroskey [Thu, 27 Apr 2017 21:27:09 +0000 (14:27 -0700)]
backports: error out on upstream/downstream version mismatch

The quilt source format expects the upstream tarball's version to
correspond roughly to the debian version of the package, and errors
will be thrown (at unpack time, in our case) if it doesn't.  Do a
sanity check when we're building the source package to make sure they
match up.

Signed-off-by: Silas McCroskey <smccroskey@cumulusnetworks.com>
6 years agodebian: Fix some incorrect references to Quagga instead of FRR
Martin Winter [Thu, 16 Feb 2017 18:49:00 +0000 (01:49 +0700)]
debian: Fix some incorrect references to Quagga instead of FRR

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agobackports: symlink identical files
Silas McCroskey [Tue, 14 Feb 2017 17:48:57 +0000 (00:48 +0700)]
backports: symlink identical files

Testing-done: built all backports in schroots and VMs

made files identical between different backports symlinks
to the ones for the more recent distribution, and updated
relevant tar invocations to follow symlinks.

Signed-off by: Silas McCroskey <smccroskey@cumulusnetworks.com>

6 years agodebian: add pkg-config to build-depends
Silas McCroskey [Tue, 14 Feb 2017 17:34:42 +0000 (00:34 +0700)]
debian: add pkg-config to build-depends

Testing-done: `--add-depends pkg-config' sbuild

The dependency on pkg-config was introduced recently, and
missed because it's in our schroots by default. Need to add
it for other build environments (e.g. ubuntu schroots).

Signed-off by: Silas McCroskey <smccroskey@cumulusnetworks.com>

6 years agodebian: move ubuntu 16.04 files into new backports system
Silas McCroskey [Tue, 14 Feb 2017 15:48:19 +0000 (22:48 +0700)]
debian: move ubuntu 16.04 files into new backports system

Added 'debian/patches' to the exclude file, since the existing patches
interfere with the build and are unused by our build.  No other
changes were necessary.  Used '-0~ubuntu16.04+1' as the version
extention, to denote: no patches (-0), debian packaging files changed
for backport (+1).

Signed-off-by: Silas McCroskey <smccroskey@cumulusnetworks.com>
Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agodebian: move ubuntu 14.04 files into new backports system
Silas McCroskey [Tue, 14 Feb 2017 15:44:17 +0000 (22:44 +0700)]
debian: move ubuntu 14.04 files into new backports system

`git diff'ed the main (cmaster) branch against the 14.04 branch
to determine changed debian files, then pulled them into
debian/backports via `git cat-file'. Added 'debian/patches' to
the exclude file, since the existing patches interfere with the
build and are unused by our build. Used '-0~ubuntu14.04+1' as
the version extention, to denote: no patches (-0), debian
packaging files changed for backport (+1).

Original commit by Silas with updates on fork name by Martin

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agodebian: move ubuntu 12.04 files into new backports system
Silas McCroskey [Tue, 14 Feb 2017 15:34:56 +0000 (22:34 +0700)]
debian: move ubuntu 12.04 files into new backports system

`git diff'ed the main (cmaster) branch against the 12.04 branch
to determine changed debian files, then pulled them into
debian/backports via `git cat-file'. Added 'debian/patches' to
the exclude file, since the existing patches interfere with the
build and are unused by our build. Used '-0~ubuntu12.04+1' as
the version extention, to denote: no patches (-0), debian
packaging files changed for backport (+1).

Original commit by Silas with updates on fork name by Martin

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agodebian/backports: include in distfile, don't put files in ..
Silas McCroskey [Tue, 14 Feb 2017 12:04:10 +0000 (19:04 +0700)]
debian/backports: include in distfile, don't put files in ..

Testing-done: ran 'make dist', unpacked elsewhere, built from result

Adjusted target to build the .orig.tar.gz accordingly, since it must
exclude the debian/ subdirectory.  Allows for building any backport from
only a tarball.

Signed-off-by: Silas McCroskey <smccroskey@cumulusnetworks.com>
Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agodebian: fix dpkg tool invocations to work on Ubuntu 12.04
Silas McCroskey [Tue, 14 Feb 2017 11:52:40 +0000 (18:52 +0700)]
debian: fix dpkg tool invocations to work on Ubuntu 12.04

dpkg-parsechangelog and dpkg-source were both using flags
not yet available in the versions available on 12.04.

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agodebian: structure for building backports from a single branch
Silas McCroskey [Tue, 14 Feb 2017 11:45:50 +0000 (18:45 +0700)]
debian: structure for building backports from a single branch

Source a makefile (when it exists) in debian/rules to assemble
a source package via:

* a debian.tar.gz tarball built from combining the contents of debian/
  and debian/backports/$backport/debian/ using other details under
  debian/backports/$backport
* an orig.tar.gz file (not generated by this makefile). This can (and
  should) be the same for all backports.

Details in debian/backports/README

Signed-off-by: Silas McCroskey <smccroskey@cumulusnetworks.com>
6 years agoMerge pull request #1318 from opensourcerouting/bgp_mplsvpn_werror_fix
Donald Sharp [Tue, 10 Oct 2017 12:23:22 +0000 (08:23 -0400)]
Merge pull request #1318 from opensourcerouting/bgp_mplsvpn_werror_fix

bgpd: fix werror warning for potentially uninitialized variable

6 years agobgpd: fix werror warning for potentially uninitialized variable
Martin Winter [Tue, 10 Oct 2017 02:27:44 +0000 (19:27 -0700)]
bgpd: fix werror warning for potentially uninitialized variable

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
6 years agoMerge pull request #1284 from donaldsharp/more_mem_leaks
Lou Berger [Mon, 9 Oct 2017 13:56:51 +0000 (09:56 -0400)]
Merge pull request #1284 from donaldsharp/more_mem_leaks

More mem leaks

6 years agoldpd: detach stdin/stdout/stderr from the child processes
Renato Westphal [Tue, 3 Oct 2017 19:11:07 +0000 (16:11 -0300)]
ldpd: detach stdin/stdout/stderr from the child processes

Doing a "ssh user@node 'ldpd -d'" was making the SSH session hang. In
the original OpenBSD's ldpd(8) daemon, the daemon function takes care
of connecting stdin/stdout/stderr to /dev/null. In the FRR port, this
only happens in the frr_run() function, after all children have been
forked. Ideally we could try to rearrange libfrr.c and ldpd.c in a way
that start_child() is called only after the parent connects the standard
I/O streams to /dev/null. But since this issue needs an immediate
fix, let's do this workaround for now. Note: even when running on the
foreground, all log messages from the child processes are sent to the
parent process, which then prints the messages to stdout/stderr and/or
to a log file.

Reported-by: Martin Winter <mwinter@opensourcerouting.org>
Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
6 years agoisisd: Allow adjacency cleanup to free malloc'ed memory
Donald Sharp [Wed, 4 Oct 2017 12:49:14 +0000 (08:49 -0400)]
isisd: Allow adjacency cleanup to free malloc'ed memory

The `struct isis_adjacency` needs to free up memory
associated with the area_addrs ipv4_addrs and ipv6_addrs
lists.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
6 years agoospf6d: When removing a vertex free memory associated with it
Donald Sharp [Wed, 4 Oct 2017 12:35:29 +0000 (08:35 -0400)]
ospf6d: When removing a vertex free memory associated with it

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
6 years agoospfd: Free memory associated with ospf instance startup
Donald Sharp [Wed, 4 Oct 2017 12:04:00 +0000 (08:04 -0400)]
ospfd: Free memory associated with ospf instance startup

We have memory that is initialized upon ospf instance
and area startup.  Free it up on shutdown.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
6 years agoripngd: Fix possible memory leak of route_node
Donald Sharp [Wed, 4 Oct 2017 11:55:58 +0000 (07:55 -0400)]
ripngd: Fix possible memory leak of route_node

There exists a path where we do not save the route_node
after creation.  Allow cleanup.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
6 years agobgpd: Fix AS_PATH size calculation for long paths
Andreas Jaggi [Fri, 8 Sep 2017 11:46:20 +0000 (07:46 -0400)]
bgpd: Fix AS_PATH size calculation for long paths

If you have an AS_PATH with more entries than
what can be written into a single AS_SEGMENT_MAX
it needs to be broken up.  The code that noticed
that the AS_PATH needs to be broken up was not
correctly calculating the size of the resulting
message.  This patch addresses this issue.

This patch was built from an email that Andreas
sent to the dev alias for FRRouting.

Fixes: #1114
Signed-off-by: Andreas Jaggi <aj@open.ch>
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
6 years agoMerge pull request #1217 from qlyoung/fix-heap-uaf-ospf6
Renato Westphal [Sun, 24 Sep 2017 13:54:13 +0000 (10:54 -0300)]
Merge pull request #1217 from qlyoung/fix-heap-uaf-ospf6

ospf6d: fix heap use after free

6 years agoospf6d: fix heap use after free
Quentin Young [Thu, 21 Sep 2017 20:03:17 +0000 (16:03 -0400)]
ospf6d: fix heap use after free

During the loop we save a pointer to the next route in the table in case
brouter is deleted during the course of the loop iteration. However when
we call ospf6_route_remove this can trigger ospf6_route_remove on other
routes in the table, one of which could be pointed at by said pointer.
Since ospf6_route_next locks the route that it returns, it won't
actually be deleted, instead the refcount will go to 1. In the next loop
iteration, nbrouter becomes brouter, and calling ospf6_route_next on
this one will finally decrement the refcount to 0, resulting in a free,
which causes subsequent reads on brouter to be UAF. Since the route will
have OSPF6_ROUTE_WAS_REMOVED set, provided the memory was not
overwritten before we got there, we'll continue on to the next one so it
is unlikely this will cause a crash in production.

Solution implemented is to check if we've deleted the route and continue
if so.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
6 years agoAdding Useful Sysctl Settings recommendations.
Eric Pulvino [Mon, 18 Sep 2017 15:53:29 +0000 (11:53 -0400)]
Adding Useful Sysctl Settings recommendations.

6 years agoMerge pull request #1152 from nkukard/docs-ip-bgp
Donald Sharp [Thu, 21 Sep 2017 12:50:26 +0000 (08:50 -0400)]
Merge pull request #1152 from nkukard/docs-ip-bgp

doc: Updates for 3.0

6 years agoMerge branch 'stable/3.0' into docs-ip-bgp
Donald Sharp [Thu, 21 Sep 2017 12:50:02 +0000 (08:50 -0400)]
Merge branch 'stable/3.0' into docs-ip-bgp

6 years agoMerge pull request #1211 from donaldsharp/mem_leaks
Renato Westphal [Thu, 21 Sep 2017 12:42:45 +0000 (09:42 -0300)]
Merge pull request #1211 from donaldsharp/mem_leaks

Mem leaks

6 years agobgpd: Fix json memory leak
Donald Sharp [Wed, 20 Sep 2017 16:56:38 +0000 (12:56 -0400)]
bgpd: Fix json memory leak

When issuing 'show bgp ...' commands that dump
the entire table, we were dropping the initial
json_paths = json_object_new_object() memory
allocation.  Fix this.

Additionally reformat the output to fit
better in 80 columns.

There may be additional memory leaks here
hidden away in how we decide to continue
or not.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
6 years agozebra: Free leaked zclient data structures on shutdown
Donald Sharp [Wed, 20 Sep 2017 16:52:38 +0000 (12:52 -0400)]
zebra: Free leaked zclient data structures on shutdown

On shutdown we were deleting the linked list that
kept the zclient connections, but we were not
freeing the data pointed at by the link list.

This modification allows the normal cleanup of the
linked list to cleanup the zclient data structure.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
6 years agoripd: Free leaked memory on shutdown
Donald Sharp [Wed, 20 Sep 2017 16:51:27 +0000 (12:51 -0400)]
ripd: Free leaked memory on shutdown

Usage of the address sanitizer and topotests showed
that rip was leaking obuf on shutdown

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
6 years agovtysh: Cleanup some stuff(tm)
Donald Sharp [Mon, 22 May 2017 19:43:20 +0000 (15:43 -0400)]
vtysh: Cleanup some stuff(tm)

1) vtysh_config_dump was not properly indented.  Fix

2) Add VRF_NODE to be line_uniq when parsing return from sub-daemons

3) Fix 'no log monitor' to be line_uniq as well

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
6 years agoMerge pull request #1176 from opensourcerouting/isis-stable-circuit-ids
Donald Sharp [Wed, 20 Sep 2017 11:55:55 +0000 (07:55 -0400)]
Merge pull request #1176 from opensourcerouting/isis-stable-circuit-ids

isisd: generate unique circuit ids

6 years agovtysh: fix various show commands
Quentin Young [Wed, 21 Jun 2017 18:42:17 +0000 (18:42 +0000)]
vtysh: fix various show commands

need 'do' to force ENABLE_NODE

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
6 years agolib: allow 'do' commands in ENABLE_NODE
Quentin Young [Wed, 14 Jun 2017 19:47:14 +0000 (19:47 +0000)]
lib: allow 'do' commands in ENABLE_NODE

'do' is syntax sugar that allows the user to execute a command under
ENABLE_NODE when in another CLI node. If the user is already in
ENABLE_NODE, use of 'do' was previously disallowed. This patch allows it
because it makes it easier for us to hack around certain instances of
the node synchronization problem with vtysh.

Also included is a fix for one of these problems.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
6 years agoisisd: generate unique circuit ids
Christian Franke [Thu, 14 Sep 2017 13:26:33 +0000 (15:26 +0200)]
isisd: generate unique circuit ids

Circuit IDs need to be unique, otherwise mayhem will ensue.

Signed-off-by: Christian Franke <chris@opensourcerouting.org>
6 years agoldpd: fix broken label allocation frr-3.0-rc2
Renato Westphal [Tue, 12 Sep 2017 12:46:31 +0000 (09:46 -0300)]
ldpd: fix broken label allocation

Once ldpd allocated label 48 for a given FEC, all subsequent requests
for a new label would return the same value (48). The problem is that
we were left shifting an uint32_t value up to 64 times, losing important
information.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
6 years agoMerge pull request #1159 from opensourcerouting/doc-tcp-zebra
Russ White [Wed, 13 Sep 2017 20:24:30 +0000 (16:24 -0400)]
Merge pull request #1159 from opensourcerouting/doc-tcp-zebra

doc: remove --enable-tcp-zebra from the build instructions (3.0)

6 years agoMerge pull request #1168 from donaldsharp/show_ver
Russ White [Wed, 13 Sep 2017 20:18:57 +0000 (16:18 -0400)]
Merge pull request #1168 from donaldsharp/show_ver

lib: Add json support for 'show version' command

6 years agolib: Add json support for 'show version' command
Donald Sharp [Tue, 12 Sep 2017 20:27:39 +0000 (16:27 -0400)]
lib: Add json support for 'show version' command

Fixes: #1167
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
6 years agorelease: FRR 3.0-rc2
Donald Sharp [Tue, 12 Sep 2017 17:23:51 +0000 (13:23 -0400)]
release: FRR 3.0-rc2

6 years agodoc: remove --enable-tcp-zebra from the build instructions
Renato Westphal [Tue, 12 Sep 2017 12:58:00 +0000 (09:58 -0300)]
doc: remove --enable-tcp-zebra from the build instructions

This parameter was removed by commit 01c9f29.

Fixes #1146.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>