Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

lib, zebra: add AFI parameter to the ZEBRA_REDISTRIBUTE_DEFAULT_* messages #3607

Merged

Conversation

rwestphal
Copy link
Member

Some daemons like ospfd and isisd have the ability to advertise a
default route to their peers only if one exists in the RIB. This
is what the "default-information originate" commands do when used
without the "always" parameter.

For that to work, these daemons use the ZEBRA_REDISTRIBUTE_DEFAULT_ADD
message to request default route information to zebra. The problem
is that this message didn't have an AFI parameter, so a default route
from any address-family would satisfy the requests from both daemons
(e.g. ::/0 would trigger ospfd to advertise a default route to its
peers, and 0.0.0.0/0 would trigger isisd to advertise a default route
to its IPv6 peers).

Fix this by adding an AFI parameter to the
ZEBRA_REDISTRIBUTE_DEFAULT_{ADD,DELETE} messages and making the
corresponding code changes.

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

…sages

Some daemons like ospfd and isisd have the ability to advertise a
default route to their peers only if one exists in the RIB. This
is what the "default-information originate" commands do when used
without the "always" parameter.

For that to work, these daemons use the ZEBRA_REDISTRIBUTE_DEFAULT_ADD
message to request default route information to zebra. The problem
is that this message didn't have an AFI parameter, so a default route
from any address-family would satisfy the requests from both daemons
(e.g. ::/0 would trigger ospfd to advertise a default route to its
peers, and 0.0.0.0/0 would trigger isisd to advertise a default route
to its IPv6 peers).

Fix this by adding an AFI parameter to the
ZEBRA_REDISTRIBUTE_DEFAULT_{ADD,DELETE} messages and making the
corresponding code changes.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
@LabN-CI
Copy link
Collaborator

LabN-CI commented Jan 14, 2019

💚 Basic BGPD CI results: SUCCESS, 0 tests failed

Results table
_ _
Result SUCCESS git merge/3607 49db7a7
Date 01/14/2019
Start 09:05:33
Finish 09:29:04
Run-Time 23:31
Total 1813
Pass 1813
Fail 0
Valgrind-Errors 0
Valgrind-Loss 0
Details vncregress-2019-01-14-09:05:33.txt
Log autoscript-2019-01-14-09:06:15.log.bz2
Memory

For details, please contact louberger

@donaldsharp
Copy link
Member

Doesn't the prefix sent up imply the afi?

@rwestphal
Copy link
Member Author

Doesn't the prefix sent up imply the afi?

No prefix is sent in the ZEBRA_REDISTRIBUTE_DEFAULT_* messages, only the command (and now the AFI field). We also need the AFI field in the zclient->zebra path because zebra needs to keep track of each request on a per AFI basis.

@NetDEF-CI
Copy link
Collaborator

Continuous Integration Result: SUCCESSFUL

Congratulations, this patch passed basic tests

Tested-by: NetDEF / OpenSourceRouting.org CI System

CI System Testrun URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-6390/

This is a comment from an EXPERIMENTAL automated CI system.
For questions and feedback in regards to this CI system, please feel free to email
Martin Winter - mwinter (at) opensourcerouting.org.


Warnings Generated during build:

Checkout code: Successful with additional warnings:

Report for zclient.h | 2 issues
===============================================
< WARNING: function definition argument 'afi_t' should also have an identifier name
< #490: FILE: /tmp/f1-17962/zclient.h:490:

Warnings Generated during build:

Ubuntu 16.04 amd64 build: Successful with additional warnings:

Debian Package lintian failed for Ubuntu 16.04 amd64 build:
(see full package build log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-6390/artifact/CI014BUILD/ErrorLog/log_lintian.txt)

W: frr: package-name-doesnt-match-sonames libfrr0 libfrrospfapiclient0
N: 3 tags overridden (3 warnings)

Ubuntu 14.04 amd64 build: Successful with additional warnings:

Debian Package lintian failed for Ubuntu 14.04 amd64 build:
(see full package build log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-6390/artifact/CI001BUILD/ErrorLog/log_lintian.txt)

W: frr: package-name-doesnt-match-sonames libfrr0 libfrrospfapiclient0
N: 3 tags overridden (3 warnings)

Ubuntu 16.04 i386 build: Successful with additional warnings:

Debian Package lintian failed for Ubuntu 16.04 i386 build:
(see full package build log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-6390/artifact/U1604I386/ErrorLog/log_lintian.txt)

W: frr: package-name-doesnt-match-sonames libfrr0 libfrrospfapiclient0
N: 3 tags overridden (3 warnings)

Ubuntu 18.04 amd64 build: Successful with additional warnings:

Debian Package lintian failed for Ubuntu 18.04 amd64 build:
(see full package build log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-6390/artifact/U1804AMD64/ErrorLog/log_lintian.txt)

W: frr: package-name-doesnt-match-sonames libfrr0 libfrrospfapiclient0
N: 4 tags overridden (3 warnings, 1 info)

Debian 8 amd64 build: Successful with additional warnings:

Debian Package lintian failed for Debian 8 amd64 build:
(see full package build log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-6390/artifact/CI008BLD/ErrorLog/log_lintian.txt)

W: frr: package-name-doesnt-match-sonames libfrr0 libfrrospfapiclient0
N: 3 tags overridden (3 warnings)

Debian 9 amd64 build: Successful with additional warnings:

Debian Package lintian failed for Debian 9 amd64 build:
(see full package build log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-6390/artifact/CI021BUILD/ErrorLog/log_lintian.txt)

W: frr: package-name-doesnt-match-sonames libfrr0 libfrrospfapiclient0
N: 3 tags overridden (3 warnings)

CLANG Static Analyzer Summary

  • Github Pull Request 3607, comparing to Git base SHA 46b020c
  • Base image data for Git 46b020c does not exist - compare skipped

2 Static Analyzer issues remaining.

See details at
https://ci1.netdef.org/browse/FRR-FRRPULLREQ-6390/artifact/shared/static_analysis/index.html

@donaldsharp donaldsharp merged commit 44d5697 into FRRouting:master Jan 14, 2019
@rwestphal rwestphal deleted the default_information_afi branch April 18, 2019 16:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants