+ return handlers[blob->blob_location](blob, size, cb);
+}
+
+struct blob_chunk_ctx {
+ const struct blob_descriptor *blob;
+ const struct read_blob_callbacks *cbs;
+ u64 offset;
+};
+
+static int
+consume_blob_chunk(const void *chunk, size_t size, void *_ctx)
+{
+ struct blob_chunk_ctx *ctx = _ctx;
+ int ret;
+
+ ret = call_continue_blob(ctx->blob, ctx->offset, chunk, size, ctx->cbs);
+ ctx->offset += size;
+ return ret;