mirror of https://github.com/fmartingr/iosfu.git
68 lines
1.7 KiB
Python
68 lines
1.7 KiB
Python
from iosfu.plugin.base import BasePlugin
|
|
from iosfu.plugin.library import Library
|
|
|
|
|
|
plugin_library = Library()
|
|
|
|
|
|
@plugin_library.register
|
|
class DeviceInfoPlugin(BasePlugin):
|
|
category = 'Base'
|
|
name = 'Device info'
|
|
description = 'Basic information about the device/backup'
|
|
|
|
requires = {
|
|
'files': ['Info.plist'],
|
|
}
|
|
|
|
_plist = None
|
|
|
|
def parse_device_info(self):
|
|
keys = [
|
|
('build_version', 'Build Version'),
|
|
('device_name', 'Device Name'),
|
|
('display_name', 'Display Name'),
|
|
('guid', 'GUID'),
|
|
('iccid', 'ICCID'),
|
|
('imei', 'IMEI'),
|
|
('installed_apps', 'Installed Applications'),
|
|
('phone_number', 'Phone Number'),
|
|
('product_type', 'Product Type'),
|
|
('product_version', 'Product Version'),
|
|
('serial_number', 'Serial Number'),
|
|
('itunes_version', 'iTunes Version')
|
|
]
|
|
|
|
device_info = dict()
|
|
for key in keys:
|
|
device_info[key[0]] = self.get_value_from_plist(key[1])
|
|
|
|
return device_info
|
|
|
|
def parse_backup_info(self):
|
|
keys = [
|
|
('backup_date', 'Last Backup Date'),
|
|
]
|
|
|
|
backup_info = dict()
|
|
for key in keys:
|
|
backup_info[key[0]] = self.get_value_from_plist(key[1])
|
|
|
|
return backup_info
|
|
|
|
def get_value_from_plist(self, key):
|
|
value = '--'
|
|
try:
|
|
value = self._plist[key]
|
|
except:
|
|
pass
|
|
return value
|
|
|
|
def __do__(self):
|
|
self._plist = self._backup._plist['Info.plist']
|
|
info_dict = dict()
|
|
info_dict['device'] = self.parse_device_info()
|
|
info_dict['backup'] = self.parse_backup_info()
|
|
|
|
return info_dict
|