summaryrefslogtreecommitdiffstats
path: root/ospf6d (follow)
Commit message (Collapse)AuthorAgeFilesLines
* ospf6d: abr summary advertise best routeChirag Shah2018-11-161-2/+17
| | | | | | | | | | | | | | | | | | | ABR summary should contain best intra prefix LSA. There might be a case where intra-prefix route with different cost from different advertising router present, summary advertisement should only consider best intra-prefix route. A route which is marked for remove, while purging the route's ABR summary LSA also remove summary route from the summary table. Ticket:CM-22665 Testing Done: Validate on ABR topology, intra-prefix route with different cost, a higher cost intra-prefix route skip from sending ABR summary LSA. Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
* ospf6d: add missing vty commands to ospf6 area commandPhilippe Guibert2018-11-121-6/+12
| | | | | | | | it was not possible to configure per area identifier under decimal format some ospf6 area options. this is the case of filter list, or export-list. Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
* *: Replace zclient_new with zclient_new_notifyDonald Sharp2018-11-121-1/+1
| | | | | | | It's been a year since we added the new optional parameters to instantiation. Let's switch over to the new name. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
* lib: retrofit interface commands to the new northbound modelRenato Westphal2018-10-271-1/+1
| | | | | | | | | | | | | | The frr-interface YANG module models interfaces using a YANG list keyed by the interface name and the interface VRF. Interfaces can't be keyed only by their name since interface names might not be globally unique when the netns VRF backend is in use. When using the VRF-Lite backend, however, interface names *must* be globally unique. In this case, we need to validate the uniqueness of interface names inside the appropriate northbound callback since this constraint can't be expressed in the YANG language. We must also ensure that only inactive interfaces can be removed, among other things we need to validate in the northbound layer. Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
* yang, lib: add 'frr-interface.yang' and associated stub callbacksRenato Westphal2018-10-271-0/+1
| | | | | | | | | | | | | Introduce frr-interface.yang, which defines a model for managing FRR interfaces. Update the 'frr_yang_module_info' array of all daemons that will implement this module. Add automatically generated stub callbacks in if.c. These callbacks will be implemented in the following commit. Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
* *: add empty array of YANG modulesRenato Westphal2018-10-271-1/+5
| | | | | | | | | | FRR_DAEMON_INFO should now contain an array of 'frr_yang_module_info' structures describing the YANG modules implemented by the daemon. This array will be used by frr_init() function to load all YANG modules and initialize the northbound callbacks during the daemon initialization. Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
* *: spelchekDavid Lamparter2018-10-252-3/+3
| | | | Signed-off-by: David Lamparter <equinox@diac24.net>
* Merge branch 'pull/3197'David Lamparter2018-10-231-1/+5
|\ | | | | | | | | | | ...with a nit fix Signed-off-by: David Lamparter <equinox@diac24.net>
| * *: Fixup to use proper list_cmp functionsDonald Sharp2018-10-191-1/+5
| | | | | | | | | | | | | | We had a variety of issues with sorted list compare functions. This commit identifies and fixes these issues. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
* | ospf6d: fix two "show" commandsRenato Westphal2018-10-201-2/+12
|/ | | | | | | | | | | | The "show ipv6 ospf6 interface [IFNAME] prefix" command shouldn't accept the "match" keyword when a prefix is not given, otherwise ospf6d will crash. Fixes the following crashes: ospf6d aborted: vtysh -c "show ipv6 ospf6 interface eth99 prefix match" ospf6d aborted: vtysh -c "show ipv6 ospf6 interface prefix match" Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
* ospf6d: fix ospf6 crash in inp lsa processingChirag Shah2018-10-121-1/+1
| | | | | | | | | | | | | | | Use ospf6_prefix_same for comparing two exact same prefix to determine ECMP for a route. ospf6_route_cmp expects two different prefix rather being exactly same. Ticket:CM-22630 Testing Done: performed ECMP of intra network prefix route via sending same route via different available ospf6 paths. Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
* Merge pull request #3120 from opensourcerouting/remove-list-deleteLou Berger2018-10-025-8/+8
|\ | | | | lib: remove deprecated list_delete()/list_free()
| * *: list_delete_and_null() -> list_delete()David Lamparter2018-10-025-8/+8
| | | | | | | | Signed-off-by: David Lamparter <equinox@diac24.net>
* | ospf6d: dead code (Coverity 1399231)F. Aragon2018-10-021-2/+3
|/ | | | | | | The dead code has been disabled with '#if 0', in a similar way to other disabled logs in the same function. Signed-off-by: F. Aragon <paco@voltanet.io>
* Merge pull request #3086 from patrasar/1836David Lamparter2018-10-011-0/+1
|\ | | | | ospfd: handling of OSPF_AREA_RANGE_ADVERTISE flag
| * ospfd: handling of OSPF_AREA_RANGE_ADVERTISE flagSarita Patra2018-09-251-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Issue: # https://github.com/FRRouting/frr/issues/1836 Issue 1: if the router ospf current configuration is "area 0.0.0.2 range 1.0.0.0/24 cost 23" and user try to configure "area 0.0.0.2 range 1.0.0.0/24 not-advertise", the existing o/p is "area 0.0.0.2 range 1.0.0.0/24 cost 23 not-advertise". The keywords "not-advertise" & "cost" are multually exclusive, so they should not come together. The vice versa way configuration is working fine. Fix: When ospf area range "not-advertise", the cost should be initialized to OSPF_AREA_RANGE_COST_UNSPEC. Issue 2: if the router ospf current configuration "area 0.0.0.2 range 1.0.0.0/24 substitute 2.0.0.0/24" and user try to configure "area 0.0.0.2 range 1.0.0.0/24 not-advertise" the existing o/p is "area 0.0.0.2 range 1.0.0.0/24 not-advertise substitute 2.0.0.0/24". The keywords "not-advertise" & "substiture" are multually exclusive, so they should not come together. The vice versa way configuration is working fine. Fix: When ospf area range "not-advertise" is configured, ospf_area_range_substitute_unset() should be get called. Issue 3: if the router ospf6 current configuration is "area 0.0.0.2 range 2001::/64 cost 23" and user try to configure "area 0.0.0.2 range 2001::/64 advertise", the existing o/p is area 0.0.0.2 range 2001::/64. The keyword "cost 23" disappears. Fix: When ospf area range "advertise" is configured and the range is not NULL, the cost should not be modified. Signed-off-by: Sarita Patra <saritap@vmware.com>
* | ospf6d: null check (Coverity 1221441)F. Aragon2018-10-011-0/+1
|/ | | | Signed-off-by: F. Aragon <paco@voltanet.io>
* Merge pull request #3023 from qlyoung/ultimate-warning-reference-cards-renameDavid Lamparter2018-09-145-12/+12
|\ | | | | warning reference cards rename
| * *: style for EC replacementsQuentin Young2018-09-134-8/+8
| | | | | | | | Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
| * *: LIB_[ERR|WARN] -> EC_LIBQuentin Young2018-09-135-7/+7
| | | | | | | | Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
* | bgpd lib ospf6d pbrd tests zebra: shadowing fixesF. Aragon2018-09-131-3/+3
|/ | | | | | This fixes all remaining local variable shadowing cases Signed-off-by: F. Aragon <paco@voltanet.io>
* bgpd isisd ospf6d ospfd: variable shadowing fixesF. Aragon2018-09-121-3/+0
| | | | Signed-off-by: F. Aragon <paco@voltanet.io>
* Merge pull request #2977 from opensourcerouting/doc-fixDonald Sharp2018-09-091-1/+1
|\ | | | | build: fix not building docs w/o sphinx
| * build: fix not building docs w/o sphinxDavid Lamparter2018-09-091-1/+1
| | | | | | | | | | | | Can't build manpages without sphinx-build, oops... Signed-off-by: David Lamparter <equinox@diac24.net>
* | Merge pull request #2965 from opensourcerouting/buildfoo-20180904Donald Sharp2018-09-093-29/+23
|\ \ | |/ |/| more build fixes & warning-free build
| * ospf6d: remove extra struct in ospf6_lsa_handlerDavid Lamparter2018-09-093-29/+23
| | | | | | | | | | | | | | This serves no other purpose than to generate stupid warnings for overwritten initializers on old gcc versions. Signed-off-by: David Lamparter <equinox@diac24.net>
* | Merge pull request #2862 from opensourcerouting/non-recursiveDonald Sharp2018-09-092-16/+18
|\| | | | | final non-recursive make
| * *: cleanup .gitignore filesDavid Lamparter2018-09-081-16/+0
| | | | | | | | Signed-off-by: David Lamparter <equinox@diac24.net>
| * build: move vtysh & manpage listings to subdir.amDavid Lamparter2018-09-081-0/+18
| | | | | | | | | | | | | | Since we're now building through one large Makefile, we can easily put things with their daemons and crossreference nicely. Signed-off-by: David Lamparter <equinox@diac24.net>
* | *: fix clang-6 SA warningsDavid Lamparter2018-09-082-2/+3
|/ | | | | | | I don't see these in CI, but my local clang-6 does emit warnings for these. Signed-off-by: David Lamparter <equinox@diac24.net>
* ospf6d: Remove deprecated code after 1 yearDonald Sharp2018-08-301-15/+0
| | | | Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
* *: add a vrf update hook to be informed of the vrf namePhilippe Guibert2018-08-281-1/+1
| | | | | | | | The Vrf aliases can be known with a specific hook. That hook will then, from zebra propagate the information to the relevant zapi clients. The registration hook function is the same for all daemons. Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
* Merge pull request #2814 from qlyoung/fix-ospf6d-lsa-uaf-testDavid Lamparter2018-08-201-0/+2
|\ | | | | ospf6d: fix use after free on LSA
| * ospf6d: sanity check refcount correctnessQuentin Young2018-08-141-0/+2
| | | | | | | | | | | | | | Coverity warns about a possible double free; add an assert to make sure we never hit it, and hopefully silence Coverity. Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
* | *: use frr_elevate_privs() (1/2: coccinelle)David Lamparter2018-08-141-14/+7
| | | | | | | | Signed-off-by: David Lamparter <equinox@diac24.net>
* | *: rename ferr_zlog -> flog_err_sysQuentin Young2018-08-141-3/+4
| | | | | | | | Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
* | *: rename zlog_fer -> flog_errQuentin Young2018-08-145-10/+10
| | | | | | | | Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
* | ospfd: zlog_ferr facilityChirag Shah2018-08-141-2/+2
| | | | | | | | | | | | | | Ticket:CM-21333 Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com> Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
* | ospf6d: Update OSPFv3 to use new zlog_ferrDonald Sharp2018-08-145-13/+24
| | | | | | | | | | | | Update OSPFv3 to use the new zlog_ferr messages Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
* | Merge branch 'master' into bfd-finalDonald Sharp2018-08-145-25/+0
|\ \
| * \ Merge pull request #2830 from pacovn/Coverity_1221459_revertDavid Lamparter2018-08-131-1/+0
| |\ \ | | | | | | | | ospf6d: revert fix for Coverity 1221459
| | * | ospf6d: revert fix for Coverity 1221459F. Aragon2018-08-131-1/+0
| | |/ | | | | | | | | | | | | | | | | | | | | | The correction in commit 7edb6aa (PR #2502) was wrong, as it is was not taking in consideration the unlock counter. Thanks to @eqvinox for noticing it. Signed-off-by: F. Aragon <paco@voltanet.io>
| * / *: ALLOC calls cannot failDonald Sharp2018-08-114-24/+0
| |/ | | | | | | | | | | | | | | There is no need to check for failure of a ALLOC call as that any failure to do so will result in a assert happening. So we can safely remove all of this code. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
* | bgpd/ospf(6)d/pimd: hide BFD commands with timersRafael Zalamena2018-08-081-1/+6
| | | | | | | | | | | | | | | | Don't show BFD commands with timers since it might confuse users ("show running-config" won't display timers in client daemons anymore), but keep accepting this command from previous configurations. Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
* | bgpd/ospf(6)d/pimd: don't show BFD timersRafael Zalamena2018-08-081-0/+4
|/ | | | | | | | When BFD timers are configured, don't show it anymore in the daemon side. This will help us migrate the timers command from daemons to `bfdd`. Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
* lib, bgpd, ospf6d, ospfd, pimd: Allow finish to cleanup a bit moreDonald Sharp2018-08-031-3/+0
| | | | | | | | | | | | | | When calling route_map_finish, every place that we do we must first set the deletion event to NULL, or we will create an infinite loop, if we are using the delayed route-map application code. As such we might as well just make the route_map_finish code do this work, as that there is really no viable alternative here and route_map_finish should only be called on shutdown. This fixes an infinite loop in zebra on shutdown when there are route-maps. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
* libs, daemons: use const in route-map applyMark Stapp2018-07-231-7/+8
| | | | | | | Use 'const prefix *' in route-map apply apis; led to some corresponding changes in several daemons. Signed-off-by: Mark Stapp <mjs@voltanet.io>
* ospf6d: remove VERSION_TYPE_DEV from CONFDATE checksLou Berger2018-07-101-2/+2
| | | | Signed-off-by: Lou Berger <lberger@labn.net>
* Merge pull request #2562 from pacovn/Coverity_1221444_1221446_Out-of-bounds_readJafar Al-Gharaibeh2018-06-295-15/+24
|\ | | | | ospf6d: OoB read (Coverity 1221444 1221446)
| * ospf6d: OoB read (Coverity 1221444 1221446)paco2018-06-295-15/+24
| | | | | | | | Signed-off-by: F. Aragon <paco@voltanet.io>