summaryrefslogtreecommitdiff
path: root/isisd
AgeCommit message (Collapse)Author
2018-12-13*: spelchekDavid Lamparter
Signed-off-by: David Lamparter <equinox@diac24.net>
2018-10-25build: fix not building docs w/o sphinxDavid Lamparter
Can't build manpages without sphinx-build, oops... Signed-off-by: David Lamparter <equinox@diac24.net>
2018-10-25*: cleanup .gitignore filesDavid Lamparter
Signed-off-by: David Lamparter <equinox@diac24.net>
2018-10-25build: move vtysh & manpage listings to subdir.amDavid Lamparter
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>
2018-08-25isisd: Include header for function declarationDonald Sharp
isis_handle_pdu is called but not declared for usage by not including the appropriate header. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2018-08-22isisd, ospfd, tests: Switch to using stream_resize_inplaceDonald Sharp
Switch code and tests to use new stream_resize_inplace functionality. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2018-08-14*: frr_elevate_privs whitespace fixesDavid Lamparter
(... and one superfluous variable removed) Signed-off-by: David Lamparter <equinox@diac24.net>
2018-08-14*: use frr_elevate_privs() (1/2: coccinelle)David Lamparter
Signed-off-by: David Lamparter <equinox@diac24.net>
2018-08-14*: rename ferr_ref -> log_refQuentin Young
Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
2018-08-14*: rename zlog_fer -> flog_errQuentin Young
Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
2018-08-14*: stop double initialization of ferrQuentin Young
* Stop double init of ferr * Fixup bugs in zebra ferr * Add missing init in ospfd Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
2018-08-14*: fix source file headers & includes for errcodesQuentin Young
* Use the correct license header * Stop headers from including themselves * Use uniform relative include conventions * Ensure that sources include what they use * Turn off clang-format around struct array blocks Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
2018-08-14isisd: Cleanup compile issueDonald Sharp
cleanup compile with missnamed enum usage. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2018-08-14isisd: Add isis_errors and generate custom Error CodesDonald Sharp
Generate appropriate error codes for ISIS. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2018-08-14isisd: Convert to use LIB_ERR_XXXDonald Sharp
Where an obvious choice could be made about converting to a LIB_ERR_XXX function do so. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2018-08-11*: ALLOC calls cannot failDonald Sharp
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>
2018-08-03isisd: fix refcounting in isis_route.cChristian Franke
This fixes multiple issues and inefficiencies regarding the usage of route_tables in isis_route.c and removes some memory leaks. Signed-off-by: Christian Franke <chris@opensourcerouting.org>
2018-08-03isisd: make spf code dst-src awareChristian Franke
Take the source-prefix sub-TLV into consideration when running SPF and support creation/deletion of dst-src routes as result. Signed-off-by: Christian Franke <chris@opensourcerouting.org>
2018-08-03isisd: don't infer spftree from address familyChristian Franke
Instead of using the address family to determine which spftree structure should be used, specify it explicitly. With the advent of ipv6 dst-src routing, the tree cannot be uniquely determined from the family. Signed-off-by: Christian Franke <chris@opensourcerouting.org>
2018-08-03isisd: make use of advanced concepts like arrays and loopsChristian Franke
Have an array of spftrees instead of a separate spftree and an spftree6 for which all the code gets duplicated. Signed-off-by: Christian Franke <chris@opensourcerouting.org>
2018-08-03isisd: fix isis_route_merge_verify logicChristian Franke
This addresses two issues for L1L2 operation: a) If an L1 route has ROUTE_ACTIVE unset and an L2 route for the same destination has ROUTE_ACTIVE set, isisd would still put the L1 route into the merged table. This causes the route for the destination to get uninstalled from zebra until the next SPF run, which is incorrect. To fix this, look at the ROUTE_ACTIVE flag and allow L2 routes to win against L1 routes, when the L1 has ROUTE_ACTIVE unset. b) If an L1 route wins against an existing L2 route, the ZEBRA_SYNCED flag would remain on the L2 route. This leads to the problem that when the L1 route disappears again, the L2 doesn't get reinstalled, since isisd assumes it's already in the RIB because ZEBRA_SYNCED is set. Solve this by clearing ZEBRA_SYNCED on L2 routes, if they lose against an L1 route. Signed-off-by: Christian Franke <chris@opensourcerouting.org>
2018-08-03isisd: fix redist_delete to also consider level-2Christian Franke
There was an off-by-one error in redist_delete, so that routes redistributed into level-2 could never be withdrawn. Signed-off-by: Christian Franke <chris@opensourcerouting.org>
2018-08-03isisd: move route_table into spftreeChristian Franke
As isisd's route_tables are directly related to spf trees, move the route tables into the spftree instead of maintaining them alongside of the spftrees. Signed-off-by: Christian Franke <chris@opensourcerouting.org>
2018-08-03isisd: learn and advertise IPv6 dst-src routesChristian Franke
Receive IPv6 dst-src routes from zebra and advertise them in our LSPs if so configured. Signed-off-by: Christian Franke <chris@opensourcerouting.org>
2018-08-03isisd: add debug message if adjacency is ignored because IP is unusableChristian Franke
isisd verifies whether the neighboring IPv4 addresses overlap with its own unless the interface is running in unnumbered mode. If no overlap is found and IPv6 is also not enabled, IIHs will be ignored. Add a debug message for this case, to avoid people wondering why adjacencies are not coming up. Signed-off-by: Christian Franke <chris@opensourcerouting.org>
2018-07-23libs, daemons: use const in route-map applyMark Stapp
Use 'const prefix *' in route-map apply apis; led to some corresponding changes in several daemons. Signed-off-by: Mark Stapp <mjs@voltanet.io>
2018-07-19isisd: don't crash when isis_sock_init failsChristian Franke
When isis_sock_init fails in isis_circuit_up, isis_circuit_down would be called to cancel timers which were scheduled. However isis_circuit_down would immediately return, since the state had not been changed to 'UP' yet. Fix this by having isis_circuit_down always cancel all the timers. Signed-off-by: Christian Franke <chris@opensourcerouting.org>
2018-06-29Merge pull request #2588 from pacovn/Clang_dereference1Russ White
bgpd isisd: null check (Clang scan)
2018-06-29Merge pull request #2587 from pacovn/Clang_scan_dead_codeQuentin Young
isisd zebra: dead code (Clang scan)
2018-06-29bgpd isisd: null check (Clang scan)F. Aragon
This correction fixes three bugs detected by Clang scan: Bug Group: Logic error Bug Type: Dereference of null pointer File: bgpd/bgp_evpn.c Function: bgp_evpn_unconfigure_import_rt_for_vrf Line: 4246 File: isisd/isis_spf.c Function: isis_print_paths Line: 69 (two bugs of same type in one line) Signed-off-by: F. Aragon <paco@voltanet.io>
2018-06-29isisd zebra: dead code (Clang scan)F. Aragon
This correction fixes two bugs detected by Clang scan: Bug Group: Dead store Bug Type: Dead assignment File: zebra/kernel_netlink.c Function: netlink_parse_extended_ack Line: 548 Bug Type: Dead increment File: isisd/isis_lsp.c Function: lsp_bits2string Line: 625 Signed-off-by: F. Aragon <paco@voltanet.io>
2018-06-28Merge pull request #2579 from ↵Quentin Young
pacovn/Coverity_1424370_Unchecked_return_value_from_library isisd: return check (Coverity 1424370)
2018-06-28isisd: null check (Coverity 1424529)F. Aragon
Signed-off-by: F. Aragon <paco@voltanet.io>
2018-06-28isisd: return check (Coverity 1424370)F. Aragon
Signed-off-by: F. Aragon <paco@voltanet.io>
2018-06-25isisd: out-of-bounds access (Coverity 1452552)paco
Signed-off-by: F. Aragon <paco@voltanet.io>
2018-06-21Merge pull request #2501 from pacovn/infer_unused1Quentin Young
bgpd isisd ldpd lib ospfd pimd: redundancy (infer, grouped)
2018-06-20bgpd isisd ldpd lib ospfd pimd: redundancy (infer)paco
Signed-off-by: F. Aragon <paco@voltanet.io>
2018-06-19isisd, zebra: FIXME fixespaco
Signed-off-by: F. Aragon <paco@voltanet.io>
2018-06-19eigrpd, isisd, lib, ospfd: no effect (cppcheck)paco
Assignment of function parameter has no effect outside the function. Signed-off-by: F. Aragon <paco@voltanet.io>
2018-06-15isisd: out-of-bounds access (Coverity 1399309)paco
Signed-off-by: F. Aragon <paco@voltanet.io>
2018-06-01Merge pull request #2309 from opensourcerouting/master-mpls_te_print_detail-fixOlivier Dugeon
isisd: fix mpls_te_print_detail to not read out-of-bounds
2018-05-31isisd: fix mpls_te_print_detail to not read out-of-boundsChristian Franke
2018-05-28isisd: fix bug in tlv_copy of empty MT-router-infoChristian Franke
2018-05-08isisd: use 0 as default-metric for redistributionChristian Franke
Signed-off-by: Christian Franke <chris@opensourcerouting.org>
2018-04-23isisd: resolve possible null pointer dereferenceIlya Shipitsin
issue found by cppcheck [isisd/dict.c:1320] -> [isisd/dict.c:1065]: (warning) Either the condition '!dn' is redundant or there is possible null pointer dereference: newnode. [isisd/dict.c:1320] -> [isisd/dict.c:1068]: (warning) Either the condition '!dn' is redundant or there is possible null pointer dereference: newnode. Signed-off-by: Ilya Shipitsin <chipitsine@gmail.com> Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2018-03-27*: use C99 standard fixed-width integer typesQuentin Young
The following types are nonstandard: - u_char - u_short - u_int - u_long - u_int8_t - u_int16_t - u_int32_t Replace them with the C99 standard types: - uint8_t - unsigned short - unsigned int - unsigned long - uint8_t - uint16_t - uint32_t Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
2018-03-19Merge pull request #1925 from opensourcerouting/bugfix-isis_bpf_readDonald Sharp
isisd: Fixed the way isis reads from bpf
2018-03-19isisd: Fixed the way isis reads from bpfipinlnd
With this fix, we parse the bpf to process every packet read Signed-off-by: Ali Rezaee nlndipi@hotmail.com
2018-03-14Merge branch 'master' into working/master/bgp-vpn-vrf-leakingpaulzlabn
2018-03-10isisd: add nerd-knob to turn three-way-adj offChristian Franke
Signed-off-by: Christian Franke <chris@opensourcerouting.org>