Pipe: Propagate debug flags from protocol to channels
Pipe channels are kind-of implicit, so setting protocol debug flags should also set pipe debug flags.
This commit is contained in:
parent
ae9ae864d3
commit
2f98153490
2 changed files with 19 additions and 0 deletions
|
@ -2210,10 +2210,17 @@ proto_cmd_reload(struct proto *p, uintptr_t dir, int cnt UNUSED)
|
||||||
cli_msg(-15, "%s: reloading", p->name);
|
cli_msg(-15, "%s: reloading", p->name);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
extern void pipe_update_debug(struct proto *P);
|
||||||
|
|
||||||
void
|
void
|
||||||
proto_cmd_debug(struct proto *p, uintptr_t mask, int cnt UNUSED)
|
proto_cmd_debug(struct proto *p, uintptr_t mask, int cnt UNUSED)
|
||||||
{
|
{
|
||||||
p->debug = mask;
|
p->debug = mask;
|
||||||
|
|
||||||
|
#ifdef CONFIG_PIPE
|
||||||
|
if (p->proto == &proto_pipe)
|
||||||
|
pipe_update_debug(p);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|
|
@ -141,6 +141,8 @@ pipe_postconfig(struct proto_config *CF)
|
||||||
|
|
||||||
if (cc->in_keep_filtered)
|
if (cc->in_keep_filtered)
|
||||||
cf_error("Pipe protocol prohibits keeping filtered routes");
|
cf_error("Pipe protocol prohibits keeping filtered routes");
|
||||||
|
|
||||||
|
cc->debug = cf->c.debug;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
|
@ -155,6 +157,7 @@ pipe_configure_channels(struct pipe_proto *p, struct pipe_config *cf)
|
||||||
.out_filter = cc->out_filter,
|
.out_filter = cc->out_filter,
|
||||||
.in_limit = cc->in_limit,
|
.in_limit = cc->in_limit,
|
||||||
.ra_mode = RA_ANY,
|
.ra_mode = RA_ANY,
|
||||||
|
.debug = cc->debug,
|
||||||
.rpki_reload = cc->rpki_reload,
|
.rpki_reload = cc->rpki_reload,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -165,6 +168,7 @@ pipe_configure_channels(struct pipe_proto *p, struct pipe_config *cf)
|
||||||
.out_filter = cc->in_filter,
|
.out_filter = cc->in_filter,
|
||||||
.in_limit = cc->out_limit,
|
.in_limit = cc->out_limit,
|
||||||
.ra_mode = RA_ANY,
|
.ra_mode = RA_ANY,
|
||||||
|
.debug = cc->debug,
|
||||||
.rpki_reload = cc->rpki_reload,
|
.rpki_reload = cc->rpki_reload,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -278,6 +282,14 @@ pipe_show_proto_info(struct proto *P)
|
||||||
pipe_show_stats(p);
|
pipe_show_stats(p);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
pipe_update_debug(struct proto *P)
|
||||||
|
{
|
||||||
|
struct pipe_proto *p = (void *) P;
|
||||||
|
|
||||||
|
p->pri->debug = p->sec->debug = p->p.debug;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
struct protocol proto_pipe = {
|
struct protocol proto_pipe = {
|
||||||
.name = "Pipe",
|
.name = "Pipe",
|
||||||
|
|
Loading…
Reference in a new issue