Google berkomitmen untuk mendorong terwujudnya keadilan ras bagi komunitas Kulit Hitam. Lihat caranya.

Pengaturan

Modul ini mencakup abstraksi platform untuk penyimpanan pengaturan yang tidak mudah menguap.

Ringkasan

Enumerasi

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_RESERVED = 0x0006,
OT_SETTINGS_KEY_SLAAC_IID_SECRET_KEY = 0x0007,
OT_SETTINGS_KEY_DAD_INFO = 0x0008,
OT_SETTINGS_KEY_OMR_PREFIX = 0x0009,
OT_SETTINGS_KEY_ON_LINK_PREFIX = 0x000a,
OT_SETTINGS_KEY_SRP_ECDSA_KEY = 0x000b,
OT_SETTINGS_KEY_SRP_CLIENT_INFO = 0x000c,
OT_SETTINGS_KEY_SRP_SERVER_INFO = 0x000d
}
enum
Pencacahan ini mendefinisikan kunci pengaturan.

Fungsi

otPlatSettingsAdd ( otInstance *aInstance, uint16_t aKey, const uint8_t *aValue, uint16_t aValueLength)
Menambahkan nilai ke pengaturan.
otPlatSettingsDeinit ( otInstance *aInstance)
void
Melakukan de-inisialisasi untuk subsistem pengaturan, jika perlu.
otPlatSettingsDelete ( otInstance *aInstance, uint16_t aKey, int aIndex)
Menghapus pengaturan dari penyimpanan pengaturan.
otPlatSettingsGet ( otInstance *aInstance, uint16_t aKey, int aIndex, uint8_t *aValue, uint16_t *aValueLength)
Mengambil nilai pengaturan.
otPlatSettingsInit ( otInstance *aInstance)
void
Melakukan inisialisasi apa pun untuk subsistem pengaturan, jika perlu.
otPlatSettingsSet ( otInstance *aInstance, uint16_t aKey, const uint8_t *aValue, uint16_t aValueLength)
Menetapkan atau mengganti nilai pengaturan.
otPlatSettingsSetCriticalKeys ( otInstance *aInstance, const uint16_t *aKeys, uint16_t aKeysLength)
void
Fungsi ini mengatur kunci penting yang harus disimpan di area aman.
otPlatSettingsWipe ( otInstance *aInstance)
void
Menghapus semua pengaturan dari penyimpanan pengaturan.

Enumerasi

enum anonim

 anonymous enum

Pencacahan ini mendefinisikan kunci pengaturan.

Catatan: Ketika menambahkan sebuah kunci setings baru, jika pengaturan yang sesuai dengan kunci berisi informasi sensitif keamanan, pengembang harus menambahkan kunci ke array kCriticalKeys .

Properti
OT_SETTINGS_KEY_ACTIVE_DATASET

Kumpulan Data Operasional Aktif.

OT_SETTINGS_KEY_CHILD_INFO

Informasi anak.

OT_SETTINGS_KEY_DAD_INFO

Informasi Deteksi Alamat Duplikat (DAD).

OT_SETTINGS_KEY_NETWORK_INFO

Informasi jaringan benang.

OT_SETTINGS_KEY_OMR_PREFIX

Awalan off-mesh routable (OMR).

OT_SETTINGS_KEY_ON_LINK_PREFIX

Awalan pada tautan untuk tautan infrastruktur.

OT_SETTINGS_KEY_PARENT_INFO

Informasi orang tua.

OT_SETTINGS_KEY_PENDING_DATASET

Dataset Operasional Tertunda.

OT_SETTINGS_KEY_RESERVED

Dicadangkan (sebelumnya mulai otomatis).

OT_SETTINGS_KEY_SLAAC_IID_SECRET_KEY

Kunci SLAAC untuk menghasilkan IID semantik buram.

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

otPlatSetelanTambah

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

Menambahkan nilai ke pengaturan.

Fungsi ini menambahkan nilai ke pengaturan 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 suatu tempat di tengah. Urutan nilai yang sudah ada sebelumnya juga dapat berubah.

Memanggil fungsi ini berhasil dapat menyebabkan pengaturan yang tidak terkait dengan beberapa nilai untuk diurutkan ulang.

rincian
Parameter
[in] aInstance
Struktur instance OpenThread.
[in] aKey
Kunci yang terkait dengan pengaturan untuk diubah.
[in] aValue
Sebuah pointer ke mana nilai baru dari pengaturan harus dibaca dari. TIDAK HARUS NULL jika aValueLength bukan nol.
[in] aValueLength
Panjang data yang ditunjukkan oleh aValue. Mungkin nol.
Mengembalikan Nilai
OT_ERROR_NONE
Pengaturan yang diberikan telah ditambahkan atau dipentaskan untuk ditambahkan.
OT_ERROR_NOT_IMPLEMENTED
Fungsi ini tidak diimplementasikan pada platform ini.
OT_ERROR_NO_BUFS
Tidak ada ruang tersisa untuk menyimpan pengaturan yang diberikan.

otPlatSettingsDeinit

void otPlatSettingsDeinit(
  otInstance *aInstance
)

Melakukan de-inisialisasi untuk subsistem pengaturan, jika perlu.

rincian
Parameter
[in] aInstance
Struktur instance OpenThread.

otPlatSettingsHapus

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

Menghapus pengaturan dari penyimpanan pengaturan.

Fungsi ini menghapus nilai tertentu dari pengaturan yang diidentifikasi oleh aKey dari penyimpanan pengaturan.

Perhatikan bahwa implementasi yang mendasarinya tidak diperlukan untuk mempertahankan urutan item yang terkait dengan kunci tertentu.

rincian
Parameter
[in] aInstance
Struktur instance OpenThread.
[in] aKey
Kunci yang terkait dengan setelan yang diminta.
[in] aIndex
Indeks nilai yang akan dihapus. Jika disetel ke -1, semua nilai untuk aKey ini akan dihapus.
Mengembalikan Nilai
OT_ERROR_NONE
Kunci dan indeks yang diberikan berhasil ditemukan dan dihapus.
OT_ERROR_NOT_FOUND
Kunci atau indeks yang diberikan tidak ditemukan di toko pengaturan.
OT_ERROR_NOT_IMPLEMENTED
Fungsi ini tidak diimplementasikan pada platform ini.

otPlatSettingsDapatkan

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

Mengambil nilai pengaturan.

Fungsi ini mengambil nilai pengaturan yang diidentifikasi oleh aKey dan menulisnya ke memori yang ditunjuk oleh aValue. Itu kemudian menulis panjang ke bilangan bulat yang ditunjukkan oleh aValueLength. Nilai awal aValueLength adalah jumlah byte maksimum yang akan ditulis ke aValue.

Fungsi ini dapat digunakan untuk memeriksa keberadaan kunci tanpa mengambil nilai dengan menyetel aValue dan aValueLength ke NULL. Anda juga dapat memeriksa panjang setelan tanpa mengambilnya dengan hanya menyetel aValue ke NULL.

Perhatikan bahwa implementasi penyimpanan yang mendasarinya tidak diperlukan untuk mempertahankan urutan pengaturan dengan beberapa nilai. Urutan nilai tersebut DAPAT berubah setelah operasi tulis APAPUN ke penyimpanan.

rincian
Parameter
[in] aInstance
Struktur instance OpenThread.
[in] aKey
Kunci yang terkait dengan setelan yang diminta.
[in] aIndex
Indeks item tertentu untuk mendapatkan.
[out] aValue
Pointer ke tempat nilai pengaturan harus ditulis. Dapat disetel ke NULL jika hanya menguji keberadaan atau panjang setelan.
[in,out] aValueLength
Sebuah pointer ke panjang nilai. Saat dipanggil, penunjuk ini harus menunjuk ke bilangan bulat yang berisi ukuran nilai maksimum yang dapat ditulis ke aValue. Saat kembali, panjang sebenarnya dari pengaturan ditulis. Ini mungkin diatur ke NULL jika melakukan pemeriksaan keberadaan.
Mengembalikan Nilai
OT_ERROR_NONE
Setelan yang diberikan berhasil ditemukan dan diambil.
OT_ERROR_NOT_FOUND
Pengaturan yang diberikan tidak ditemukan di toko pengaturan.
OT_ERROR_NOT_IMPLEMENTED
Fungsi ini tidak diimplementasikan pada platform ini.

otPlatSettingsInit

void otPlatSettingsInit(
  otInstance *aInstance
)

Melakukan inisialisasi apa pun untuk subsistem pengaturan, jika perlu.

rincian
Parameter
[in] aInstance
Struktur instance OpenThread.

otPlatSettingsSet

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

Menetapkan atau mengganti nilai pengaturan.

Fungsi ini menetapkan atau mengganti nilai pengaturan yang diidentifikasi oleh aKey. Jika ada lebih dari satu nilai yang sebelumnya dikaitkan dengan aKey, maka semuanya dihapus dan diganti dengan entri tunggal ini.

Memanggil fungsi ini berhasil dapat menyebabkan pengaturan yang tidak terkait dengan beberapa nilai untuk diurutkan ulang.

rincian
Parameter
[in] aInstance
Struktur instance OpenThread.
[in] aKey
Kunci yang terkait dengan pengaturan untuk diubah.
[in] aValue
Sebuah pointer ke mana nilai baru dari pengaturan harus dibaca dari. TIDAK HARUS NULL jika aValueLength bukan nol.
[in] aValueLength
Panjang data yang ditunjukkan oleh aValue. Mungkin nol.
Mengembalikan Nilai
OT_ERROR_NONE
Pengaturan yang diberikan diubah atau dipentaskan.
OT_ERROR_NOT_IMPLEMENTED
Fungsi ini tidak diimplementasikan pada platform ini.
OT_ERROR_NO_BUFS
Tidak ada ruang tersisa untuk menyimpan pengaturan yang diberikan.

otPlatSettingsSetCriticalKeys

void otPlatSettingsSetCriticalKeys(
  otInstance *aInstance,
  const uint16_t *aKeys,
  uint16_t aKeysLength
)

Fungsi ini mengatur kunci penting yang harus disimpan di area aman.

Perhatikan bahwa memori yang ditunjuk oleh aKeys HARUS tidak akan dirilis sebelum aInstance hancur.

rincian
Parameter
[in] aInstance
Struktur instance OpenThread.
[in] aKeys
Pointer ke array yang berisi daftar kunci penting.
[in] aKeysLength
Jumlah entri dalam aKeys larik.

otPlatSetelanHapus

void otPlatSettingsWipe(
  otInstance *aInstance
)

Menghapus semua pengaturan dari penyimpanan pengaturan.

Fungsi ini menghapus semua pengaturan dari toko pengaturan, mengatur ulang ke keadaan awal pabrik.

rincian
Parameter
[in] aInstance
Struktur instance OpenThread.