From: Yu Watanabe Date: Thu, 17 Sep 2020 08:16:49 +0000 (+0900) Subject: network: tc: refuse to set 0 for FlowQueuePIE.PacketLimit= X-Git-Tag: v247-rc1~212^2~1 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=fdeecf7bba0322f526b20aeff8695c21d6bd7cc1;p=thirdparty%2Fsystemd.git network: tc: refuse to set 0 for FlowQueuePIE.PacketLimit= --- diff --git a/src/network/tc/fq-pie.c b/src/network/tc/fq-pie.c index 47fa86b450c..3065ac0150a 100644 --- a/src/network/tc/fq-pie.c +++ b/src/network/tc/fq-pie.c @@ -52,6 +52,7 @@ int config_parse_fq_pie_packet_limit( _cleanup_(qdisc_free_or_set_invalidp) QDisc *qdisc = NULL; FlowQueuePIE *fq_pie; Network *network = data; + uint32_t val; int r; assert(filename); @@ -75,14 +76,21 @@ int config_parse_fq_pie_packet_limit( return 0; } - r = safe_atou32(rvalue, &fq_pie->packet_limit); + r = safe_atou32(rvalue, &val); if (r < 0) { log_syntax(unit, LOG_WARNING, filename, line, r, "Failed to parse '%s=', ignoring assignment: %s", lvalue, rvalue); return 0; } + if (val == 0) { + log_syntax(unit, LOG_WARNING, filename, line, 0, + "Invalid '%s=', ignoring assignment: %s", + lvalue, rvalue); + return 0; + } + fq_pie->packet_limit = val; qdisc = NULL; return 0;