Home IO Control
ESPHome add-on for IO-Homecontrol devices
Loading...
Searching...
No Matches
esphome::home_io_control::pairing_responder::ResponderContext Struct Reference

Context for one key-extraction arm cycle. More...

#include <pairing_responder.h>

Collaboration diagram for esphome::home_io_control::pairing_responder::ResponderContext:

Public Attributes

ResponderState state {ResponderState::DISARMED}
 Current state.
uint8_t throwaway_id [NODE_ID_SIZE] {}
 Random per-arm-cycle node ID we advertise as ourselves.
DeviceType advertised_type {DeviceType::UNKNOWN}
 Device type advertised in our 0x29.
uint8_t advertised_subtype {0}
 Device subtype advertised in our 0x29.
uint8_t challenge [HMAC_SIZE] {}
 Our challenge, generated on the first 0x31 of an attempt.
uint8_t hub_node_id [NODE_ID_SIZE] {}
 Foreign hub's real node ID, captured from the 0x31's src.
uint8_t recovered_key [AES_KEY_SIZE] {}
 Recovered system key; valid once state == EXTRACTED.

Detailed Description

Context for one key-extraction arm cycle.

Owned directly by the hub (like PairingTelemetry), not by PairingEngine/ExchangeEngine — this is the reverse (device) role and does not fit either of those collaborators.

Definition at line 47 of file pairing_responder.h.

Member Data Documentation

◆ advertised_subtype

uint8_t esphome::home_io_control::pairing_responder::ResponderContext::advertised_subtype {0}

Device subtype advertised in our 0x29.

Definition at line 51 of file pairing_responder.h.

◆ advertised_type

DeviceType esphome::home_io_control::pairing_responder::ResponderContext::advertised_type {DeviceType::UNKNOWN}

Device type advertised in our 0x29.

Definition at line 50 of file pairing_responder.h.

◆ challenge

uint8_t esphome::home_io_control::pairing_responder::ResponderContext::challenge[HMAC_SIZE] {}

Our challenge, generated on the first 0x31 of an attempt.

Definition at line 52 of file pairing_responder.h.

◆ hub_node_id

uint8_t esphome::home_io_control::pairing_responder::ResponderContext::hub_node_id[NODE_ID_SIZE] {}

Foreign hub's real node ID, captured from the 0x31's src.

Definition at line 53 of file pairing_responder.h.

◆ recovered_key

uint8_t esphome::home_io_control::pairing_responder::ResponderContext::recovered_key[AES_KEY_SIZE] {}

Recovered system key; valid once state == EXTRACTED.

Definition at line 54 of file pairing_responder.h.

◆ state

ResponderState esphome::home_io_control::pairing_responder::ResponderContext::state {ResponderState::DISARMED}

Current state.

Definition at line 48 of file pairing_responder.h.

◆ throwaway_id

uint8_t esphome::home_io_control::pairing_responder::ResponderContext::throwaway_id[NODE_ID_SIZE] {}

Random per-arm-cycle node ID we advertise as ourselves.

Definition at line 49 of file pairing_responder.h.


The documentation for this struct was generated from the following file: