def print_efi_variable(offset, efi_var_buf, EFI_var_header, efi_var_name, efi_var_data, efi_var_guid, efi_var_attributes): logger().log('\n--------------------------------') logger().log('EFI Variable (offset = 0x{:X}):'.format(offset)) logger().log('--------------------------------') # Print Variable Name logger().log(u'Name : {}'.format(efi_var_name)) # Print Variable GUID logger().log('Guid : {}'.format(efi_var_guid)) # Print Variable State if EFI_var_header: if 'State' in EFI_var_header._fields: state = getattr(EFI_var_header, 'State') state_str = 'State :' if uefi_platform.IS_VARIABLE_STATE( state, uefi_platform.VAR_IN_DELETED_TRANSITION): state_str = state_str + ' IN_DELETED_TRANSITION +' if uefi_platform.IS_VARIABLE_STATE(state, uefi_platform.VAR_DELETED): state_str = state_str + ' DELETED +' if uefi_platform.IS_VARIABLE_STATE(state, uefi_platform.VAR_ADDED): state_str = state_str + ' ADDED +' logger().log(state_str) # Print Variable Complete Header if logger().VERBOSE: if EFI_var_header.__str__: logger().log(EFI_var_header) else: logger().log('Decoded Header ({}):'.format( uefi_platform.EFI_VAR_DICT[ uefi_platform.FWType.EFI_FW_TYPE_UEFI]['name'])) for attr in EFI_var_header._fields: logger().log('{} = {:X}'.format( '{0:<16}'.format(attr), getattr(EFI_var_header, attr))) attr_str = ('Attributes: 0x{:X} ( {} )'.format( efi_var_attributes, get_attr_string(efi_var_attributes))) logger().log(attr_str) # Print Variable Data logger().log('Data:') print_buffer(bytestostring(efi_var_data)) # Print Variable Full Contents if logger().VERBOSE: logger().log('Full Contents:') if not efi_var_buf is None: print_buffer(bytestostring(efi_var_buf))
def print_efi_variable(offset, efi_var_buf, EFI_var_header, efi_var_name, efi_var_data, efi_var_guid, efi_var_attributes): logger().log('\n--------------------------------') logger().log('EFI Variable (offset = 0x%x):' % offset) logger().log('--------------------------------') # Print Variable Name logger().log('Name : %s' % efi_var_name) # Print Variable GUID logger().log('Guid : %s' % efi_var_guid) # Print Variable State if EFI_var_header: if 'State' in EFI_var_header._fields: state = getattr(EFI_var_header, 'State') state_str = 'State :' if uefi_platform.IS_VARIABLE_STATE( state, uefi_platform.VAR_IN_DELETED_TRANSITION): state_str = state_str + ' IN_DELETED_TRANSITION +' if uefi_platform.IS_VARIABLE_STATE(state, uefi_platform.VAR_DELETED): state_str = state_str + ' DELETED +' if uefi_platform.IS_VARIABLE_STATE(state, uefi_platform.VAR_ADDED): state_str = state_str + ' ADDED +' logger().log(state_str) # Print Variable Complete Header if logger().VERBOSE: if EFI_var_header.__str__: logger().log(EFI_var_header) else: logger().log('Decoded Header (%s):' % uefi_platform.EFI_VAR_DICT[self._FWType]['name']) for attr in EFI_var_header._fields: logger().log('%s = %X' % ('{0:<16}'.format(attr), getattr(EFI_var_header, attr))) attr_str = ('Attributes: 0x%X ( ' % efi_var_attributes ) + get_attr_string(efi_var_attributes) + ' )' logger().log(attr_str) # Print Variable Data logger().log('Data:') print_buffer(efi_var_data) # Print Variable Full Contents if logger().VERBOSE: logger().log('Full Contents:') print_buffer(efi_var_buf)