diff options
| author | Renato Westphal <renato@opensourcerouting.org> | 2019-01-04 11:55:15 -0200 |
|---|---|---|
| committer | Renato Westphal <renato@opensourcerouting.org> | 2019-01-18 16:15:41 -0200 |
| commit | bb5d09c90c277ed12aa41c84f8f9026b47694c60 (patch) | |
| tree | 2ed0e20c25f7b0a53e0e43609b71e839e0b7d8cf | |
| parent | 70fc94ca1d6063b64449b0971678521c021ac916 (diff) | |
ripd, ripngd: fix null pointer dereference in YANG RPCs
These RPCs should do nothing when RIP/RIPng aren't configured.
Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
| -rw-r--r-- | ripd/rip_northbound.c | 3 | ||||
| -rw-r--r-- | ripngd/ripng_northbound.c | 3 |
2 files changed, 6 insertions, 0 deletions
diff --git a/ripd/rip_northbound.c b/ripd/rip_northbound.c index 4e445bd46d..49bf90198a 100644 --- a/ripd/rip_northbound.c +++ b/ripd/rip_northbound.c @@ -1228,6 +1228,9 @@ static int clear_rip_route_rpc(const char *xpath, const struct list *input, struct list *list; struct listnode *listnode; + if (!rip) + return NB_OK; + /* Clear received RIP routes */ for (rp = route_top(rip->table); rp; rp = route_next(rp)) { list = rp->info; diff --git a/ripngd/ripng_northbound.c b/ripngd/ripng_northbound.c index 7993714e8d..69e207f443 100644 --- a/ripngd/ripng_northbound.c +++ b/ripngd/ripng_northbound.c @@ -785,6 +785,9 @@ static int clear_ripng_route_rpc(const char *xpath, const struct list *input, struct list *list; struct listnode *listnode; + if (!ripng) + return NB_OK; + /* Clear received RIPng routes */ for (rp = agg_route_top(ripng->table); rp; rp = agg_route_next(rp)) { list = rp->info; |
