mirror_frr/zebra
Chirag Shah 5756dd1d07 zebra: unset sticky mac upon local deletion
if the local sticky mac delete request is received,
if there are associated neighbor entries present, mac's
only local flag is removed and marked as auto mac.

this results in next local mac learning automatically assumes
mac is sticky.

There is a case when bridge learning off is configured, user
configures sticky mac via bridge fdb add.
This MAC learns associated neighbor entry.
Later user deletes stick mac via bridge fdb del, this triggers
frr to delete mac but if there are neighbors present, frr marks
MAC as AUTO but does not remove sticky flag.
User enables bridge learning on which triggers
The mac to learn as dynamic entry and in absence of this
fix, the mac is marked as sticky.

Ticket:CM-24968
Reviewed By:CCR-8683
Testing Done:

Validated broken condition with internally reproduction
with fix and without.

Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
2019-05-10 11:10:42 -07:00
..
.gitignore *: cleanup .gitignore files 2018-09-08 21:30:42 +02:00
connected.c zebra: Be consistent in how we call rib_add( and rib_delete( with tableid 2019-05-06 13:42:23 -04:00
connected.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
debug.c zebra: Add detailed debugging command for NHT tracking 2019-03-27 16:22:22 -04:00
debug.h zebra: Add detailed debugging command for NHT tracking 2019-03-27 16:22:22 -04:00
if_ioctl_solaris.c zebra: remove all instances of strncpy 2019-02-25 17:52:37 +00:00
if_ioctl.c zebra: remove all instances of strncpy 2019-02-25 17:52:37 +00:00
if_netlink.c zebra: Modify how we display/store os description 2019-04-25 04:22:43 -04:00
if_netlink.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
if_sysctl.c *: spelchek 2018-10-25 20:10:57 +02:00
interface.c zebra: Modify how we display/store os description 2019-04-25 04:22:43 -04:00
interface.h zebra: Modify how we display/store os description 2019-04-25 04:22:43 -04:00
ioctl_solaris.c zebra: Dplane interface address install for non-netlink 2019-04-22 13:49:27 -04:00
ioctl_solaris.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
ioctl.c zebra: removing old intf address code 2019-04-22 13:49:27 -04:00
ioctl.h zebra: removing old intf address code 2019-04-22 13:49:27 -04:00
ipforward_proc.c zebra: fix includes 2018-09-06 20:56:41 +00:00
ipforward_solaris.c *: LIB_[ERR|WARN] -> EC_LIB 2018-09-13 19:34:28 +00:00
ipforward_sysctl.c *: style for EC replacements 2018-09-13 19:38:57 +00:00
ipforward.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
irdp_interface.c zebra: Move the master thread handler to the zrouter structure 2019-01-31 09:20:46 -05:00
irdp_main.c *: remove trailing newlines from zlog messages 2019-03-14 18:41:15 +00:00
irdp_packet.c *: remove trailing newlines from zlog messages 2019-03-14 18:41:15 +00:00
irdp.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
kernel_netlink.c zebra: Fix extended ack error message parsing 2019-03-26 01:20:29 -04:00
kernel_netlink.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
kernel_socket.c zebra: Be consistent in how we call rib_add( and rib_delete( with tableid 2019-05-06 13:42:23 -04:00
kernel_socket.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
label_manager.c zebra: label manager race condition fix 2019-04-05 15:39:03 +02:00
label_manager.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
main.c zebra: When shutting down actually close the socket 2019-03-27 16:19:28 -04:00
Makefile build: convert zebra/ to non-recursive build 2017-07-31 23:03:30 +02:00
redistribute.c doc, zebra: Remove "table X" command 2019-05-06 13:42:23 -04:00
redistribute.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
rib.h zebra: Use built in list handler for route entries now 2019-05-02 17:41:35 -04:00
router-id.c zebra: Remove struct zebra_t 2019-01-31 09:20:46 -05:00
router-id.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
rt_netlink.c zebra: Modify code so that dplane is responsible for indicating success/fail of install 2019-03-27 16:19:28 -04:00
rt_netlink.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
rt_socket.c zebra: Modify code so that dplane is responsible for indicating success/fail of install 2019-03-27 16:19:28 -04:00
rt.h zebra: removing old intf address code 2019-04-22 13:49:27 -04:00
rtadv.c zebra: Fix CLANG suggestion for braces on init of struct 2019-02-12 15:24:00 -05:00
rtadv.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
rtread_getmsg.c zebra: evpn remote delete fetch local entry 2018-12-31 14:40:31 -08:00
rtread_netlink.c zebra: evpn remote delete fetch local entry 2018-12-31 14:40:31 -08:00
rtread_sysctl.c zebra: evpn remote delete fetch local entry 2018-12-31 14:40:31 -08:00
rule_netlink.c zebra: Fix late memset of pbr rule in rule_netlink 2019-04-09 10:35:11 -04:00
rule_netlink.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
rule_socket.c zebra: Create zebra_dplane.c and .h 2018-09-19 18:29:55 -04:00
subdir.am zebra: Add code to allow us to add debug for mlag 2019-01-31 09:20:46 -05:00
table_manager.c *: list_delete_and_null() -> list_delete() 2018-10-02 11:40:52 +02:00
table_manager.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
testrib.conf zebra: Build the test client, can be useful, and add IPv6 to testrib.conf 2016-05-26 01:13:58 +00:00
zapi_msg.c zebra: fix zapi msg debugging dumps 2019-05-03 19:55:44 +00:00
zapi_msg.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
zebra_dplane.c zebra: Memory allocations do not fail 2019-05-03 05:05:19 -04:00
zebra_dplane.h zebra: add 'is broadcast' accessor for interface data 2019-04-22 13:49:27 -04:00
zebra_errors.c zebra: reject routes without nexthops 2019-01-14 15:58:26 -02:00
zebra_errors.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
zebra_fpm_dt.c *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
zebra_fpm_netlink.c lib: ZEBRA_NUM_OF -> array_size 2019-04-18 12:44:29 +02:00
zebra_fpm_private.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
zebra_fpm_protobuf.c lib: ZEBRA_NUM_OF -> array_size 2019-04-18 12:44:29 +02:00
zebra_fpm.c *: style for EC replacements 2018-09-13 19:38:57 +00:00
zebra_l2.c zebra: process mcast-grp rxed in the vxlan-device 2019-04-20 08:33:19 -07:00
zebra_l2.h zebra: header changes for l2 vni bum-mcast-grp handling 2019-04-20 08:33:19 -07:00
zebra_memory.c zebra: prefer DEFINE_MTYPE_STATIC for local memtypes 2019-02-11 21:46:06 +01:00
zebra_memory.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
zebra_mlag.c zebra: Add ability to send to all clients updated capability information 2019-01-31 09:28:39 -05:00
zebra_mlag.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
zebra_mpls_netlink.c zebra: convert PW updates to async dataplane 2019-01-25 10:45:57 -05:00
zebra_mpls_null.c zebra: convert PW updates to async dataplane 2019-01-25 10:45:57 -05:00
zebra_mpls_openbsd.c zebra: use const in dplane pw nhlfe accessors 2019-03-07 15:06:36 -05:00
zebra_mpls_vty.c bgpd, ospfd, pimd, zebra: Convert more use_json locations to bool 2018-09-04 17:39:04 +00:00
zebra_mpls.c *: remove null check before XFREE 2019-02-25 23:00:46 +00:00
zebra_mpls.h zebra: Modify lsp processing to be invoked as needed 2019-03-27 16:22:22 -04:00
zebra_mroute.c zebra: Add some additional vrf debug for retrieving mroute info 2018-09-17 09:22:31 -04:00
zebra_mroute.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
zebra_netns_id.c zebra: dead code (Coverity 1465497) 2018-10-02 15:45:44 +02:00
zebra_netns_id.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
zebra_netns_notify.c zebra: Move the master thread handler to the zrouter structure 2019-01-31 09:20:46 -05:00
zebra_netns_notify.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
zebra_ns.c zebra: start the netns notification mechanism after ns initialisation 2019-01-09 18:31:16 +01:00
zebra_ns.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
zebra_pbr.c *: return bool from boolean functions 2019-02-25 23:00:16 +00:00
zebra_pbr.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
zebra_ptm_redistribute.c zebra: Remove zclient->idinfo restrictions 2019-02-05 09:13:30 -05:00
zebra_ptm_redistribute.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
zebra_ptm.c *: remove trailing newlines from zlog messages 2019-03-14 18:41:15 +00:00
zebra_ptm.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
zebra_pw.c zebra: pseudowire event recovery (DoS fix) 2019-04-10 19:17:49 +02:00
zebra_pw.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
zebra_rib.c Merge pull request #4242 from donaldsharp/zebra_diet 2019-05-10 08:29:59 -03:00
zebra_rnh.c zebra: Remove linked list and replace with new LIST 2019-05-02 16:21:38 -04:00
zebra_rnh.h zebra: Remove linked list and replace with new LIST 2019-05-02 16:21:38 -04:00
zebra_routemap.c *: remove null check before XFREE 2019-02-25 23:00:46 +00:00
zebra_routemap.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
zebra_router.c doc, zebra: Remove "table X" command 2019-05-06 13:42:23 -04:00
zebra_router.h doc, zebra: Remove "table X" command 2019-05-06 13:42:23 -04:00
zebra_snmp.c *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
zebra_vrf.c Merge pull request #4242 from donaldsharp/zebra_diet 2019-05-10 08:29:59 -03:00
zebra_vrf.h zebra: maintain mcast tunnel origination and termination SG entries 2019-04-20 08:33:20 -07:00
zebra_vty.c doc, zebra: Remove "table X" command 2019-05-06 13:42:23 -04:00
zebra_vxlan_private.h zebra: maintain mcast tunnel origination and termination SG entries 2019-04-20 08:33:20 -07:00
zebra_vxlan.c zebra: unset sticky mac upon local deletion 2019-05-10 11:10:42 -07:00
zebra_vxlan.h zebra: header changes for l2 vni bum-mcast-grp handling 2019-04-20 08:33:19 -07:00
zebra.conf.sample *: Remove cvs control points 2017-12-05 17:28:12 -05:00
zserv.c doc, zebra: Remove "table X" command 2019-05-06 13:42:23 -04:00
zserv.h doc, zebra: Remove "table X" command 2019-05-06 13:42:23 -04:00