mirror_frr/isisd
Donald Sharp 37a74717c7 *: Fix usage of bfd_adj_event
Valgrind reports:

469901-==469901==
469901-==469901== Conditional jump or move depends on uninitialised value(s)
469901:==469901==    at 0x3A090D: bgp_bfd_dest_update (bgp_bfd.c:416)
469901-==469901==    by 0x497469E: zclient_read (zclient.c:3701)
469901-==469901==    by 0x4955AEC: thread_call (thread.c:1684)
469901-==469901==    by 0x48FF64E: frr_run (libfrr.c:1126)
469901-==469901==    by 0x213AB3: main (bgp_main.c:540)
469901-==469901==  Uninitialised value was created by a stack allocation
469901:==469901==    at 0x3A0725: bgp_bfd_dest_update (bgp_bfd.c:376)
469901-==469901==
469901-==469901== Conditional jump or move depends on uninitialised value(s)
469901:==469901==    at 0x3A093C: bgp_bfd_dest_update (bgp_bfd.c:421)
469901-==469901==    by 0x497469E: zclient_read (zclient.c:3701)
469901-==469901==    by 0x4955AEC: thread_call (thread.c:1684)
469901-==469901==    by 0x48FF64E: frr_run (libfrr.c:1126)
469901-==469901==    by 0x213AB3: main (bgp_main.c:540)
469901-==469901==  Uninitialised value was created by a stack allocation
469901:==469901==    at 0x3A0725: bgp_bfd_dest_update (bgp_bfd.c:376)

On looking at bgp_bfd_dest_update the function call into bfd_get_peer_info
when it fails to lookup the ifindex ifp pointer just returns leaving
the dest and src prefix pointers pointing to whatever was passed in.

Let's do two things:

a) The src pointer was sometimes assumed to be passed in and sometimes not.
Forget that.  Make it always be passed in
b) memset the src and dst pointers to be all zeros.  Then when we look
at either of the pointers we are not making decisions based upon random
data in the pointers.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-02-07 14:59:53 -05:00
..
.gitignore *: cleanup .gitignore files 2018-09-08 21:30:42 +02:00
AUTHORS Add support of Traffic Engineering to IS-IS 2016-09-03 11:05:50 -04:00
fabricd.c * : update signature of thread_cancel api 2020-10-23 08:59:34 -04:00
fabricd.conf.sample fabricd: add new daemon as build of isisd 2018-09-05 11:38:12 +02:00
fabricd.h *: use the current project name (FRRouting) 2020-03-25 17:38:56 -04:00
isis_adjacency.c *: unify thread/event cancel macros 2020-10-23 12:16:52 -04:00
isis_adjacency.h isisd: if IS-IS is configured for v6, prefer v6 bfd sessions 2021-01-14 14:34:08 -05:00
isis_bfd.c *: Fix usage of bfd_adj_event 2021-02-07 14:59:53 -05:00
isis_bfd.h *: add BFD profile support for IS-IS 2020-07-10 11:28:43 +00:00
isis_bpf.c isisd: Remove #if 0 code 2021-01-28 13:45:44 -05:00
isis_circuit.c Merge pull request #7550 from volta-networks/fix_bfd_isis 2021-01-19 19:50:24 -05:00
isis_circuit.h Merge pull request #7550 from volta-networks/fix_bfd_isis 2021-01-19 19:50:24 -05:00
isis_cli.c isisd: Fix Attach-bit processing 2021-01-20 09:24:35 -05:00
isis_common.h *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
isis_constants.h isisd: Fix Attach-bit processing 2021-01-20 09:24:35 -05:00
isis_csm.c isisd: Always set circuit->isis on creation 2020-10-09 08:14:00 -04:00
isis_csm.h *: reindent 2017-07-17 14:04:07 +02:00
isis_dlpi.c isisd: Remove #if 0 code 2021-01-28 13:45:44 -05:00
isis_dr.c lib/xref: use to transport thread_* file/line/func 2021-02-01 17:20:41 +01:00
isis_dr.h isisd: reduce code duplication for levels 2018-12-04 12:49:25 +01:00
isis_dynhn.c tests, isisd: add IS-IS SPF unit tests 2020-08-26 20:16:19 -03:00
isis_dynhn.h tests, isisd: add IS-IS SPF unit tests 2020-08-26 20:16:19 -03:00
isis_errors.c isisd: detect Prefix-SID collisions and handle them appropriately 2020-11-04 17:12:30 -03:00
isis_errors.h isisd: detect Prefix-SID collisions and handle them appropriately 2020-11-04 17:12:30 -03:00
isis_events.c *: unify thread/event cancel macros 2020-10-23 12:16:52 -04:00
isis_events.h isisd: Replace isis_event_adjacency_state_change with a hook 2018-10-05 14:05:28 +02:00
isis_flags.c *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
isis_flags.h *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
isis_ldp_sync.c isisd: Prevent sending of uninited data to zebra 2021-01-30 14:15:54 -05:00
isis_ldp_sync.h ldpd, isisd, ospfd: Remove periodic ldp-sync hello message 2020-12-09 14:11:38 -05:00
isis_lfa.c isisd: remove two overly verbose LFA debug messages 2021-01-08 22:22:11 -03:00
isis_lfa.h isisd: implement Remote LFA 2021-01-08 22:22:11 -03:00
isis_lsp.c isisd: When adjacencies go up and down add support to modify attached-bit 2021-02-01 16:04:10 -05:00
isis_lsp.h isisd: introduce two LSP iteration functions 2020-08-26 20:16:19 -03:00
isis_main.c isisd: implement Remote LFA 2021-01-08 22:22:11 -03:00
isis_memory.c isisd: implement Remote LFA 2021-01-08 22:22:11 -03:00
isis_memory.h isisd: implement Remote LFA 2021-01-08 22:22:11 -03:00
isis_misc.c tests, isisd: add IS-IS SPF unit tests 2020-08-26 20:16:19 -03:00
isis_misc.h isisd: minor cleanup 2020-08-26 20:16:19 -03:00
isis_mt.c *: remove PRI[udx](8|16|32) 2020-07-14 10:43:40 +02:00
isis_mt.h *: use the current project name (FRRouting) 2020-03-25 17:38:56 -04:00
isis_nb_config.c isisd: Fix Attach-bit processing 2021-01-20 09:24:35 -05:00
isis_nb_notifications.c isisd: split northbound callbacks into multiple files 2019-10-29 21:49:14 -03:00
isis_nb_state.c isisd, yang: move IS-IS interface state data to the appropriate place 2020-05-15 23:47:43 -03:00
isis_nb.c isisd: Fix Attach-bit processing 2021-01-20 09:24:35 -05:00
isis_nb.h isisd: Fix Attach-bit processing 2021-01-20 09:24:35 -05:00
isis_network.h *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
isis_pdu_counter.c Minor adjustments to address CI warnings 2018-12-12 00:23:23 +00:00
isis_pdu_counter.h isisd: Provide statistics about sent/received PDU count 2018-12-07 19:45:14 +00:00
isis_pdu.c isisd: Fix Attach-bit processing 2021-01-20 09:24:35 -05:00
isis_pdu.h isisd: Add debug output for tx-queues 2018-12-07 19:45:14 +00:00
isis_pfpacket.c *: un-split strings across lines 2020-07-14 10:37:25 +02:00
isis_redist.c Merge pull request #7523 from donaldsharp/route_map_object_t 2020-11-17 07:16:12 -05:00
isis_redist.h isisd: Free created tables 2020-11-14 18:20:21 -05:00
isis_route.c isisd: implement Remote LFA 2021-01-08 22:22:11 -03:00
isis_route.h isisd: implement Remote LFA 2021-01-08 22:22:11 -03:00
isis_routemap.c *: Remove route_map_object_t from the system 2020-11-13 19:35:20 -05:00
isis_routemap.h *: reindent 2017-07-17 14:04:07 +02:00
isis_spf_private.h isisd: implement Remote LFA 2021-01-08 22:22:11 -03:00
isis_spf.c isisd: When adjacencies go up and down add support to modify attached-bit 2021-02-01 16:04:10 -05:00
isis_spf.h isisd: implement Remote LFA 2021-01-08 22:22:11 -03:00
isis_sr.c Merge pull request #7184 from opensourcerouting/anycast-sids-v4 2020-10-23 21:03:55 +02:00
isis_sr.h isisd: add support for Anycast-SIDs 2020-10-23 10:31:39 -03:00
isis_te.c isisd: replace inet_ntoa 2020-10-22 16:25:41 -04:00
isis_te.h isisd: Update TLVs processing for TE, RI & SR 2019-09-17 17:35:50 +02:00
isis_tlvs.c isisd: fix null pointer dereference when parsing LSP 2020-12-09 12:21:33 -03:00
isis_tlvs.h isisd: move and rename the infinity metric constants 2020-11-24 20:15:51 -03:00
isis_tx_queue.c * : update signature of thread_cancel api 2020-10-23 08:59:34 -04:00
isis_tx_queue.h *: use the current project name (FRRouting) 2020-03-25 17:38:56 -04:00
isis_vty_fabricd.c isisd : Transformational changes to support different VRFs. 2020-08-14 13:46:22 -07:00
isis_zebra.c isisd: implement Remote LFA 2021-01-08 22:22:11 -03:00
isis_zebra.h isisd: implement Remote LFA 2021-01-08 22:22:11 -03:00
isisd.c isisd: When adjacencies go up and down add support to modify attached-bit 2021-02-01 16:04:10 -05:00
isisd.conf.sample Isisd is now able to remove addresses from circuit and trigger LSP updates 2004-09-14 13:54:30 +00:00
isisd.h isisd: When adjacencies go up and down add support to modify attached-bit 2021-02-01 16:04:10 -05:00
iso_checksum.c *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
iso_checksum.h *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
Makefile build: non-recursive isisd 2017-08-04 11:09:50 +02:00
README More cleanup in isisd. 2005-01-01 21:12:56 +00:00
subdir.am isisd: add support for Topology Independent LFA (TI-LFA) 2020-10-14 16:27:37 -03:00

Constraints

  o Maximum number of interfaces 255