From: Alan T. DeKok Date: Tue, 19 Nov 2024 18:50:25 +0000 (-0500) Subject: these functions don't need to be public X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=fdf7fe59e94ec9e2424da43406d917ee17d841dd;p=thirdparty%2Ffreeradius-server.git these functions don't need to be public --- diff --git a/src/lib/bio/retry.c b/src/lib/bio/retry.c index d70022e5df2..78a62d2eb20 100644 --- a/src/lib/bio/retry.c +++ b/src/lib/bio/retry.c @@ -272,6 +272,27 @@ static void fr_bio_retry_release(fr_bio_retry_t *my, fr_bio_retry_entry_t *item, fr_bio_retry_list_insert_head(&my->free, item); } +/** Writes are blocked. + * + */ +static int fr_bio_retry_write_blocked(fr_bio_t *bio) +{ + fr_bio_retry_t *my = talloc_get_type_abort(bio, fr_bio_retry_t); + + if (my->info.write_blocked) { + fr_assert(!my->ev); + return 1; + } + + my->info.write_blocked = true; + + fr_bio_retry_timer_clear(my); + if (fr_bio_retry_expiry_timer_reset(my) < 0) return fr_bio_error(GENERIC); + + return 1; +} + + /** Write one item. * * @return @@ -390,6 +411,29 @@ static int fr_bio_retry_write_delayed(fr_bio_retry_t *my, fr_time_t now) } +/** Resume writes. + * + * On resume, we try to flush any pending packets which should have been sent. + */ +static int fr_bio_retry_write_resume(fr_bio_t *bio) +{ + fr_bio_retry_t *my = talloc_get_type_abort(bio, fr_bio_retry_t); + int rcode; + + if (!my->info.write_blocked) return 1; + + rcode = fr_bio_retry_write_delayed(my, fr_time()); + if (rcode <= 0) return rcode; + + my->info.write_blocked = false; + + fr_bio_retry_timer_clear(my); + (void) fr_bio_retry_timer_reset(my); + + return 1; +} + + /** There's a partial packet written. Write all of that one first, before writing another packet. * * The packet can either be cancelled, or IO blocked. In either case, we must write the full packet before @@ -1147,45 +1191,3 @@ fr_bio_retry_entry_t *fr_bio_retry_item_reserve(fr_bio_t *bio) return item; } - -/** Writes are blocked. - * - */ -int fr_bio_retry_write_blocked(fr_bio_t *bio) -{ - fr_bio_retry_t *my = talloc_get_type_abort(bio, fr_bio_retry_t); - - if (my->info.write_blocked) { - fr_assert(!my->ev); - return 1; - } - - my->info.write_blocked = true; - - fr_bio_retry_timer_clear(my); - (void) fr_bio_retry_expiry_timer_reset(my); - - return 1; -} - -/** Resume writes. - * - * On resume, we try to flush any pending packets which should have been sent. - */ -int fr_bio_retry_write_resume(fr_bio_t *bio) -{ - fr_bio_retry_t *my = talloc_get_type_abort(bio, fr_bio_retry_t); - int rcode; - - if (!my->info.write_blocked) return 1; - - rcode = fr_bio_retry_write_delayed(my, fr_time()); - if (rcode <= 0) return rcode; - - my->info.write_blocked = false; - - fr_bio_retry_timer_clear(my); - (void) fr_bio_retry_timer_reset(my); - - return 1; -} diff --git a/src/lib/bio/retry.h b/src/lib/bio/retry.h index a76821a8ae9..83bf057f99a 100644 --- a/src/lib/bio/retry.h +++ b/src/lib/bio/retry.h @@ -157,7 +157,4 @@ size_t fr_bio_retry_outstanding(fr_bio_t *bio) CC_HINT(nonnull); fr_bio_retry_entry_t *fr_bio_retry_item_reserve(fr_bio_t *bio) CC_HINT(nonnull); -int fr_bio_retry_write_blocked(fr_bio_t *bio) CC_HINT(nonnull); -int fr_bio_retry_write_resume(fr_bio_t *bio) CC_HINT(nonnull); - #undef _CONST