การตั้งค่า
โมดูลนี้ประกอบด้วยกระบวนการ Abstraction ของแพลตฟอร์มสำหรับพื้นที่เก็บข้อมูลการตั้งค่าที่ไม่ผันผวน
สรุป
การแจกแจง |
|
---|---|
anonymous enum{
|
enum กำหนดคีย์ของการตั้งค่า |
ฟังก์ชัน |
|
---|---|
otPlatSettingsAdd(otInstance *aInstance, uint16_t aKey, const uint8_t *aValue, uint16_t aValueLength)
|
เพิ่มค่าลงในการตั้งค่า
|
otPlatSettingsDeinit(otInstance *aInstance)
|
void
ดำเนินการลบค่าเริ่มต้นสำหรับระบบย่อยของการตั้งค่า หากจำเป็น
|
otPlatSettingsDelete(otInstance *aInstance, uint16_t aKey, int aIndex)
|
นำการตั้งค่าออกจากที่เก็บการตั้งค่า
|
otPlatSettingsGet(otInstance *aInstance, uint16_t aKey, int aIndex, uint8_t *aValue, uint16_t *aValueLength)
|
ดึงค่าของการตั้งค่า
|
otPlatSettingsInit(otInstance *aInstance, const uint16_t *aSensitiveKeys, uint16_t aSensitiveKeysLength)
|
void
ดำเนินการเริ่มต้นให้กับระบบย่อยของการตั้งค่า หากจำเป็น
|
otPlatSettingsSet(otInstance *aInstance, uint16_t aKey, const uint8_t *aValue, uint16_t aValueLength)
|
ตั้งค่าหรือแทนที่ค่าของการตั้งค่า
|
otPlatSettingsWipe(otInstance *aInstance)
|
void
นำการตั้งค่าทั้งหมดออกจากที่เก็บการตั้งค่า
|
การแจกแจง
enum ที่ไม่ระบุตัวตน
anonymous enum
กำหนดคีย์ของการตั้งค่า
หมายเหตุ: เมื่อเพิ่มคีย์การตั้งค่าใหม่ หากการตั้งค่าที่เกี่ยวข้องกับคีย์ดังกล่าวมีข้อมูลที่ละเอียดอ่อนด้านความปลอดภัย นักพัฒนาแอปจะต้องเพิ่มคีย์ลงในอาร์เรย์ aSensitiveKeys
ซึ่งส่งใน otPlatSettingsInit()
พร็อพเพอร์ตี้ | |
---|---|
OT_SETTINGS_KEY_ACTIVE_DATASET
|
ชุดข้อมูลการทำงานที่ใช้งานอยู่ |
OT_SETTINGS_KEY_BORDER_AGENT_ID
|
เอเจนต์ชายแดน/รหัสเราเตอร์ที่ไม่ซ้ำกัน |
OT_SETTINGS_KEY_BR_ON_LINK_PREFIXES
|
คำนำหน้า On-link ของบราซิล |
OT_SETTINGS_KEY_BR_ULA_PREFIX
|
คำนำหน้า BR ULA |
OT_SETTINGS_KEY_CHILD_INFO
|
ข้อมูลย่อย |
OT_SETTINGS_KEY_DAD_INFO
|
ข้อมูลการตรวจจับที่อยู่ (DAD) ซ้ำ |
OT_SETTINGS_KEY_NETWORK_INFO
|
ข้อมูลเครือข่ายเทรด |
OT_SETTINGS_KEY_PARENT_INFO
|
ข้อมูลระดับบนสุด |
OT_SETTINGS_KEY_PENDING_DATASET
|
ชุดข้อมูลการดำเนินการที่รอดำเนินการ |
OT_SETTINGS_KEY_SLAAC_IID_SECRET_KEY
|
คีย์ SLAAC เพื่อสร้าง IID แบบทึบเชิงความหมาย |
OT_SETTINGS_KEY_SRP_CLIENT_INFO
|
ข้อมูลไคลเอ็นต์ SRP (ที่อยู่เซิร์ฟเวอร์ SRP ที่เลือก) |
OT_SETTINGS_KEY_SRP_ECDSA_KEY
|
คู่คีย์สาธารณะ/ส่วนตัว ECDSA ของไคลเอ็นต์ SRP |
OT_SETTINGS_KEY_SRP_SERVER_INFO
|
ข้อมูลเซิร์ฟเวอร์ SRP (พอร์ต UDP) |
ฟังก์ชัน
otPlatSettingsAdd
otError otPlatSettingsAdd( otInstance *aInstance, uint16_t aKey, const uint8_t *aValue, uint16_t aValueLength )
เพิ่มค่าลงในการตั้งค่า
เพิ่มค่าลงในการตั้งค่าที่ระบุโดย aKey
โดยไม่แทนที่ค่าที่มีอยู่
โปรดทราบว่าคุณไม่จำเป็นต้องติดตั้งใช้งานที่สำคัญเพื่อรักษาลำดับของรายการที่เชื่อมโยงกับคีย์ที่เฉพาะเจาะจง อาจมีการเพิ่มค่าที่เพิ่มต่อท้าย ตอนต้น หรือช่วงกลางก็ได้ ลำดับของค่าที่มีอยู่แล้วอาจมีการเปลี่ยนแปลงด้วย
การเรียกใช้ฟังก์ชันนี้ให้สำเร็จอาจทำให้มีการจัดลำดับการตั้งค่าที่ไม่เกี่ยวข้องซึ่งมีหลายค่าซ้ำ
สแต็ก OpenThread รับประกันว่าจะใช้เมธอด otPlatSettingsAdd()
สำหรับ aKey
ที่ otPlatSettingsAdd()
จัดการก่อนหน้านี้ (เช่น มีอย่างน้อย 1 รายการ) หรือว่างเปล่าและ/หรือลบทั้งหมด (ไม่มีค่า)
เลเยอร์ของแพลตฟอร์มสามารถใช้ข้อมูลนี้ในการเพิ่มประสิทธิภาพการใช้งานได้
รายละเอียด | |||||||||
---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||
แสดงผลค่า |
|
otPlatSettingsDeinit
void otPlatSettingsDeinit( otInstance *aInstance )
ดำเนินการลบค่าเริ่มต้นสำหรับระบบย่อยของการตั้งค่า หากจำเป็น
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
otPlatSettingsDelete
otError otPlatSettingsDelete( otInstance *aInstance, uint16_t aKey, int aIndex )
นำการตั้งค่าออกจากที่เก็บการตั้งค่า
ลบค่าที่เจาะจงจากการตั้งค่าที่ระบุโดย aKey จากพื้นที่เก็บการตั้งค่า
โปรดทราบว่าคุณไม่จำเป็นต้องติดตั้งใช้งานที่สำคัญเพื่อรักษาลำดับของรายการที่เชื่อมโยงกับคีย์ที่เฉพาะเจาะจง
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
แสดงผลค่า |
|
otPlatSettingsGet
otError otPlatSettingsGet( otInstance *aInstance, uint16_t aKey, int aIndex, uint8_t *aValue, uint16_t *aValueLength )
ดึงค่าของการตั้งค่า
จะดึงข้อมูลค่าของการตั้งค่าที่ระบุโดย aKey
และเขียนไปยังหน่วยความจำที่ aValue ชี้ไป จากนั้นจะเขียนความยาวเป็นจำนวนเต็มที่ aValueLength
ชี้ไป ค่าเริ่มต้น aValueLength
คือจำนวนไบต์สูงสุดที่จะเขียนไปยัง aValue
ใช้เพื่อตรวจสอบการมีอยู่ของคีย์ได้โดยไม่ต้องดึงค่าโดยการตั้งค่า aValue
และ aValueLength
เป็น NULL นอกจากนี้คุณยังตรวจสอบความยาวของการตั้งค่าโดยไม่ต้องดึงข้อมูลได้โดยการตั้งค่าเฉพาะ aValue เป็น NULL
โปรดทราบว่าการใช้พื้นที่เก็บข้อมูลพื้นฐานไม่จำเป็นต่อการรักษาลำดับของการตั้งค่าที่มีค่าหลายค่า ลำดับของค่าดังกล่าวอาจเปลี่ยนแปลงหลังจากการเขียนใน Store
รายละเอียด | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||||
แสดงผลค่า |
|
otPlatSettingsInit
void otPlatSettingsInit( otInstance *aInstance, const uint16_t *aSensitiveKeys, uint16_t aSensitiveKeysLength )
ดำเนินการเริ่มต้นให้กับระบบย่อยของการตั้งค่า หากจำเป็น
อีกทั้งตั้งค่าคีย์ที่มีความละเอียดอ่อนซึ่งควรจัดเก็บในพื้นที่ที่ปลอดภัย
โปรดทราบว่าต้องไม่ปล่อยหน่วยความจำที่ aSensitiveKeys
ชี้ไปก่อน aInstance
จะถูกทำลาย
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
otPlatSettingsSet
otError otPlatSettingsSet( otInstance *aInstance, uint16_t aKey, const uint8_t *aValue, uint16_t aValueLength )
ตั้งค่าหรือแทนที่ค่าของการตั้งค่า
ตั้งค่าหรือแทนที่ค่าของการตั้งค่าที่ระบุโดย aKey
การเรียกใช้ฟังก์ชันนี้ให้สำเร็จอาจทำให้มีการจัดลำดับการตั้งค่าที่ไม่เกี่ยวข้องซึ่งมีหลายค่าซ้ำ
สแต็ก OpenThread รับประกันว่าจะใช้เมธอด otPlatSettingsSet()
สำหรับ aKey
ที่ตั้งค่าไว้ก่อนหน้านี้โดยใช้ otPlatSettingsSet()
(เช่น มีค่าเดียว) หรือว่างเปล่าและ/หรือลบทั้งหมด (ไม่มีค่า)
เลเยอร์ของแพลตฟอร์มสามารถใช้ข้อมูลนี้ในการเพิ่มประสิทธิภาพการใช้งานได้
รายละเอียด | |||||||||
---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||
แสดงผลค่า |
|
otPlatSettingsWipe
void otPlatSettingsWipe( otInstance *aInstance )
นำการตั้งค่าทั้งหมดออกจากที่เก็บการตั้งค่า
ลบการตั้งค่าทั้งหมดออกจากที่เก็บการตั้งค่า แล้วรีเซ็ตเป็นค่าเริ่มต้นจากโรงงาน
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
แหล่งข้อมูล
หัวข้ออ้างอิง API ของ OpenThread จะมาจากซอร์สโค้ดซึ่งพร้อมใช้งานใน GitHub ดูข้อมูลเพิ่มเติมหรือมีส่วนร่วมในเอกสารประกอบของเราได้ที่แหล่งข้อมูล