Ayarlar

Bu modülde, ayarların kalıcı olarak depolanması için platform soyutlaması yer alır.

Özet

Sıralamalar

anonymous enum{
  OT_SETTINGS_KEY_ACTIVE_DATASET = 0x0001,
  OT_SETTINGS_KEY_PENDING_DATASET = 0x0002,
  OT_SETTINGS_KEY_NETWORK_INFO = 0x0003,
  OT_SETTINGS_KEY_PARENT_INFO = 0x0004,
  OT_SETTINGS_KEY_CHILD_INFO = 0x0005,
  OT_SETTINGS_KEY_SLAAC_IID_SECRET_KEY = 0x0007,
  OT_SETTINGS_KEY_DAD_INFO = 0x0008,
  OT_SETTINGS_KEY_SRP_ECDSA_KEY = 0x000b,
  OT_SETTINGS_KEY_SRP_CLIENT_INFO = 0x000c,
  OT_SETTINGS_KEY_SRP_SERVER_INFO = 0x000d,
  OT_SETTINGS_KEY_BR_ULA_PREFIX = 0x000f,
  OT_SETTINGS_KEY_BR_ON_LINK_PREFIXES = 0x0010,
  OT_SETTINGS_KEY_BORDER_AGENT_ID = 0x0011
}
enum
Ayarların anahtarlarını tanımlar.

İşlevler

otPlatSettingsAdd(otInstance *aInstance, uint16_t aKey, const uint8_t *aValue, uint16_t aValueLength)
Bir ayara değer ekler.
otPlatSettingsDeinit(otInstance *aInstance)
void
Gerekirse ayarlar alt sistemi için tüm başlatma işlemlerini gerçekleştirir.
otPlatSettingsDelete(otInstance *aInstance, uint16_t aKey, int aIndex)
Bir ayarı, ayar deposundan kaldırır.
otPlatSettingsGet(otInstance *aInstance, uint16_t aKey, int aIndex, uint8_t *aValue, uint16_t *aValueLength)
Bir ayarın değerini getirir.
otPlatSettingsInit(otInstance *aInstance, const uint16_t *aSensitiveKeys, uint16_t aSensitiveKeysLength)
void
Gerekirse ayar alt sistemi için tüm başlatma işlemlerini gerçekleştirir.
otPlatSettingsSet(otInstance *aInstance, uint16_t aKey, const uint8_t *aValue, uint16_t aValueLength)
Bir ayarın değerini belirler veya değiştirir.
otPlatSettingsWipe(otInstance *aInstance)
void
Ayar deposundaki tüm ayarlar kaldırılır.

Sıralamalar

anonim sıralama

 anonymous enum

Ayarların anahtarlarını tanımlar.

Not: Yeni bir ayar anahtarı eklerken, anahtara karşılık gelen ayarlar güvenlik açısından hassas bilgiler içeriyorsa geliştiricinin, anahtarı otPlatSettingsInit() içinde iletilen aSensitiveKeys dizisine eklemesi GEREKİR.

Özellikler
OT_SETTINGS_KEY_ACTIVE_DATASET

Etkin Operasyonel Veri Kümesi.

OT_SETTINGS_KEY_BORDER_AGENT_ID

Benzersiz Sınır Aracısı/Yönlendirici Kimliği.

OT_SETTINGS_KEY_BR_ON_LINK_PREFIXES

BR yerel bağlantı içi ön ekleri.

OT_SETTINGS_KEY_BR_ULA_PREFIX

BR ULA öneki.

OT_SETTINGS_KEY_CHILD_INFO

Alt bilgiler

OT_SETTINGS_KEY_DAD_INFO

Yinelenen Adres Algılama (DAD) bilgileri.

OT_SETTINGS_KEY_NETWORK_INFO

İş parçacığı ağ bilgileri.

OT_SETTINGS_KEY_PARENT_INFO

Üst öğe bilgileri.

OT_SETTINGS_KEY_PENDING_DATASET

Beklemede Operasyonel Veri Kümesi var.

OT_SETTINGS_KEY_SLAAC_IID_SECRET_KEY

Anlamsal olarak opak IID oluşturmak için SLAAC anahtarı.

OT_SETTINGS_KEY_SRP_CLIENT_INFO

SRP istemci bilgileri (seçilen SRP sunucu adresi).

OT_SETTINGS_KEY_SRP_ECDSA_KEY

SRP istemcisi ECDSA herkese açık/özel anahtar çifti.

OT_SETTINGS_KEY_SRP_SERVER_INFO

SRP sunucusu bilgisi (UDP bağlantı noktası).

İşlevler

otPlatSettingsAdd

otError otPlatSettingsAdd(
  otInstance *aInstance,
  uint16_t aKey,
  const uint8_t *aValue,
  uint16_t aValueLength
)

Bir ayara değer ekler.

Değeri, mevcut değerleri değiştirmeden aKey tarafından tanımlanan bir ayara ekler.

Belirli bir anahtarla ilişkilendirilmiş öğelerin sırasını korumak için temel uygulamanın gerekli olmadığını unutmayın. Katma değer sona, başa ve hatta ortadaki bir yere eklenebilir. Önceden var olan değerlerin sırası da değişebilir.

Bu işlevin başarıyla çağrılması, birden çok değere sahip alakasız ayarların yeniden düzenlenmesine neden olabilir.

OpenThread yığını, daha önce otPlatSettingsAdd() tarafından yönetilen (ör. bir veya daha fazla öğe içeren) ya da boş ve/veya tamamen silinmiş (değer içermeyen) bir aKey için otPlatSettingsAdd() yönteminin kullanılmasını garanti eder.

Platform katmanı, uygulanmasını optimize etmek için bu gerçeği kullanabilir ve kullanabilir.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örnek yapısı.
[in] aKey
Değiştirilecek ayarla ilişkili anahtar.
[in] aValue
Ayarın yeni değerinin okunması gereken işaretçi. aValueLength sıfır değilse NULL OLMAMALIDIR.
[in] aValueLength
aValue tarafından işaret edilen verilerin uzunluğu. Sıfır olabilir.
Döndürülen Değerler
OT_ERROR_NONE
Belirtilen ayar eklendi veya eklenmek üzere hazırlandı.
OT_ERROR_NOT_IMPLEMENTED
Bu işlev bu platformda uygulanmadı.
OT_ERROR_NO_BUFS
Belirtilen ayarı depolamak için yer kalmadı.

otPlatSettingsDeinit

void otPlatSettingsDeinit(
  otInstance *aInstance
)

Gerekirse ayarlar alt sistemi için tüm başlatma işlemlerini gerçekleştirir.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örnek yapısı.

otPlatSettingsDelete

otError otPlatSettingsDelete(
  otInstance *aInstance,
  uint16_t aKey,
  int aIndex
)

Bir ayarı, ayar deposundan kaldırır.

Ayarlar deposundaki aKey tarafından tanımlanan ayardan belirli bir değeri siler.

Belirli bir anahtarla ilişkilendirilmiş öğelerin sırasını korumak için temel uygulamanın gerekli olmadığını unutmayın.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örnek yapısı.
[in] aKey
İstenen ayarla ilişkili anahtar.
[in] aIndex
Kaldırılacak değerin dizini. -1 olarak ayarlanırsa bu aKey için tüm değerler kaldırılır.
Döndürülen Değerler
OT_ERROR_NONE
Belirtilen anahtar ve dizin başarıyla bulundu ve kaldırıldı.
OT_ERROR_NOT_FOUND
Belirtilen anahtar veya dizin, ayar deposunda bulunamadı.
OT_ERROR_NOT_IMPLEMENTED
Bu işlev bu platformda uygulanmadı.

otPlatSettingsGet

otError otPlatSettingsGet(
  otInstance *aInstance,
  uint16_t aKey,
  int aIndex,
  uint8_t *aValue,
  uint16_t *aValueLength
)

Bir ayarın değerini getirir.

aKey tarafından tanımlanan ayarın değerini getirir ve bunu aValue tarafından işaret edilen belleğe yazar. Daha sonra, uzunluğu aValueLength ile işaret edilen tam sayıya yazar. aValueLength başlangıç değeri, aValue öğesine yazılacak maksimum bayt sayısıdır.

aValue ve aValueLength öğelerini NULL değerine ayarlayarak değeri getirmeden bir anahtarın mevcut olup olmadığını kontrol etmek için kullanılabilir. Yalnızca aValue öğesini NULL ayarlayarak getirmeden ayarın uzunluğunu kontrol edebilirsiniz.

Temel depolama alanı uygulamasının, birden fazla değere sahip ayarların sırasını korumak için gerekli olmadığını unutmayın. Bu tür değerlerin sırası, mağazaya HERHANGİ BİR yazma işleminden sonra değiştirilebilir.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örnek yapısı.
[in] aKey
İstenen ayarla ilişkili anahtar.
[in] aIndex
Alınacak belirli öğenin dizini.
[out] aValue
Ayar değerinin yazılması gereken yeri gösteren bir işaretçi. Yalnızca bir ayarın varlığı veya uzunluğu için test yapılıyorsa NULL olarak ayarlanabilir.
[in,out] aValueLength
Değerin uzunluğuna ilişkin işaretçi. Bu işaretçi, çağrıldığında aValue öğesine yazılabilecek maksimum değer boyutunu içeren bir tam sayıyı işaret etmelidir. Döndürüldüğünde ayarın gerçek uzunluğu yazılır. Evde olma kontrolü yapılıyorsa bu değer NULL olarak ayarlanabilir.
Döndürülen Değerler
OT_ERROR_NONE
Belirtilen ayar bulundu ve başarıyla getirildi.
OT_ERROR_NOT_FOUND
Belirtilen ayar, ayar deposunda bulunamadı.
OT_ERROR_NOT_IMPLEMENTED
Bu işlev bu platformda uygulanmadı.

otPlatSettingsInit

void otPlatSettingsInit(
  otInstance *aInstance,
  const uint16_t *aSensitiveKeys,
  uint16_t aSensitiveKeysLength
)

Gerekirse ayar alt sistemi için tüm başlatma işlemlerini gerçekleştirir.

Ayrıca, güvenli alanda depolanması gereken hassas anahtarları da ayarlar.

aInstance silinmeden önce aSensitiveKeys tarafından işaret edilen belleğin serbest bırakılmaması gerektiğini unutmayın.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örnek yapısı.
[in] aSensitiveKeys
Hassas anahtarların listesini içeren bir dizinin işaretçisi. Yalnızca aSensitiveKeysLength 0 ise (yani hassas anahtar yok) NULL olabilir.
[in] aSensitiveKeysLength
aSensitiveKeys dizisindeki giriş sayısı.

otPlatSettingsSet

otError otPlatSettingsSet(
  otInstance *aInstance,
  uint16_t aKey,
  const uint8_t *aValue,
  uint16_t aValueLength
)

Bir ayarın değerini belirler veya değiştirir.

aKey tarafından tanımlanan bir ayarın değerini belirler veya değiştirir.

Bu işlevin başarıyla çağrılması, birden çok değere sahip alakasız ayarların yeniden düzenlenmesine neden olabilir.

OpenThread yığını, daha önce otPlatSettingsSet() kullanılarak ayarlanmış (ör. tek bir değer içeren) veya boş ve/veya tamamen silinmiş (değer içermeyen) bir aKey için otPlatSettingsSet() yönteminin kullanılmasını garanti eder.

Platform katmanı, uygulanmasını optimize etmek için bu gerçeği kullanabilir ve kullanabilir.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örnek yapısı.
[in] aKey
Değiştirilecek ayarla ilişkili anahtar.
[in] aValue
Ayarın yeni değerinin okunması gereken işaretçi. aValueLength sıfır değilse NULL OLMAMALIDIR.
[in] aValueLength
aValue tarafından işaret edilen verilerin uzunluğu. Sıfır olabilir.
Döndürülen Değerler
OT_ERROR_NONE
Verilen ayar değiştirildi veya hazırlandı.
OT_ERROR_NOT_IMPLEMENTED
Bu işlev bu platformda uygulanmadı.
OT_ERROR_NO_BUFS
Belirtilen ayarı depolamak için yer kalmadı.

otPlatSettingsWipe

void otPlatSettingsWipe(
  otInstance *aInstance
)

Ayar deposundaki tüm ayarlar kaldırılır.

Ayarlar mağazasından tüm ayarları silerek cihazı başlangıçtaki fabrika durumuna sıfırlar.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örnek yapısı.

Kaynaklar

OpenThread API Referans konuları, GitHub'da bulunan kaynak koddan gelir. Daha fazla bilgi edinmek veya dokümanlarımıza katkıda bulunmak için Kaynaklar bölümüne bakın.