]> git.ipfire.org Git - thirdparty/openssh-portable.git/commitdiff
upstream: move tree init before possible early return
authordjm@openbsd.org <djm@openbsd.org>
Tue, 11 Jun 2024 01:21:41 +0000 (01:21 +0000)
committerDamien Miller <djm@mindrot.org>
Tue, 11 Jun 2024 01:26:52 +0000 (11:26 +1000)
OpenBSD-Commit-ID: 72e2c5b69f151c08a7c5bf5ad929b97a92c273df

srclimit.c

index 5b5e688afef940a58441d2c81c32f183969612ee..bac8ef667658e4adfb5253e097a1983566e5ebc3 100644 (file)
@@ -108,6 +108,8 @@ srclimit_init(int max, int persource, int ipv4len, int ipv6len,
        penalty_cfg = *penalty_conf;
        penalty_exempt = penalty_exempt_conf == NULL ?
            NULL : xstrdup(penalty_exempt_conf);
+       RB_INIT(&penalties_by_addr);
+       RB_INIT(&penalties_by_expiry);
        if (max_persource == INT_MAX)   /* no limit */
                return;
        debug("%s: max connections %d, per source %d, masks %d,%d", __func__,
@@ -117,8 +119,6 @@ srclimit_init(int max, int persource, int ipv4len, int ipv6len,
        children = xcalloc(max_children, sizeof(*children));
        for (i = 0; i < max_children; i++)
                children[i].id = -1;
-       RB_INIT(&penalties_by_addr);
-       RB_INIT(&penalties_by_expiry);
 }
 
 /* returns 1 if connection allowed, 0 if not allowed. */