def parse_switch_pdis()

in src/local_gpu_verifier/src/verifier/attestation/spdm_msrt_resp_msg.py [0:0]


    def parse_switch_pdis(self, binary_data):
        """ Parses  the raw NvSwitch PDIs data of all the 18 NvLinks of the GPU.

        Args:
            binary_data (bytes): the raw NvSwitch PDI data.

        Raises:
            ParsingError: it is raised if the length off the data is not a multiple of self.FieldSize["PdiDataSize"]
        """
        if len(binary_data) % self.FieldSize['PdiDataSize'] != 0:
            raise ParsingError("Invalid size of switch PDI data.")

        byte_index = 0
        self.OpaqueDataField["OPAQUE_FIELD_ID_SWITCH_PDI"] = []

        while byte_index < len(binary_data):
            pdi = binary_data[byte_index : byte_index + self.FieldSize['PdiDataSize']]
            self.OpaqueDataField["OPAQUE_FIELD_ID_SWITCH_PDI"].append(pdi)
            byte_index = byte_index + self.FieldSize['PdiDataSize']