in src/local_gpu_verifier/src/verifier/cc_admin_utils.py [0:0]
def get_vbios_rim_path(settings, attestation_report):
""" A static method to determine the path of the appropriate VBIOS RIM file.
Args:
settings (config.HopperSettings): the object containing the various config info.
attestation_report (AttestationReport): the object representing the attestation report
Raises:
RIMFetchError: it is raised in case the required VBIOS RIM file is not found.
Returns:
[str] : the path to the VBIOS RIM file.
"""
project = attestation_report.get_response_message().get_opaque_data().get_data("OPAQUE_FIELD_ID_PROJECT")
project_sku = attestation_report.get_response_message().get_opaque_data().get_data("OPAQUE_FIELD_ID_PROJECT_SKU")
chip_sku = attestation_report.get_response_message().get_opaque_data().get_data("OPAQUE_FIELD_ID_CHIP_SKU")
vbios_version = format_vbios_version(attestation_report.get_response_message().get_opaque_data().get_data("OPAQUE_FIELD_ID_VBIOS_VERSION"))
vbios_version = vbios_version.replace(".", "").upper()
project = project.decode('ascii').strip().strip('\x00')
project = project.lower()
project_sku = project_sku.decode('ascii').strip().strip('\x00')
project_sku = project_sku.lower()
chip_sku = chip_sku.decode('ascii').strip().strip('\x00')
chip_sku = chip_sku.lower()
rim_file_name = project + "_" + project_sku + "_" + chip_sku + "_" + vbios_version + "_" + settings.get_sku() + ".swidtag"
list_of_files = os.listdir(settings.RIM_DIRECTORY_PATH)
rim_path = os.path.join(settings.RIM_DIRECTORY_PATH, rim_file_name)
if rim_file_name in list_of_files:
return rim_path
raise RIMFetchError(f"Could not find the required VBIOS RIM file : {rim_path}")