return 0;
}
+/** Allow the callbacks / application to know when things are being retried.
+ *
+ * This is not initialized util _after_ fr_bio_retry_entry_start() has been called.
+ */
+const fr_retry_t *fr_bio_retry_entry_info(UNUSED fr_bio_t *bio, fr_bio_retry_entry_t *item)
+{
+ fr_assert(item->buffer != NULL);
+
+ if (!item->retry.config) return NULL;
+
+ return &item->retry;
+}
+
+
/** Cancel all outstanding packets.
*
*/
int fr_bio_retry_entry_start(fr_bio_t *bio, fr_bio_retry_entry_t *retry_ctx, fr_retry_config_t const *cfg) CC_HINT(nonnull);
+const fr_retry_t *fr_bio_retry_entry_info(fr_bio_t *bio, fr_bio_retry_entry_t *retry_ctx) CC_HINT(nonnull);
+
ssize_t fr_bio_retry_rewrite(fr_bio_t *bio, fr_bio_retry_entry_t *retry_ctx, const void *buffer, size_t size) CC_HINT(nonnull(1,2));