]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
don't call shutdown recursively
authorAlan T. DeKok <aland@freeradius.org>
Tue, 29 Jul 2025 09:00:23 +0000 (05:00 -0400)
committerAlan T. DeKok <aland@freeradius.org>
Tue, 29 Jul 2025 09:00:23 +0000 (05:00 -0400)
src/lib/bio/base.c

index 5e7a6033e2815cc04ce73ac0cf4ef32388fa96ee..6898de53fc3cfe848d74a44cdafb2087ba0f42d8 100644 (file)
@@ -161,6 +161,12 @@ int fr_bio_shutdown(fr_bio_t *bio)
        }
        first = this;
 
+       /*
+        *      We're in the process of shutting down, don't call ourselves recursively.
+        */
+       my = (fr_bio_common_t *) this;
+       if (my->bio.read == fr_bio_shutdown_read) return 0;
+
        /*
         *      Walk back down the chain, calling the shutdown functions.
         */