]> git.puffer.fish Git - matthieu/frr.git/commitdiff
bgpd: Add a sanitify check for bgp_nexthop_cache against NULL
authorDonatas Abraitis <donatas.abraitis@gmail.com>
Thu, 16 Apr 2020 13:13:01 +0000 (16:13 +0300)
committerDonatas Abraitis <donatas.abraitis@gmail.com>
Thu, 16 Apr 2020 13:13:01 +0000 (16:13 +0300)
In real world sometimes happens that bgp_nexthop_cache is NULL. Avoid
segfaulting when using `show [ip] bgp ...` CLI commands.

Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
bgpd/bgp_route.c

index fc6b4ce7f954c09b6c3a6c7906b0fe8da0d45241..8320667ead38c147ebb1d8f3b55e4ac9d9b5e311 100644 (file)
@@ -7544,7 +7544,7 @@ static char *bgp_nexthop_hostname(struct peer *peer,
                                  struct bgp_nexthop_cache *bnc)
 {
        if (peer->hostname
-           && CHECK_FLAG(peer->bgp->flags, BGP_FLAG_SHOW_HOSTNAME)
+           && CHECK_FLAG(peer->bgp->flags, BGP_FLAG_SHOW_HOSTNAME) && bnc
            && CHECK_FLAG(bnc->flags, BGP_NEXTHOP_CONNECTED))
                return peer->hostname;
        return NULL;