58 lines
2.7 KiB
Python
58 lines
2.7 KiB
Python
import os
|
|
|
|
device_sony_lvl1 = {
|
|
'name': 'sony_lvl1',
|
|
'description': 'sony d6503 firmware 6.0.1 lvl1 security level',
|
|
'security_level': 1,
|
|
'session_id_type': 'android',
|
|
'private_key_available': True,
|
|
'vmp': False,
|
|
'send_key_control_nonce': True
|
|
}
|
|
|
|
devices_available = [device_sony_lvl1]
|
|
|
|
#from __main__ import dirPath
|
|
main_folder = os.path.dirname(__file__)
|
|
#main_folder = os.path.join('.', 'pywidevine', 'cdm')
|
|
|
|
FILES_FOLDER = 'devices'
|
|
|
|
class DeviceConfig:
|
|
def __init__(self, device):
|
|
self.device_name = device['name']
|
|
self.description = device['description']
|
|
self.security_level = device['security_level']
|
|
self.session_id_type = device['session_id_type']
|
|
self.private_key_available = device['private_key_available']
|
|
self.vmp = device['vmp']
|
|
self.send_key_control_nonce = device['send_key_control_nonce']
|
|
|
|
if 'keybox_filename' in device:
|
|
self.keybox_filename = os.path.join(main_folder, FILES_FOLDER, device['name'], device['keybox_filename'])
|
|
else:
|
|
self.keybox_filename = os.path.join(main_folder, FILES_FOLDER, device['name'], 'keybox')
|
|
|
|
if 'device_cert_filename' in device:
|
|
self.device_cert_filename = os.path.join(main_folder, FILES_FOLDER, device['name'], device['device_cert_filename'])
|
|
else:
|
|
self.device_cert_filename = os.path.join(main_folder, FILES_FOLDER, device['name'], 'device_cert')
|
|
|
|
if 'device_private_key_filename' in device:
|
|
self.device_private_key_filename = os.path.join(main_folder, FILES_FOLDER, device['name'], device['device_private_key_filename'])
|
|
else:
|
|
self.device_private_key_filename = os.path.join(main_folder, FILES_FOLDER, device['name'], 'device_private_key')
|
|
|
|
if 'device_client_id_blob_filename' in device:
|
|
self.device_client_id_blob_filename = os.path.join(main_folder, FILES_FOLDER, device['name'], device['device_client_id_blob_filename'])
|
|
else:
|
|
self.device_client_id_blob_filename = os.path.join(main_folder, FILES_FOLDER, device['name'], 'device_client_id_blob')
|
|
|
|
if 'device_vmp_blob_filename' in device:
|
|
self.device_vmp_blob_filename = os.path.join(main_folder, FILES_FOLDER, device['name'], device['device_vmp_blob_filename'])
|
|
else:
|
|
self.device_vmp_blob_filename = os.path.join(main_folder, FILES_FOLDER, device['name'], 'device_vmp_blob')
|
|
|
|
def __repr__(self):
|
|
return "DeviceConfig(name={}, description={}, security_level={}, session_id_type={}, private_key_available={}, vmp={})".format(self.device_name, self.description, self.security_level, self.session_id_type, self.private_key_available, self.vmp)
|