From: djm@openbsd.org Date: Tue, 11 Jun 2024 01:23:25 +0000 (+0000) Subject: upstream: a little more RB_TREE paranoia X-Git-Tag: V_9_8_P1~59 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ef878d58798f6688c7f4d4e417dc0c29023ea831;p=thirdparty%2Fopenssh-portable.git upstream: a little more RB_TREE paranoia OpenBSD-Commit-ID: 8dc2fd21eebd8830c4a4d25461ac4fe228e11156 --- diff --git a/srclimit.c b/srclimit.c index 6b8af4fb1..962af73f7 100644 --- a/srclimit.c +++ b/srclimit.c @@ -295,14 +295,14 @@ srclimit_remove_expired_penalties(void) while (npenalties > (size_t)penalty_cfg.max_sources) { if ((p = RB_MIN(penalties_by_expiry, &penalties_by_expiry)) == NULL) - break; /* shouldn't happen */ + fatal_f("internal error: penalty tables corrupt (find)"); bits = p->addr.af == AF_INET ? ipv4_masklen : ipv6_masklen; addr_masklen_ntop(&p->addr, bits, s, sizeof(s)); debug3_f("overflow, remove %s", s); if (RB_REMOVE(penalties_by_expiry, &penalties_by_expiry, p) != p || RB_REMOVE(penalties_by_addr, &penalties_by_addr, p) != p) - fatal_f("internal error: penalty tables corrupt"); + fatal_f("internal error: penalty tables corrupt (remove)"); free(p); npenalties--; }