2 Commits
Author SHA1 Message Date
Nils Andreas Svee 4029ce763d fix(config): reject empty reflector host entries
Build binaries / Build (arm-musleabi) (push) Successful in 2m30s
Build binaries / Build (aarch64-musl) (push) Successful in 2m31s
Build binaries / Build (armv7-musleabi) (push) Successful in 1m44s
Build binaries / Build (arm-musleabihf) (push) Successful in 1m44s
Build binaries / Build (armv7-musleabihf) (push) Successful in 1m40s
Build binaries / Build (i686-musl) (push) Successful in 1m40s
Build binaries / Build (mips-musl) (push) Successful in 2m6s
Build binaries / Build (mips64-muslabi64) (push) Successful in 2m7s
Build binaries / Build (mips64el-muslabi64) (push) Successful in 2m20s
Build binaries / Build (mipsel-musl) (push) Successful in 2m21s
Build binaries / Build (x86_64-musl) (push) Successful in 1m47s
Build binaries / Build (riscv64gc-musl) (push) Successful in 1m54s
2026-10-14 01:34:51 +07:00
Nils Andreas Svee 69647e1ffe fix(reflectors): account for partial peer sets when requesting reselection 2026-10-14 01:34:40 +07:00
2 changed files with 7 additions and 1 deletions

No files matched your search

+1 -1
View File
@@ -491,7 +491,7 @@ impl<S: InterfaceStatsProvider, T: TrafficControlBackend> Ratecontroller<S, T> {
self.state_dl.deltas = down_deltas;
self.state_ul.deltas = up_deltas;
let minimum = usize::from(self.settings.reflectors.num_reflectors);
let minimum = usize::from(self.settings.reflectors.num_reflectors).min(reflectors.len());
if self.state_dl.deltas.len() < minimum || self.state_ul.deltas.len() < minimum {
// trigger reselection
warn!(
+6
View File
@@ -213,6 +213,12 @@ impl ReflectorSettings {
}
for (index, reflector) in self.entries.iter().enumerate() {
if reflector.host.trim().is_empty() {
report.error(
"reflectors.entries",
format!("entry {index} must have a nonempty host"),
);
}
if reflector.protocols.is_empty() {
report.error(
"reflectors.entries",