Project

General

Profile

Feature #10619

Various FRR enhancements

Added by Ben Hughes 4 months ago. Updated 2 months ago.

Status:
Feedback
Priority:
Normal
Assignee:
Category:
FRR
Target version:
-
Start date:
06/01/2020
Due date:
% Done:

100%

Estimated time:

Description

Started off tidying up the BFD integrating in #835 and found a few other things to tidy up.

1. Extend #10441 to better integrate with the current FRR configuration style and add support for BFD to BGP, OSPF and OSPFv3 daemons.
2. Make the OSPF and OSPFv3 configuration flow more alike.
3. Allow the OSPF/OSPFv3 default area to be unspecified as long as the area is specified on the interface for situations where a default is not preferable.
3. Add a check to prevent a situation where BGP can be started with no local AS set.
4. Tidy up the configuration by only generating ACCEPTFILTER when there the convenience filter functions in the UI have been used.
5. Add agentx support to FRR to allow SNMP data retrieval when used with the net-snmp package.

Tested on 2.4.5 release with FRR 7.2.1 and 7.3.

History

#2 Updated by Jim Pingle 4 months ago

  • Status changed from New to Pull Request Review

#3 Updated by Renato Botelho 2 months ago

  • Status changed from Pull Request Review to Feedback
  • % Done changed from 0 to 100

PR has been merged. Thanks!

#4 Updated by Ben Hughes 2 months ago

No problem, glad to get it in there!

I've just been re-reviewing this looking forward to getting off my custom packages and I've realised that I've missed out a dependency on libreadline with is added when enabling SNMP support. (vtysh won't start without it) I'll stick another PR in to fix it but how should I go about it, just add the requirement to the makefile as usual? I notice libreadline isn't in the currently built ports tree (pkg search libunwind returns nothing) so I'm not sure what the procedure would be to add it?

#5 Updated by Renato Botelho 2 months ago

Ben Hughes wrote:

No problem, glad to get it in there!

I've just been re-reviewing this looking forward to getting off my custom packages and I've realised that I've missed out a dependency on libreadline with is added when enabling SNMP support. (vtysh won't start without it) I'll stick another PR in to fix it but how should I go about it, just add the requirement to the makefile as usual? I notice libreadline isn't in the currently built ports tree (pkg search libunwind returns nothing) so I'm not sure what the procedure would be to add it?

readline is the name of the package that provides libreadline.so.8 on pfSense and it's available on repository.

I've also confirmed that frr7 package has dependency registered for it, as you can see:

[2.4.5-RELEASE][root@pfgarga.home]/root: pkg info frr7
frr7-7.3.1
Name           : frr7
Version        : 7.3.1
Installed on   : Tue Jul 14 13:46:29 2020 -03
Origin         : net/frr7
Architecture   : FreeBSD:11:amd64
Prefix         : /usr/local
Categories     : net
Licenses       : GPLv2
Maintainer     : olivier@FreeBSD.org
WWW            : https://frrouting.org/
Comment        : IP routing protocol suite including BGP, IS-IS, OSPF and RIP
Options        :
    CONFIGROLLBACKS: off
    DATACENTER     : off
    FPM            : on
    LDPD           : off
    MANPAGES       : off
    MULTIPATH      : off
    PAM            : off
    RPKI           : on
    SHELLACCESS    : off
    SNMP           : off
    TCMALLOC       : off
    TCPSOCKETS     : off
    VTYSH          : on
Shared Libs required:
    librtr.so.0
    libjson-c.so.5
    libssh.so.4
    libreadline.so.8    <-------- *HERE*
    libyang.so.1
Shared Libs provided:
    libfrrospfapiclient.so.0
    libfrr.so.0
Annotations    :
    FreeBSD_version: 1103507
    repo_type      : binary
    repository     : pfSense
Flat size      : 8.92MiB
Description    :
FRRouting (FRR) is an IP routing protocol suite for Linux and Unix platforms
which includes protocol daemons for BGP, IS-IS, OSPF and RIP. FRR has its roots
in the Quagga project.

WWW: https://frrouting.org/

#6 Updated by Ben Hughes 2 months ago

Argh i've had a bit of a freudian slip there, I meant libunwind.

#7 Updated by Renato Botelho 2 months ago

Ben Hughes wrote:

Argh i've had a bit of a freudian slip there, I meant libunwind.

What is the error you see without libunwind when you try to run vtysh? can you also attach the result of `ldd /path/to/vtysh`?

Looking at frr7 configure script it seems to require libunwind only if backtrace option is enabled.

#8 Updated by Ben Hughes 2 months ago

Yes I had a look back at the FRR commit history and found only that as well.

It will fail to start complaining about a missing libunwind.so.8. I'd built it by hand for my testing system and forgotten about it, vtysh works without issue after installing it.

#9 Updated by Renato Botelho 2 months ago

Ben Hughes wrote:

Yes I had a look back at the FRR commit history and found only that as well.

It will fail to start complaining about a missing libunwind.so.8. I'd built it by hand for my testing system and forgotten about it, vtysh works without issue after installing it.

It only links with libunwind if libunwind is installed. I've reported the bug upstream - https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=247993

Also available in: Atom PDF