mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-07 06:03:10 +00:00
Merge pull request #6419 from vivek-cumulus/zebra_macfdb_fixup
Zebra macfdb fixup
This commit is contained in:
commit
6e19892fdf
@ -2561,10 +2561,15 @@ int kernel_neigh_update(int add, int ifindex, uint32_t addr, char *lla,
|
|||||||
/**
|
/**
|
||||||
* netlink_update_neigh_ctx_internal() - Common helper api for evpn
|
* netlink_update_neigh_ctx_internal() - Common helper api for evpn
|
||||||
* neighbor updates using dataplane context object.
|
* neighbor updates using dataplane context object.
|
||||||
|
* Here, a neighbor refers to a bridge forwarding database entry for
|
||||||
|
* either unicast forwarding or head-end replication or an IP neighbor
|
||||||
|
* entry.
|
||||||
* @ctx: Dataplane context
|
* @ctx: Dataplane context
|
||||||
* @cmd: Netlink command (RTM_NEWNEIGH or RTM_DELNEIGH)
|
* @cmd: Netlink command (RTM_NEWNEIGH or RTM_DELNEIGH)
|
||||||
* @mac: A neighbor cache link layer address
|
* @mac: A neighbor cache link layer address
|
||||||
* @ip: A neighbor cache n/w layer destination address
|
* @ip: A neighbor cache n/w layer destination address
|
||||||
|
* In the case of bridge FDB, this represnts the remote
|
||||||
|
* VTEP IP.
|
||||||
* @replace_obj: Whether NEW request should replace existing object or
|
* @replace_obj: Whether NEW request should replace existing object or
|
||||||
* add to the end of the list
|
* add to the end of the list
|
||||||
* @family: AF_* netlink family
|
* @family: AF_* netlink family
|
||||||
@ -2984,7 +2989,6 @@ netlink_macfdb_update_ctx(struct zebra_dplane_ctx *ctx, uint8_t *data,
|
|||||||
int cmd;
|
int cmd;
|
||||||
uint8_t flags;
|
uint8_t flags;
|
||||||
uint16_t state;
|
uint16_t state;
|
||||||
uint8_t nl_pkt[NL_PKT_BUF_SIZE];
|
|
||||||
|
|
||||||
cmd = dplane_ctx_get_op(ctx) == DPLANE_OP_MAC_INSTALL
|
cmd = dplane_ctx_get_op(ctx) == DPLANE_OP_MAC_INSTALL
|
||||||
? RTM_NEWNEIGH : RTM_DELNEIGH;
|
? RTM_NEWNEIGH : RTM_DELNEIGH;
|
||||||
@ -3023,9 +3027,8 @@ netlink_macfdb_update_ctx(struct zebra_dplane_ctx *ctx, uint8_t *data,
|
|||||||
}
|
}
|
||||||
|
|
||||||
total = netlink_update_neigh_ctx_internal(
|
total = netlink_update_neigh_ctx_internal(
|
||||||
ctx, cmd, dplane_ctx_mac_get_addr(ctx),
|
ctx, cmd, dplane_ctx_mac_get_addr(ctx), &vtep_ip,
|
||||||
dplane_ctx_neigh_get_ipaddr(ctx), true, AF_BRIDGE, 0,
|
true, AF_BRIDGE, 0, flags, state, data, datalen);
|
||||||
flags, state, nl_pkt, sizeof(nl_pkt));
|
|
||||||
|
|
||||||
return total;
|
return total;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user