mirror_frr/bgpd/rfapi
Donald Sharp b8694ef44c bgpd: When creating extra from stack ensure it is zero'ed out
BGP code assumes that the extra data is zero'ed out.  Ensure that we
are not leaving any situation that the data on the stack is actually all
0's when we pass it around as a pointer later.

Please note in issue #5025, Lou reported a different valgrind
issue, which is not the same issue:

==7313== Conditional jump or move depends on uninitialised value(s)
==7313== at 0x181F9F: subgroup_announce_check (bgp_route.c:1555)
==7313== by 0x1A112B: subgroup_announce_table (bgp_updgrp_adv.c:641)
==7313== by 0x1A1340: subgroup_announce_route (bgp_updgrp_adv.c:704)
==7313== by 0x1A13E3: subgroup_coalesce_timer (bgp_updgrp_adv.c:331)
==7313== by 0x4EBA615: thread_call (thread.c:1531)
==7313== by 0x4E8AC37: frr_run (libfrr.c:1052)
==7313== by 0x1429E0: main (bgp_main.c:486)
==7313==
==7313== Conditional jump or move depends on uninitialised value(s)
==7313== at 0x201C0E: rfapi_vty_out_vncinfo (rfapi_vty.c:429)
==7313== by 0x18D0D6: route_vty_out (bgp_route.c:7481)
==7313== by 0x18DD76: bgp_show_table (bgp_route.c:9365)
==7313== by 0x1930C4: bgp_show_table_rd (bgp_route.c:9471)
==7313== by 0x1932A3: bgp_show (bgp_route.c:9510)
==7313== by 0x193E68: show_ip_bgp_json (bgp_route.c:10284)
==7313== by 0x4E6D024: cmd_execute_command_real.isra.2 (command.c:1072)
==7313== by 0x4E6F51E: cmd_execute_command (command.c:1131)
==7313== by 0x4E6F686: cmd_execute (command.c:1285)
==7313== by 0x4EBF9C4: vty_command (vty.c:516)
==7313== by 0x4EBFB9F: vty_execute (vty.c:1285)
==7313== by 0x4EC250F: vtysh_read (vty.c:2119)
==7313==

that is causing the actual crash.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2019-10-10 09:03:56 -04:00
..
bgp_rfapi_cfg.c bgpd, lib, ospf6d, ospfd, pimd, zebra: Rework routemap event callback 2019-05-10 18:43:21 -04:00
bgp_rfapi_cfg.h bgpd, ripngd: Convert to using new agg_table/route 2018-08-30 17:47:59 -04:00
rfapi_ap.c *: fix config.h/zebra.h include order 2018-09-08 21:30:42 +02:00
rfapi_ap.h *: reindent 2017-07-17 14:04:07 +02:00
rfapi_backend.h bgpd: Rename various variable names to something more appropriate 2018-10-09 14:26:30 -04:00
rfapi_descriptor_rfp_utils.c *: fix config.h/zebra.h include order 2018-09-08 21:30:42 +02:00
rfapi_descriptor_rfp_utils.h *: reindent 2017-07-17 14:04:07 +02:00
rfapi_encap_tlv.c *: reindent 2017-07-17 14:04:07 +02:00
rfapi_encap_tlv.h *: reindent 2017-07-17 14:04:07 +02:00
rfapi_import.c bgpd: When creating extra from stack ensure it is zero'ed out 2019-10-10 09:03:56 -04:00
rfapi_import.h bgpd: Rename various variable names to something more appropriate 2018-10-09 14:26:30 -04:00
rfapi_monitor.c bgpd: Rename various variable names to something more appropriate 2018-10-09 14:26:30 -04:00
rfapi_monitor.h bgpd: Rename various variable names to something more appropriate 2018-10-09 14:26:30 -04:00
rfapi_nve_addr.c bgpd, ripngd: Convert to using new agg_table/route 2018-08-30 17:47:59 -04:00
rfapi_nve_addr.h *: reindent 2017-07-17 14:04:07 +02:00
rfapi_private.h bgpd: Extract tunnel type from extended communities 2019-05-14 12:25:44 -07:00
rfapi_rib.c Treewide: use ANSI function definitions 2019-01-24 11:21:59 +01:00
rfapi_rib.h bgpd: Rename various variable names to something more appropriate 2018-10-09 14:26:30 -04:00
rfapi_vty.c bgpd: Extract tunnel type from extended communities 2019-05-14 12:25:44 -07:00
rfapi_vty.h bgpd, ripngd: Convert to using new agg_table/route 2018-08-30 17:47:59 -04:00
rfapi.c bgpd: Use defined constants for NHLEN instead of numeric values 2019-09-13 11:43:44 +03:00
rfapi.h rfapi: explicitly test against success of is_configured. 2017-10-09 11:21:03 -04:00
vnc_debug.c bgpd, pimd: Remove undebug commands 2019-04-03 16:17:26 -04:00
vnc_debug.h *: reindent 2017-07-17 14:04:07 +02:00
vnc_export_bgp_p.h bgpd: Rename various variable names to something more appropriate 2018-10-09 14:26:30 -04:00
vnc_export_bgp.c bgpd: Use defined constants for NHLEN instead of numeric values 2019-09-13 11:43:44 +03:00
vnc_export_bgp.h *: reindent 2017-07-17 14:04:07 +02:00
vnc_export_table.c bgpd, ripngd: Convert to using new agg_table/route 2018-08-30 17:47:59 -04:00
vnc_export_table.h bgpd, ripngd: Convert to using new agg_table/route 2018-08-30 17:47:59 -04:00
vnc_import_bgp_p.h bgpd: Rename various variable names to something more appropriate 2018-10-09 14:26:30 -04:00
vnc_import_bgp.c bgpd: Abstract bgp_table retrieving/setting from info pointer 2018-11-16 09:43:35 -05:00
vnc_import_bgp.h bgpd: Rename various variable names to something more appropriate 2018-10-09 14:26:30 -04:00
vnc_zebra.c lib: add frr_with_mutex() block-wrapper 2019-09-03 17:15:17 +02:00
vnc_zebra.h bgpd, ripngd: Convert to using new agg_table/route 2018-08-30 17:47:59 -04:00