forked from Mirror/frr
lib: Convert routemap.c to use new error-code subsystem
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
This commit is contained in:
parent
ff245f0e02
commit
040c7c3a9f
|
@ -46,6 +46,12 @@ static struct log_ref ferr_lib_warn[] = {
|
|||
.description = "The Event subsystem has detected a slow process, this typically indicates that FRR is having trouble completing work in a timely manner. This can be either a misconfiguration, bug, or some combination therof.",
|
||||
.suggestion = "Gather log data and open an Issue",
|
||||
},
|
||||
{
|
||||
.code = LIB_WARN_RMAP_RECURSION_LIMIT,
|
||||
.title = "Reached the Route-Map Recursion Limit",
|
||||
.description = "The Route-Map subsystem has detected a route-map depth of RMAP_RECURSION_LIMIT and has stopped processing",
|
||||
.suggestion = "Re-work the Route-Map in question to not have so many route-map statements, or recompile FRR with a higher limit",
|
||||
},
|
||||
{
|
||||
.code = END_FERR,
|
||||
},
|
||||
|
|
|
@ -42,6 +42,7 @@ enum lib_log_refs {
|
|||
LIB_WARN_STREAM,
|
||||
LIB_WARN_LINUX_NS,
|
||||
LIB_WARN_SLOW_THREAD,
|
||||
LIB_WARN_RMAP_RECURSION_LIMIT,
|
||||
};
|
||||
|
||||
extern void lib_error_init(void);
|
||||
|
|
|
@ -30,6 +30,7 @@
|
|||
#include "log.h"
|
||||
#include "hash.h"
|
||||
#include "libfrr.h"
|
||||
#include "lib_errors.h"
|
||||
|
||||
DEFINE_MTYPE_STATIC(LIB, ROUTE_MAP, "Route map")
|
||||
DEFINE_MTYPE(LIB, ROUTE_MAP_NAME, "Route map name")
|
||||
|
@ -1445,7 +1446,8 @@ route_map_result_t route_map_apply(struct route_map *map,
|
|||
struct route_map_rule *set;
|
||||
|
||||
if (recursion > RMAP_RECURSION_LIMIT) {
|
||||
zlog_warn(
|
||||
flog_warn(
|
||||
LIB_WARN_RMAP_RECURSION_LIMIT,
|
||||
"route-map recursion limit (%d) reached, discarding route",
|
||||
RMAP_RECURSION_LIMIT);
|
||||
recursion = 0;
|
||||
|
|
Loading…
Reference in a new issue