summaryrefslogtreecommitdiff
path: root/isisd/isis_vty_fabricd.c
AgeCommit message (Collapse)Author
2025-03-05isisd:IS-IS hello packets not sent with configured hello timerZ-Yivon
Signed-off-by: Z-Yivon <202100460108@mail.sdu.edn.cn>
2024-10-13isisd: Remove circuit state check for openfabricDonatas Abraitis
If we have something like: ``` int eth1 ip router openfabric x ipv6 router openfabric x ``` And eth1 is removed, the first `ip router ...` fails and only `ipv6 router ...` is enabled. If we leave only: ``` int eth1 ipv6 router openfabric x ``` Then also, no interface is going to be enabled, which is weird too. Fixes: https://github.com/FRRouting/frr/issues/17075 Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2023-02-09*: auto-convert to SPDX License IDsDavid Lamparter
Done with a combination of regex'ing and banging my head against a wall. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2021-06-22isisd: using argv as a string name is categorically wrongDonald Sharp
We are passing around the system id using the variable name of `argv`. Let's name the variable correctly and pass it around correctly named. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-05-07isisd: rework BFD integrationIgor Ryzhov
Rewrite the BFD integration code to use the new library. Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2021-04-29isisd: allow arbitrary order of area/interface configurationIgor Ryzhov
Currently we don't allow to configure the interface before the area is configured. This approach has the following issues: 1. The area config can be deleted even when we have an interface config relying on it. The code is not ready for that - we'll have a whole bunch of stale pointers if user does that. 2. The code doesn't correctly process the event of changing the VRF for an interface. There is no mechanism to ensure that the area exists in the new VRF so currently the circuit still stays in the old VRF. This commit allows an arbitrary order of area/interface configuration. There is no more need to configure the area before configuring the interface. This change fixes both the issues. Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2021-02-09*: remove more sprintf()Quentin Young
Should be just a couple non-development, non-test occurrences of this function left now. Signed-off-by: Quentin Young <qlyoung@qlyoung.net>
2020-08-14isisd : Transformational changes to support different VRFs.Kaushik
1. Created a structure "isis master". 2. All the changes are related to handle ISIS with different vrf. 3. A new variable added in structure "isis" to store the vrf name. 4. The display commands for isis is changed to support different VRFs. Signed-off-by: Kaushik <kaushik@niralnetworks.com>
2020-07-21Merge pull request #6711 from GalaxyGorilla/bfd_isis_profilesQuentin Young
Add BFD profiles for IS-IS
2020-07-14*: un-split strings across linesDavid Lamparter
Remove mid-string line breaks, cf. workflow doc: .. [#tool_style_conflicts] For example, lines over 80 characters are allowed for text strings to make it possible to search the code for them: please see `Linux kernel style (breaking long lines and strings) <https://www.kernel.org/doc/html/v4.10/process/coding-style.html#breaking-long-lines-and-strings>`_ and `Issue #1794 <https://github.com/FRRouting/frr/issues/1794>`_. Scripted commit, idempotent to running: ``` python3 tools/stringmangle.py --unwrap `git ls-files | egrep '\.[ch]$'` ``` Signed-off-by: David Lamparter <equinox@diac24.net>
2020-07-10 *: add BFD profile support for IS-ISGalaxyGorilla
BFD profiles can now be used on the interface level like this: interface eth1 ip router isis 1 isis bfd isis bfd profile default Here the 'default' profile needs to be specified as usual in the bfdd configuration. Signed-off-by: GalaxyGorilla <sascha@netdef.org>
2020-03-09lib, *: add a common time interval formatting apiMark Stapp
Add a common api that formats a time interval into a string with different output for short and longer intervals. We do this in several places, for cli/ui output. Signed-off-by: Mark Stapp <mjs@voltanet.io>
2020-03-05*: use gmtime_r, localtime_r exclusivelyMark Stapp
Stop using gmtime() or localtime() everywhere. Signed-off-by: Mark Stapp <mjs@voltanet.io>
2019-07-09isisd: move old BFD command to fabricd onlyRafael Zalamena
The `isisd` will receive a northbound version of the BFD command, so this is the first step to implement it. Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
2019-05-29isisd: Remove warning about shadowing a variableChristian Franke
There is no need to redefine `struct isis_lsp *lsp` inside of the if condition. Let's just remove it. Signed-off-by: Christian Franke <chris@opensourcerouting.org>
2019-05-21*: rename new ForEach macros from the typesafe APIRenato Westphal
This is necessary to avoid a name collision with std::for_each from C++. Fixes the compilation of the gRPC northbound module. Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2019-04-27isisd: replace dict_* with DECLARE_RBTREEDavid Lamparter
Historically, isisd has been carrying around its own red-black tree to manage its LSP DB in. This replaces that with the newly-added DECLARE_RBTREE_*. This allows completely removing the dict_* code. Signed-off-by: David Lamparter <equinox@diac24.net>
2018-12-18isisd: retrofit the 'isis topology' commandEmanuele Di Pascale
Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
2018-12-18isisd: retrofit the 'isis [c|p]snp-interval' commandsEmanuele Di Pascale
Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
2018-12-18isisd: retrofit the 'isis hello-multiplier' commandEmanuele Di Pascale
Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
2018-12-18isisd: retrofit the 'isis hello-interval' commandEmanuele Di Pascale
Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
2018-12-18isisd: retrofit the 'isis metric' commandEmanuele Di Pascale
Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
2018-12-18isisd: retrofit the 'isis password' commandEmanuele Di Pascale
Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
2018-12-18isisd: retrofit the 'isis passive' commandEmanuele Di Pascale
Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
2018-12-18isisd: retrofit the 'purge-originator' commandEmanuele Di Pascale
Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
2018-12-18isisd: retrofit the 'spf-delay-ietf' commandEmanuele Di Pascale
Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
2018-12-18isisd: retrofit the 'spf-interval' commandEmanuele Di Pascale
Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
2018-12-18isisd: retrofit the 'lsp-mtu' commandEmanuele Di Pascale
Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
2018-12-18isisd: retrofit the 'max-lsp-lifetime' commandEmanuele Di Pascale
Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
2018-12-18isisd: retrofit the 'lsp-refresh-interval' commandEmanuele Di Pascale
Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
2018-12-18isisd: retrofit the 'lsp-gen-interval' commandEmanuele Di Pascale
Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
2018-12-18isisd: retrofit the 'area-password' and 'domain-password' cmdsEmanuele Di Pascale
Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
2018-12-18isisd: retrofit 'set-overload-bit' and 'set-attached-bit' cmdsEmanuele Di Pascale
Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
2018-12-18isisd: retrofit the 'net' commandEmanuele Di Pascale
This is a simple command but with a complex callback, the only one in isisd which uses the resource allocation API implemented in the northbound (i.e. the PREPARE phase). Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
2018-12-18isisd: retrofit 'router isis' and 'ip router isis' cmdsEmanuele Di Pascale
These are complex commands to retrofit, partly due to the number of different callbacks they touch. Additionally, in FRR adding an interface to an IS-IS area that does not exist also creates that area. To make sure that this behavior is kept, while at the same time keeping the northbound api consistent, we need to take extra care to call the appropriate callbacks to update the YANG tree. Note that many callbacks rely on the existence of the corresponding IS-IS area; when these callbacks are joined together in a single transaction, we need to ensure that the area creation is performed first, or the config will fail. For this reason, the isis instance create callback has been given a slightly lower priority than the others. Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
2018-12-12Minor adjustments to address CI warningsRodny Molina
2018-12-07fabricd: make triggered csnp delay configurableChristian Franke
Signed-off-by: Christian Franke <chris@opensourcerouting.org>
2018-12-07fabricd: Improve LSP flooding logChristian Franke
Also track when we received an LSP as do not reflood, as well as the time when we last considered flooding it. Signed-off-by: Christian Franke <chris@opensourcerouting.org>
2018-12-07fabricd: Add `show openfabric flooding` commandChristian Franke
Add a command to show to what neighbors an LSP has been flooded. Signed-off-by: Christian Franke <chris@opensourcerouting.org>
2018-12-07isisd: Provide better flooding debuggingChristian Franke
Show from where LSP flooding is triggered. Signed-off-by: Christian Franke <chris@opensourcerouting.org>
2018-09-05fabricd: add flooding algorithm debuggingChristian Franke
Add a command `debug openfabric flooding` to allow verification of correct operation of the OpenFabric flooding optimization algorithm. Signed-off-by: Christian Franke <chris@opensourcerouting.org>
2018-09-05fabricd: allow to configure tier-level advertisementChristian Franke
While OpenFabric calculates most tier numbers automatically by the fabric locality calculation algorithm, that algorithm requires two systems to be manually configured as tier 0, so it has reference points. Also, completely manual configuration is possible. To support this, introduce appropriate CLI commands and flood the configured information. Signed-off-by: Christian Franke <chris@opensourcerouting.org>
2018-09-05isis: Cleanup CLI, split into parts which are shared, fabricd and isisdChristian Franke
Remove isis_vty.c and create three new files isis_vty_common.c, isis_vty_fabricd.c and isis_vty_isisd.c which are built into both daemons, only fabricd and only isisd, respectively. Signed-off-by: Christian Franke <chris@opensourcerouting.org>