Einstellungen
Dieses Modul enthält die Plattformabstraktion zum nichtflüchtigen Speichern von Einstellungen.
Zusammenfassung
Aufzählungen |
|
---|---|
anonymous enum{
|
enum Definiert die Schlüssel der Einstellungen. |
Funktionen |
|
---|---|
otPlatSettingsAdd(otInstance *aInstance, uint16_t aKey, const uint8_t *aValue, uint16_t aValueLength)
|
Fügt einer Einstellung einen Wert hinzu.
|
otPlatSettingsDeinit(otInstance *aInstance)
|
void
Führt gegebenenfalls eine Deinitialisierung des Einstellungssubsystems durch.
|
otPlatSettingsDelete(otInstance *aInstance, uint16_t aKey, int aIndex)
|
Entfernt eine Einstellung aus dem Einstellungsspeicher.
|
otPlatSettingsGet(otInstance *aInstance, uint16_t aKey, int aIndex, uint8_t *aValue, uint16_t *aValueLength)
|
Ruft den Wert einer Einstellung ab.
|
otPlatSettingsInit(otInstance *aInstance, const uint16_t *aSensitiveKeys, uint16_t aSensitiveKeysLength)
|
void
Führt gegebenenfalls eine Initialisierung für das Einstellungssubsystem durch.
|
otPlatSettingsSet(otInstance *aInstance, uint16_t aKey, const uint8_t *aValue, uint16_t aValueLength)
|
Legt den Wert einer Einstellung fest oder ersetzt ihn.
|
otPlatSettingsWipe(otInstance *aInstance)
|
void
Alle Einstellungen werden aus dem Einstellungsspeicher entfernt.
|
Aufzählungen
Anonyme Aufzählung
anonymous enum
Definiert die Schlüssel der Einstellungen.
Hinweis: Wenn beim Hinzufügen eines neuen Einstellungsschlüssels die entsprechenden Einstellungen sicherheitsrelevante Informationen enthalten, MUSS der Entwickler den Schlüssel dem Array aSensitiveKeys
hinzufügen, das in otPlatSettingsInit()
übergeben wird.
Attribute | |
---|---|
OT_SETTINGS_KEY_ACTIVE_DATASET
|
Aktives operatives Dataset. |
OT_SETTINGS_KEY_BORDER_AGENT_ID
|
Eindeutige Border-Agent-/Router-ID. |
OT_SETTINGS_KEY_BR_ON_LINK_PREFIXES
|
Lokale On-Link-Präfixe für BR. |
OT_SETTINGS_KEY_BR_ULA_PREFIX
|
BR ULA-Präfix. |
OT_SETTINGS_KEY_CHILD_INFO
|
Informationen zum untergeordneten Element. |
OT_SETTINGS_KEY_DAD_INFO
|
Informationen zur Duplicate Address Detection (DAD) |
OT_SETTINGS_KEY_NETWORK_INFO
|
Informationen zum Thread-Netzwerk. |
OT_SETTINGS_KEY_PARENT_INFO
|
Informationen zu übergeordneten Elementen. |
OT_SETTINGS_KEY_PENDING_DATASET
|
Ausstehendes operatives Dataset. |
OT_SETTINGS_KEY_SLAAC_IID_SECRET_KEY
|
SLAAC-Schlüssel zum Generieren einer semantisch intransparenten IID. |
OT_SETTINGS_KEY_SRP_CLIENT_INFO
|
Die SRP-Clientinformationen (ausgewählte SRP-Serveradresse). |
OT_SETTINGS_KEY_SRP_ECDSA_KEY
|
Paar aus öffentlichem/privatem ECDSA-Client für den SRP-Client. |
OT_SETTINGS_KEY_SRP_SERVER_INFO
|
Die SRP-Serverinformationen (UDP-Port). |
Funktionen
otPlatSettingsAdd
otError otPlatSettingsAdd( otInstance *aInstance, uint16_t aKey, const uint8_t *aValue, uint16_t aValueLength )
Fügt einer Einstellung einen Wert hinzu.
Fügt den Wert einer durch aKey
angegebenen Einstellung hinzu, ohne vorhandene Werte zu ersetzen.
Die zugrunde liegende Implementierung ist nicht erforderlich, um die Reihenfolge der mit einem bestimmten Schlüssel verknüpften Elemente beizubehalten. Der Mehrwert kann am Ende, am Anfang oder sogar irgendwo in der Mitte eingefügt werden. Auch die Reihenfolge vorhandener Werte kann sich ändern.
Ein erfolgreicher Aufruf dieser Funktion kann dazu führen, dass Einstellungen ohne Bezug mit mehreren Werten neu angeordnet werden.
Der OpenThread-Stack garantiert die Verwendung der otPlatSettingsAdd()
-Methode für eine aKey
, die entweder zuvor von otPlatSettingsAdd()
verwaltet wurde (d.h. enthält ein oder mehrere Elemente) oder leer und/oder vollständig gelöscht ist (enthält keinen Wert).
Auf der Plattformebene kann diese Information zur Optimierung der Implementierung herangezogen werden.
Details | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||
Rückgabewerte |
|
otPlatSettingsDeinit
void otPlatSettingsDeinit( otInstance *aInstance )
Führt gegebenenfalls eine Deinitialisierung des Einstellungssubsystems durch.
Details | |||
---|---|---|---|
Parameter |
|
otPlatSettingsDelete
otError otPlatSettingsDelete( otInstance *aInstance, uint16_t aKey, int aIndex )
Entfernt eine Einstellung aus dem Einstellungsspeicher.
Löscht einen bestimmten Wert aus der Einstellung, die durch einen Schlüssel aus dem Einstellungsspeicher identifiziert wird.
Die zugrunde liegende Implementierung ist nicht erforderlich, um die Reihenfolge der mit einem bestimmten Schlüssel verknüpften Elemente beizubehalten.
Details | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
||||||
Rückgabewerte |
|
otPlatSettingsGet
otError otPlatSettingsGet( otInstance *aInstance, uint16_t aKey, int aIndex, uint8_t *aValue, uint16_t *aValueLength )
Ruft den Wert einer Einstellung ab.
Ruft den Wert der durch aKey
identifizierten Einstellung ab und schreibt ihn in den Speicher, auf den ein Wert verweist. Die Länge wird dann in die Ganzzahl geschrieben, auf die aValueLength
verweist. Der Anfangswert von aValueLength
ist die maximale Anzahl von Byte, die in aValue
geschrieben werden sollen.
Kann verwendet werden, um zu prüfen, ob ein Schlüssel vorhanden ist, ohne den Wert abzurufen, indem aValue
und aValueLength
auf NULL gesetzt werden. Sie können die Länge der Einstellung auch prüfen, ohne sie abzurufen, indem Sie nur aValue auf NULL setzen.
Beachten Sie, dass die zugrunde liegende Speicherimplementierung nicht erforderlich ist, um die Reihenfolge der Einstellungen mit mehreren Werten beizubehalten. Die Reihenfolge dieser Werte KANN sich nach JEDEM Schreibvorgang in den Speicher ändern.
Details | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||||
Rückgabewerte |
|
otPlatSettingsInit
void otPlatSettingsInit( otInstance *aInstance, const uint16_t *aSensitiveKeys, uint16_t aSensitiveKeysLength )
Führt gegebenenfalls eine Initialisierung für das Einstellungssubsystem durch.
Außerdem werden die vertraulichen Schlüssel festgelegt, die im sicheren Bereich aufbewahrt werden sollen.
Der von aSensitiveKeys
angegebene Arbeitsspeicher DARF nicht freigegeben werden, bevor aInstance
zerstört wurde.
Details | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
otPlatSettingsSet
otError otPlatSettingsSet( otInstance *aInstance, uint16_t aKey, const uint8_t *aValue, uint16_t aValueLength )
Legt den Wert einer Einstellung fest oder ersetzt ihn.
Legt den Wert einer durch aKey
identifizierten Einstellung fest oder ersetzt ihn.
Ein erfolgreicher Aufruf dieser Funktion kann dazu führen, dass Einstellungen ohne Bezug mit mehreren Werten neu angeordnet werden.
Der OpenThread-Stack garantiert die Verwendung der otPlatSettingsSet()
-Methode für eine aKey
, die entweder zuvor mit otPlatSettingsSet()
festgelegt wurde (d.h., sie enthält einen einzelnen Wert) oder leer und/oder vollständig gelöscht ist (enthält keinen Wert).
Auf der Plattformebene kann diese Information zur Optimierung der Implementierung herangezogen werden.
Details | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||
Rückgabewerte |
|
otPlatSettingsWipe
void otPlatSettingsWipe( otInstance *aInstance )
Alle Einstellungen werden aus dem Einstellungsspeicher entfernt.
Dadurch werden alle Einstellungen aus dem Einstellungsspeicher gelöscht und das Gerät auf die Werkseinstellungen zurückgesetzt.
Details | |||
---|---|---|---|
Parameter |
|
Ressourcen
OpenThread API-Referenzthemen stammen aus dem Quellcode, der auf GitHub verfügbar ist. Weitere Informationen finden Sie unter Ressourcen. Dort können Sie auch einen Beitrag zu unserer Dokumentation leisten.