All other subsystems are disabled during unlock

This commit is contained in:
zvecr 2022-04-12 01:37:25 +01:00
parent b1eab6d3a0
commit d19285019d
6 changed files with 81 additions and 25 deletions

View file

@ -93,7 +93,7 @@ def _xap_transaction(device, sub, route, *args):
def _query_device(device):
ver_data = _xap_transaction(device, 0x00, 0x00)
if not ver_data:
return {'xap': 'UNKNOWN'}
return {'xap': 'UNKNOWN', 'secure': 'UNKNOWN'}
# to u32 to BCD string
a = (ver_data[3] << 24) + (ver_data[2] << 16) + (ver_data[1] << 8) + (ver_data[0])

View file

@ -125,10 +125,17 @@ def _append_routing_table_declaration(lines, container, container_id, route_stac
def _append_routing_table_entry_flags(lines, container, container_id, route_stack):
is_secure = 1 if ('secure' in container and container['secure'] is True) else 0
pem_map = {
None: 'ROUTE_PERMISSIONS_INSECURE',
'secure': 'ROUTE_PERMISSIONS_SECURE',
'ignore': 'ROUTE_PERMISSIONS_IGNORE',
}
is_secure = pem_map[container.get('permissions', None)]
lines.append(' .flags = {')
lines.append(f' .type = {_get_route_type(container)},')
lines.append(f' .is_secure = {is_secure},')
lines.append(f' .secure = {is_secure},')
lines.append(' },')