def METHOD_NAME(
    blob_reference: oci.model.OciBlobRef,
    image_reference: typing.Union[str, oci.model.OciImageReference],
    oci_client: oci.client.Client,
    clamav_client: clamav.client.ClamAVClient,
) -> typing.Generator[clamav.model.ScanResult, None, None]:
    blob = oci_client.blob(
        image_reference=image_reference,
        digest=blob_reference.digest,
    )
    scan_result = clamav_client.scan(
        data=blob.iter_content(chunk_size=tarfile.RECORDSIZE),
        name=f'{image_reference}:{blob_reference.digest}',
    )
    yield scan_result