.description = "BGP has received a capability that it does not know how to decode. This may be due to a new feature that has not been coded into FRR or it may be a bug in the remote peer",
.suggestion = "Gather log files from here and from peer and open an Issue",
},
+ {
+ .code = BGP_WARN_INVALID_NEXTHOP_LENGTH,
+ .title = "BGP is attempting to write an invalid nexthop length value",
+ .description = "BGP is in the process of building NLRI information for a peer and has discovered an inconsistent internal state",
+ .suggestion = "Gather log files and open an Issue, restart FRR",
+ },
{
.code = END_FERR,
}
BGP_WARN_CAPABILITY_INVALID_DATA,
BGP_WARN_CAPABILITY_VENDOR,
BGP_WARN_CAPABILITY_UNKNOWN,
+ BGP_WARN_INVALID_NEXTHOP_LENGTH,
};
extern void bgp_error_init(void);
break;
default:
/* TODO: handle IPv6 nexthops */
- zlog_warn(
- "%s: %s: invalid MP nexthop length (AFI IP): %u",
- __func__, peer->host, nhlen);
+ flog_warn(BGP_WARN_INVALID_NEXTHOP_LENGTH,
+ "%s: %s: invalid MP nexthop length (AFI IP): %u",
+ __func__, peer->host, nhlen);
stream_free(s);
return NULL;
}
break;
default:
/* TODO: handle IPv4 nexthops */
- zlog_warn(
- "%s: %s: invalid MP nexthop length (AFI IP6): %u",
- __func__, peer->host, nhlen);
+ flog_warn(BGP_WARN_INVALID_NEXTHOP_LENGTH,
+ "%s: %s: invalid MP nexthop length (AFI IP6): %u",
+ __func__, peer->host, nhlen);
stream_free(s);
return NULL;
}