qmk_firmware/internals/secure.md

5.7 KiB

group secure

Exposes a set of functionality to act as a virtual padlock for your device ...as long as that padlock is made of paper and it's currently raining.

Summary

Members Descriptions
define secure_is_locked Helper to check if unlocking is currently locked.
define secure_is_unlocking Helper to check if unlocking is currently in progress.
define secure_is_unlocked Helper to check if unlocking is currently unlocked.
enum secure_status_t Available secure states.
public secure_status_t secure_get_status(void) Query current secure state.
public void secure_lock(void) Lock down the device.
public void secure_unlock(void) Force unlock the device.
public void secure_request_unlock(void) Begin listening for an unlock sequence.
public void secure_activity_event(void) Flag to the secure subsystem that user activity has happened.
public void secure_keypress_event(uint8_t row,uint8_t col) Flag to the secure subsystem that user has triggered a keypress.
public void secure_task(void) Handle various secure subsystem background tasks.
public void secure_hook_quantum(secure_status_t secure_status) quantum hook called when changing secure status device
public bool secure_hook_user(secure_status_t secure_status) user hook called when changing secure status device
public bool secure_hook_kb(secure_status_t secure_status) keyboard hook called when changing secure status device

Members

define secure_is_locked

Helper to check if unlocking is currently locked.

define secure_is_unlocking

Helper to check if unlocking is currently in progress.

define secure_is_unlocked

Helper to check if unlocking is currently unlocked.

enum secure_status_t

Values Descriptions
SECURE_LOCKED
SECURE_PENDING
SECURE_UNLOCKED

Available secure states.

public secure_status_t secure_get_status(void)

Query current secure state.

public void secure_lock(void)

Lock down the device.

public void secure_unlock(void)

Force unlock the device.

bypasses user unlock sequence

public void secure_request_unlock(void)

Begin listening for an unlock sequence.

public void secure_activity_event(void)

Flag to the secure subsystem that user activity has happened.

Call when some user activity has happened and the device should remain unlocked

public void secure_keypress_event(uint8_t row,uint8_t col)

Flag to the secure subsystem that user has triggered a keypress.

Call to trigger processing of the unlock sequence

public void secure_task(void)

Handle various secure subsystem background tasks.

public void secure_hook_quantum(secure_status_t secure_status)

quantum hook called when changing secure status device

public bool secure_hook_user(secure_status_t secure_status)

user hook called when changing secure status device

public bool secure_hook_kb(secure_status_t secure_status)

keyboard hook called when changing secure status device