Setelan
Modul ini mencakup abstraksi platform untuk penyimpanan setelan non-volatil.
Ringkasan
Enumerasi |
|
---|---|
anonymous enum{
|
enum Menentukan kunci setelan. |
Fungsi |
|
---|---|
otPlatSettingsAdd(otInstance *aInstance, uint16_t aKey, const uint8_t *aValue, uint16_t aValueLength)
|
Menambahkan nilai ke setelan.
|
otPlatSettingsDeinit(otInstance *aInstance)
|
void
Melakukan de-inisialisasi untuk subsistem setelan, jika perlu.
|
otPlatSettingsDelete(otInstance *aInstance, uint16_t aKey, int aIndex)
|
Menghapus setelan dari penyimpanan setelan.
|
otPlatSettingsGet(otInstance *aInstance, uint16_t aKey, int aIndex, uint8_t *aValue, uint16_t *aValueLength)
|
Mengambil nilai setelan.
|
otPlatSettingsInit(otInstance *aInstance, const uint16_t *aSensitiveKeys, uint16_t aSensitiveKeysLength)
|
void
Melakukan inisialisasi untuk subsistem setelan, jika perlu.
|
otPlatSettingsSet(otInstance *aInstance, uint16_t aKey, const uint8_t *aValue, uint16_t aValueLength)
|
Menetapkan atau mengganti nilai setelan.
|
otPlatSettingsWipe(otInstance *aInstance)
|
void
Menghapus semua setelan dari penyimpanan setelan.
|
Enumerasi
enum anonim
anonymous enum
Menentukan kunci setelan.
Catatan: Saat menambahkan kunci setelan baru, jika setelan yang sesuai dengan kunci berisi informasi sensitif keamanan, developer HARUS menambahkan kunci ke array aSensitiveKeys
yang diteruskan di otPlatSettingsInit()
.
Properti | |
---|---|
OT_SETTINGS_KEY_ACTIVE_DATASET
|
Set Data Operasional Aktif. |
OT_SETTINGS_KEY_BORDER_AGENT_ID
|
Agen Batas/ID Router Unik. |
OT_SETTINGS_KEY_BR_ON_LINK_PREFIXES
|
Awalan on-link lokal BR. |
OT_SETTINGS_KEY_BR_ULA_PREFIX
|
Awalan BR ULA. |
OT_SETTINGS_KEY_CHILD_INFO
|
Informasi anak. |
OT_SETTINGS_KEY_DAD_INFO
|
Informasi Deteksi Alamat Duplikat (DAD). |
OT_SETTINGS_KEY_NETWORK_INFO
|
Informasi jaringan thread. |
OT_SETTINGS_KEY_PARENT_INFO
|
Informasi orang tua. |
OT_SETTINGS_KEY_PENDING_DATASET
|
Set Data Operasional Tertunda. |
OT_SETTINGS_KEY_SLAAC_IID_SECRET_KEY
|
Kunci SLAAC untuk membuat IID buram secara semantik. |
OT_SETTINGS_KEY_SRP_CLIENT_INFO
|
Info klien SRP (alamat server SRP yang dipilih). |
OT_SETTINGS_KEY_SRP_ECDSA_KEY
|
Pasangan kunci publik/pribadi ECDSA klien SRP. |
OT_SETTINGS_KEY_SRP_SERVER_INFO
|
Info server SRP (port UDP). |
Fungsi
otPlatSettingsAdd
otError otPlatSettingsAdd( otInstance *aInstance, uint16_t aKey, const uint8_t *aValue, uint16_t aValueLength )
Menambahkan nilai ke setelan.
Menambahkan nilai ke setelan yang diidentifikasi oleh aKey
, tanpa mengganti nilai yang ada.
Perhatikan bahwa implementasi yang mendasarinya tidak diperlukan untuk mempertahankan urutan item yang terkait dengan kunci tertentu. Nilai tambah dapat ditambahkan ke akhir, awal, atau bahkan di tengah-tengah. Urutan nilai yang sudah ada sebelumnya juga dapat berubah.
Berhasil memanggil fungsi ini dapat menyebabkan setelan yang tidak terkait dengan beberapa nilai diurutkan ulang.
Stack OpenThread menjamin menggunakan metode otPlatSettingsAdd()
untuk aKey
yang sebelumnya dikelola oleh otPlatSettingsAdd()
(yaitu, berisi satu atau beberapa item) atau kosong dan/atau dihapus sepenuhnya (tidak berisi nilai).
Lapisan platform dapat mengandalkan dan menggunakan fakta ini untuk mengoptimalkan implementasinya.
Detail | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||
Nilai Pengembalian |
|
otPlatSettingsDeinit
void otPlatSettingsDeinit( otInstance *aInstance )
Melakukan de-inisialisasi untuk subsistem setelan, jika perlu.
Detail | |||
---|---|---|---|
Parameter |
|
otPlatSettingsDelete
otError otPlatSettingsDelete( otInstance *aInstance, uint16_t aKey, int aIndex )
Menghapus setelan dari penyimpanan setelan.
Menghapus nilai tertentu dari setelan yang diidentifikasi oleh aKey dari penyimpanan setelan.
Perhatikan bahwa implementasi yang mendasarinya tidak diperlukan untuk mempertahankan urutan item yang terkait dengan kunci tertentu.
Detail | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
||||||
Nilai Pengembalian |
|
otPlatSettingsGet
otError otPlatSettingsGet( otInstance *aInstance, uint16_t aKey, int aIndex, uint8_t *aValue, uint16_t *aValueLength )
Mengambil nilai setelan.
Mengambil nilai setelan yang diidentifikasi oleh aKey
dan menulisnya ke memori yang ditunjukkan oleh aValue. Kemudian, kode ini akan menulis panjang ke bilangan bulat yang ditunjukkan oleh aValueLength
. Nilai awal aValueLength
adalah jumlah byte maksimum yang akan ditulis ke aValue
.
Dapat digunakan untuk memeriksa keberadaan kunci tanpa mengambil nilai dengan menetapkan aValue
dan aValueLength
ke NULL. Anda juga dapat memeriksa panjang pengaturan tanpa mengambilnya dengan hanya menetapkan aValue ke NULL.
Perhatikan bahwa implementasi penyimpanan yang mendasarinya tidak diperlukan untuk mempertahankan urutan setelan dengan beberapa nilai. Urutan nilai tersebut DAPAT berubah setelah operasi tulis APA PUN ke toko.
Detail | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||||
Nilai Pengembalian |
|
otPlatSettingsInit
void otPlatSettingsInit( otInstance *aInstance, const uint16_t *aSensitiveKeys, uint16_t aSensitiveKeysLength )
Melakukan inisialisasi untuk subsistem setelan, jika perlu.
Juga menetapkan kunci sensitif yang harus disimpan di area aman.
Perhatikan bahwa memori yang ditunjukkan oleh aSensitiveKeys
HARUS tidak dirilis sebelum aInstance
dihapus.
Detail | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
otPlatSettingsSet
otError otPlatSettingsSet( otInstance *aInstance, uint16_t aKey, const uint8_t *aValue, uint16_t aValueLength )
Menetapkan atau mengganti nilai setelan.
Menetapkan atau mengganti nilai setelan yang diidentifikasi oleh aKey
.
Berhasil memanggil fungsi ini dapat menyebabkan setelan yang tidak terkait dengan beberapa nilai diurutkan ulang.
Stack OpenThread menjamin menggunakan metode otPlatSettingsSet()
untuk aKey
yang telah ditetapkan sebelumnya menggunakan otPlatSettingsSet()
(yaitu, berisi nilai tunggal) atau kosong dan/atau dihapus sepenuhnya (tidak berisi nilai).
Lapisan platform dapat mengandalkan dan menggunakan fakta ini untuk mengoptimalkan implementasinya.
Detail | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||
Nilai Pengembalian |
|
otPlatSettingsWipe
void otPlatSettingsWipe( otInstance *aInstance )
Menghapus semua setelan dari penyimpanan setelan.
Menghapus semua setelan dari penyimpanan setelan, meresetnya ke setelan awal pabrik.
Detail | |||
---|---|---|---|
Parameter |
|
Referensi
Topik Referensi OpenThread API berasal dari kode sumber yang tersedia di GitHub. Untuk informasi selengkapnya, atau untuk berkontribusi pada dokumentasi kami, lihat Referensi.