Download raw body.
bgpd: limit flowspec size
On Mon, May 18, 2026 at 02:47:10PM +0200, Claudio Jeker wrote:
> Add a maximum size for a single flowspec rule. Currently 4000 bytes.
> Enforce this in both in the parsers but also in the RDE.
> In the RDE flowspec_valid() will error out if the lenght is too long
> but also pt_get_flow() and pt_add_flow() will error out.
> The fixed buffer in pt_get_flow() is now sized appropriately instead
> of using a arbitrary size.
>
> A size of 4000 is very luxurious and close to the max for regular BGP
> sessions.
ok modulo one typo:
> Index: bgpd/parse.y
[...]
> @@ -5695,9 +5695,16 @@ flow_to_flowspec(struct flowspec_context
> if (ctx->components[i] != NULL)
> len += ctx->complen[i] + 1;
>
> + if (len > FLOWSPEC_SIZE_MAX) {
> + yyerror("flowspec to long %d > %d", len, FLOWSPEC_SIZE_MAX);
too
bgpd: limit flowspec size