Skip to content

Commit e647a24

Browse files
committed
MINOR: cfgparse-quic: reject unexpected args for quic-cc-algo
1 parent 3021dce commit e647a24

File tree

1 file changed

+16
-9
lines changed

1 file changed

+16
-9
lines changed

src/cfgparse-quic.c

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -113,19 +113,26 @@ static int bind_parse_quic_cc_algo(char **args, int cur_arg, struct proxy *px,
113113
}
114114

115115
if (*arg++ == '(') {
116-
unsigned long cwnd;
117116
char *end_opt;
118117

119-
cwnd = parse_window_size(args[cur_arg], arg, &end_opt, err);
120-
if (!cwnd)
121-
goto fail;
118+
if (cc_algo == &quic_cc_algo_nocc) {
119+
unsigned long cwnd = parse_window_size(args[cur_arg], arg, &end_opt, err);
120+
if (!cwnd)
121+
goto fail;
122122

123-
if (*end_opt != ')') {
124-
memprintf(err, "'%s' : expects %s(<max window>)", args[cur_arg + 1], algo);
125-
goto fail;
126-
}
123+
if (*end_opt != ')') {
124+
memprintf(err, "'%s' : expects %s(<max window>)", args[cur_arg + 1], algo);
125+
goto fail;
126+
}
127127

128-
conf->max_cwnd = cwnd;
128+
conf->max_cwnd = cwnd;
129+
}
130+
else {
131+
if (*arg++ != ')') {
132+
memprintf(err, "'%s' : unexpected extra argument for '%s' algorithm", args[cur_arg], algo);
133+
goto fail;
134+
}
135+
}
129136
}
130137

131138
conf->quic_cc_algo = cc_algo;

0 commit comments

Comments
 (0)