Skip to content
Georgi Angelov edited this page Sep 18, 2019 · 8 revisions

What is it used for

Reference: Azure Sphere_19.05_Linux Kernel

Pluton ioctl()

open("/dev/pluton", 0x80000);

PLUTON_GET_SECURITY_STATE               [0x01]  ioctl(0xC0847001) Manufacturing_GetDeviceId()
PLUTON_GENERATE_CLIENT_AUTH_KEY         [0x06]  ioctl(0xC0047006)
PLUTON_COMMIT_CLIENT_AUTH_KEY           [0x07]  ioctl(0xC0047007)
PLUTON_GET_TENANT_PUBLIC_KEY            [0x08]  ioctl(0xC0407008)
PLUTON_PROCESS_ATTESTATION              [0x09]  ioctl(0xC3787009)
PLUTON_SIGN_WITH_TENANT_ATTESTATION_KEY [0x0A]  ioctl(0xC040700A)
PLUTON_SET_POSTCODE                     [0x0B]  ioctl(0xC004700B)
PLUTON_GET_BOOT_MODE_FLAGS              [0x0C]  ioctl(0xC004700C)
PLUTON_IS_CAPABILITY_ENABLED            [0x0D]  ioctl(0xC004700D)
PLUTON_GET_ENABLED_CAPABILITIES         [0x0E]  ioctl(0x8080700E)
PLUTON_SET_MANUFACTURING_STATE          [0x0F]  ioctl(0x4004700F)
PLUTON_GET_MANUFACTURING_STATE          [0x10]  ioctl(0x80047010)

Security-Monitor

Security-Monitor ioctl()
SECURITY_MONITOR_WRITE_LOG                   [0x02]  ioctl(0xC0087002)
SECURITY_MONITOR_GET_LOG_DATA                [0x03]  ioctl(0xC0147003)
SECURITY_MONITOR_SMAPI_COMMAND               [0x04]  ioctl(0xC0147004)
SECURITY_MONITOR_DERIVE_KEY                  [0x05]  ioctl(0xC0347005)
SECURITY_MONITOR_GET_PERIPHERAL_COUNT        [0x06]  ioctl(0xC00C7006)
SECURITY_MONITOR_LIST_PERIPHERALS_V1         [0x07]  ioctl(0xC00C7007)
SECURITY_MONITOR_LIST_PERIPHERALS            [0x07]  ioctl(0xC0107007)
SECURITY_MONITOR_ENABLE_PERIPHERAL_DRIVER    [0x09]  ioctl(0xC0067009)
SECURITY_MONITOR_IO_CORE_CONTROL             [0x0A]  ioctl(0xC01C700A)
SECURITY_MONITOR_RECORD_TELEMETRY_EVENT_DATA [0x0B]  ioctl(0x400C700B)
SECURITY_MONITOR_GET_TELEMETRY               [0x0C]  ioctl(0xC008700C)
SECURITY_MONITOR_RESET_RETAIN_TELEMETRY      [0x0D]  ioctl(0x4001700D)

Security-Monitor-API

SECURITY_MONITOR_API_GET_VERSION 
SECURITY_MONITOR_API_PING 
SECURITY_MONITOR_API_QUERY_FLASH 
SECURITY_MONITOR_API_ERASE_FLASH 
SECURITY_MONITOR_API_WRITE_FLASH 
SECURITY_MONITOR_API_VERIFY_IMAGE_BY_FLASH_ADDRESS_CMD 
SECURITY_MONITOR_API_RESET_CMD 
SECURITY_MONITOR_API_WRITE_LOG 
SECURITY_MONITOR_API_GET_LOG_DATA_SIZE 
SECURITY_MONITOR_API_GET_LOG_DATA 
SECURITY_MONITOR_API_DERIVE_KEY_CMD 
SECURITY_MONITOR_API_GET_PERIPHERAL_COUNT 
SECURITY_MONITOR_API_LIST_PERIPHERALS 
SECURITY_MONITOR_API_GET_WIFI_FIRMWARE_LOCATION 
SECURITY_MONITOR_API_GET_APPLICATION_IMAGE_COUNT 
SECURITY_MONITOR_API_LIST_ALL_APPLICATION_IMAGES 
SECURITY_MONITOR_API_SHOULD_IMAGE_BE_UPDATED 
SECURITY_MONITOR_API_INVALIDATE_IMAGE 
SECURITY_MONITOR_API_OPEN_IMAGE_FOR_STAGING 
SECURITY_MONITOR_API_WRITE_BLOCK_TO_STAGE_IMAGE 
SECURITY_MONITOR_API_COMMIT_IMAGE_STAGING 
SECURITY_MONITOR_API_ABORT_IMAGE_STAGING 
SECURITY_MONITOR_API_INSTALL_STAGED_IMAGES 
SECURITY_MONITOR_API_GET_COMPONENT_COUNT 
SECURITY_MONITOR_API_GET_COMPONENT_SUMMARY 
SECURITY_MONITOR_API_GET_COMPONENT_IMAGES 
SECURITY_MONITOR_API_STAGE_COMPONENT_MANIFESTS 
SECURITY_MONITOR_API_COUNT_OF_MISSING_IMAGES_TO_DOWNLOAD 
SECURITY_MONITOR_API_GET_MISSING_IMAGES_TO_DOWNLOAD 
SECURITY_MONITOR_API_SET_PERIPHERAL_MAPPING 
SECURITY_MONITOR_API_SET_PIN_MAPPING 
SECURITY_MONITOR_API_GET_ABI_TYPE_COUNT 
SECURITY_MONITOR_API_GET_ABI_VERSIONS 
SECURITY_MONITOR_API_SET_RTC_CURRENT_TIME 
SECURITY_MONITOR_API_SET_RTC_ALARM 
SECURITY_MONITOR_API_GET_UPDATE_CERT_STORE_IMAGE_INFO 
SECURITY_MONITOR_API_STAGE_BASE_MANIFESTS 
SECURITY_MONITOR_API_COUNT_OF_MISSING_BASE_IMAGES_TO_DOWNLOAD 
SECURITY_MONITOR_API_GET_MISSING_BASE_IMAGES_TO_DOWNLOAD 
SECURITY_MONITOR_API_IO_CORE_CONTROL 
SECURITY_MONITOR_API_GET_ROLLBACK_INFO 
SECURITY_MONITOR_API_RECORD_TELEMETRY_EVENT_DATA 
SECURITY_MONITOR_API_GET_TELEMETRY_DATA 
SECURITY_MONITOR_API_RESET_TELEMETRY 
SECURITY_MONITOR_API_RETAIN_TELEMETRY 
Clone this wiki locally