diff options
| author | Donald Sharp <sharpd@cumulusnetworks.com> | 2018-05-25 10:47:40 -0400 |
|---|---|---|
| committer | Donald Sharp <sharpd@cumulusnetworks.com> | 2018-05-30 08:03:13 -0400 |
| commit | 1e88567226fada65009c3cac635e5e280121eecc (patch) | |
| tree | 23dc9fd7010e3b4ad1c29d538ca90c365b8da5b4 /zebra/rt_netlink.c | |
| parent | 215181cbf144f86ee87965174029e76f88aec42b (diff) | |
zebra: Add a result from dataplane request
Add a bit of code to allow return of data plane
request messages.
Add the ability to pass the result back to callers
of kernel_route_rib.
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Diffstat (limited to 'zebra/rt_netlink.c')
| -rw-r--r-- | zebra/rt_netlink.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/zebra/rt_netlink.c b/zebra/rt_netlink.c index d902f03a40..a5f288f541 100644 --- a/zebra/rt_netlink.c +++ b/zebra/rt_netlink.c @@ -1689,8 +1689,9 @@ int kernel_get_ipmr_sg_stats(struct zebra_vrf *zvrf, void *in) return suc; } -void kernel_route_rib(struct route_node *rn, struct prefix *p, - struct prefix *src_p, +enum dp_req_result kernel_route_rib(struct route_node *rn, + struct prefix *p, + struct prefix *src_p, struct route_entry *old, struct route_entry *new) { @@ -1724,7 +1725,7 @@ void kernel_route_rib(struct route_node *rn, struct prefix *p, kernel_route_rib_pass_fail(rn, p, new, (!ret) ? DP_INSTALL_SUCCESS : DP_INSTALL_FAILURE); - return; + return DP_REQUEST_SUCCESS; } if (old) { @@ -1735,7 +1736,7 @@ void kernel_route_rib(struct route_node *rn, struct prefix *p, : DP_DELETE_FAILURE); } - return; + return DP_REQUEST_SUCCESS; } int kernel_neigh_update(int add, int ifindex, uint32_t addr, char *lla, |
