Ustawienia
Ten moduł zawiera abstrakcję platformy do nieulotnego przechowywania ustawień.
Podsumowanie
Wyliczenia |
|
---|---|
anonymous enum{
|
enum | typ wyliczeniowy Definiuje klucze ustawień. |
Funkcje |
|
---|---|
otPlatSettingsAdd(otInstance *aInstance, uint16_t aKey, const uint8_t *aValue, uint16_t aValueLength)
|
Dodaje wartość do ustawienia.
|
otPlatSettingsDeinit(otInstance *aInstance)
|
void
W razie potrzeby wykonuje deinicjalizację podsystemu ustawień.
|
otPlatSettingsDelete(otInstance *aInstance, uint16_t aKey, int aIndex)
|
Usuwa ustawienie z magazynu ustawień.
|
otPlatSettingsGet(otInstance *aInstance, uint16_t aKey, int aIndex, uint8_t *aValue, uint16_t *aValueLength)
|
Pobiera wartość ustawienia.
|
otPlatSettingsInit(otInstance *aInstance, const uint16_t *aSensitiveKeys, uint16_t aSensitiveKeysLength)
|
void
W razie potrzeby inicjuje podsystem ustawień.
|
otPlatSettingsSet(otInstance *aInstance, uint16_t aKey, const uint8_t *aValue, uint16_t aValueLength)
|
Ustawia lub zastępuje wartość ustawienia.
|
otPlatSettingsWipe(otInstance *aInstance)
|
void
Usuwa wszystkie ustawienia z magazynu ustawień.
|
Wyliczenia
anonimowe wyliczenie
anonymous enum
Definiuje klucze ustawień.
Uwaga: podczas dodawania nowego klucza ustawień, jeśli ustawienia powiązane z kluczem zawierają informacje poufne związane z bezpieczeństwem, deweloper MUSI dodać ten klucz do tablicy aSensitiveKeys
przekazywanej w otPlatSettingsInit()
.
Właściwości | |
---|---|
OT_SETTINGS_KEY_ACTIVE_DATASET
|
Aktywny zbiór danych operacyjnych. |
OT_SETTINGS_KEY_BORDER_AGENT_ID
|
Unikalny identyfikator agenta/routera granicznego. |
OT_SETTINGS_KEY_BR_ON_LINK_PREFIXES
|
BR lokalne prefiksy on-link. |
OT_SETTINGS_KEY_BR_ULA_PREFIX
|
Prefiks BR ULA. |
OT_SETTINGS_KEY_CHILD_INFO
|
Informacje o podmiocie podrzędnym. |
OT_SETTINGS_KEY_DAD_INFO
|
Zduplikowane informacje o wykrywaniu adresów. |
OT_SETTINGS_KEY_NETWORK_INFO
|
Informacje o sieci typu Thread. |
OT_SETTINGS_KEY_PARENT_INFO
|
Informacje o elemencie nadrzędnym. |
OT_SETTINGS_KEY_PENDING_DATASET
|
Oczekuje na zbiór danych operacyjnych. |
OT_SETTINGS_KEY_SLAAC_IID_SECRET_KEY
|
Klucz SLAAC do generowania nieprzezroczystego semantycznie identyfikatora IID. |
OT_SETTINGS_KEY_SRP_CLIENT_INFO
|
Informacje o kliencie SRP (wybrany adres serwera SRP). |
OT_SETTINGS_KEY_SRP_ECDSA_KEY
|
Para kluczy publicznego/prywatnego klienta SRP klienta ECDSA. |
OT_SETTINGS_KEY_SRP_SERVER_INFO
|
Informacje o serwerze SRP (port UDP). |
Funkcje
otPlatSettingsAdd
otError otPlatSettingsAdd( otInstance *aInstance, uint16_t aKey, const uint8_t *aValue, uint16_t aValueLength )
Dodaje wartość do ustawienia.
Dodaje wartość do ustawienia identyfikowanego przez atrybut aKey
(bez zastępowania dotychczasowych wartości).
Pamiętaj, że podstawowa implementacja nie musi utrzymywać kolejności elementów powiązanych z określonym kluczem. Wartość dodana można dodać na końcu, na początku, a nawet gdzieś pośrodku. Kolejność istniejących wartości również może się zmienić.
Jej wywołanie może spowodować zmianę kolejności niepowiązanych ustawień z wieloma wartościami.
Stos OpenThread gwarantuje użycie metody otPlatSettingsAdd()
dla elementu aKey
, który wcześniej był zarządzany przez otPlatSettingsAdd()
(czyli zawiera co najmniej 1 element) albo jest pusty lub całkowicie usunięty (nie zawiera wartości).
Warstwa platformy może wykorzystywać ten fakt do optymalizacji implementacji.
Szczegóły | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parametry |
|
||||||||
Zwracane wartości |
|
otPlatSettingsDeinit
void otPlatSettingsDeinit( otInstance *aInstance )
W razie potrzeby wykonuje deinicjalizację podsystemu ustawień.
Szczegóły | |||
---|---|---|---|
Parametry |
|
otPlatSettingsDelete
otError otPlatSettingsDelete( otInstance *aInstance, uint16_t aKey, int aIndex )
Usuwa ustawienie z magazynu ustawień.
Usuwa określoną wartość z ustawienia określonego przez aKey z magazynu ustawień.
Pamiętaj, że podstawowa implementacja nie musi utrzymywać kolejności elementów powiązanych z określonym kluczem.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
||||||
Zwracane wartości |
|
otPlatSettingsGet
otError otPlatSettingsGet( otInstance *aInstance, uint16_t aKey, int aIndex, uint8_t *aValue, uint16_t *aValueLength )
Pobiera wartość ustawienia.
Pobiera wartość ustawienia określonego przez aKey
i zapisuje ją w pamięci wskazywanej przez aValue. Następnie zapisuje długość w postaci liczby całkowitej wskazywanej przez wartość aValueLength
. Początkowa wartość aValueLength
to maksymalna liczba bajtów do zapisania w aValue
.
Można go użyć do sprawdzenia istnienia klucza bez pobierania wartości przez ustawienie aValue
i aValueLength
na NULL. Możesz też sprawdzić długość ustawienia bez pobierania go, ustawiając tylko wartość aValue jako NULL.
Pamiętaj, że do zachowania kolejności ustawień z wieloma wartościami nie jest wymagana podstawowa implementacja miejsca na dane. Kolejność tych wartości MOŻE zmienić się po DOWOLNEJ operacji zapisu w magazynie.
Szczegóły | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametry |
|
||||||||||
Zwracane wartości |
|
otPlatSettingsInit
void otPlatSettingsInit( otInstance *aInstance, const uint16_t *aSensitiveKeys, uint16_t aSensitiveKeysLength )
W razie potrzeby inicjuje podsystem ustawień.
Ustawia też klucze wrażliwe, które powinny być przechowywane w bezpiecznym obszarze.
Pamiętaj, że pamięć wskazana przez aSensitiveKeys
NIE MOŻE zostać zwolniona przed zniszczeniem obiektu aInstance
.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
otPlatSettingsSet
otError otPlatSettingsSet( otInstance *aInstance, uint16_t aKey, const uint8_t *aValue, uint16_t aValueLength )
Ustawia lub zastępuje wartość ustawienia.
Ustawia lub zastępuje wartość ustawienia określonego przez aKey
.
Jej wywołanie może spowodować zmianę kolejności niepowiązanych ustawień z wieloma wartościami.
Stos OpenThread gwarantuje użycie metody otPlatSettingsSet()
dla elementu aKey
, który został wcześniej ustawiony za pomocą atrybutu otPlatSettingsSet()
(tj. zawiera pojedynczą wartość) albo jest pusty lub całkowicie usunięty (nie zawiera żadnej wartości).
Warstwa platformy może wykorzystywać ten fakt do optymalizacji implementacji.
Szczegóły | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parametry |
|
||||||||
Zwracane wartości |
|
otPlatSettingsWipe
void otPlatSettingsWipe( otInstance *aInstance )
Usuwa wszystkie ustawienia z magazynu ustawień.
Usuwa wszystkie ustawienia z magazynu ustawień i resetuje urządzenie do początkowego stanu fabrycznego.
Szczegóły | |||
---|---|---|---|
Parametry |
|
Zasoby
Tematy referencyjne interfejsu OpenThread API pochodzą z kodu źródłowego dostępnego w GitHub. Aby dowiedzieć się więcej lub dołączyć do naszej dokumentacji, skorzystaj z sekcji Zasoby.