הגדרות
המודול הזה כולל את הפשטת הפלטפורמה לצורך אחסון הגדרות לא תנודתי.
סיכום
ספירות |
|
---|---|
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
כל ההגדרות יוסרו ממאגר ההגדרות.
|
ספירות
טיפוסים אנונימיים
anonymous enum
מגדירה את מפתחות ההגדרות.
הערה: כשמוסיפים מפתח הגדרות חדש, אם ההגדרות שתואמות למפתח מכילות מידע רגיש לאבטחה, המפתח חייב להוסיף את המפתח למערך aSensitiveKeys
שמועבר ב-otPlatSettingsInit()
.
תכונות | |
---|---|
OT_SETTINGS_KEY_ACTIVE_DATASET
|
מערך נתונים תפעולי פעיל. |
OT_SETTINGS_KEY_BORDER_AGENT_ID
|
מזהה סוכן גבול/נתב ייחודי. |
OT_SETTINGS_KEY_BR_ON_LINK_PREFIXES
|
תחיליות מקומיות בקישור ב-BR. |
OT_SETTINGS_KEY_BR_ULA_PREFIX
|
קידומת BR ULA. |
OT_SETTINGS_KEY_CHILD_INFO
|
מידע על ילדים. |
OT_SETTINGS_KEY_DAD_INFO
|
מידע על זיהוי כתובות כפולות (DAD). |
OT_SETTINGS_KEY_NETWORK_INFO
|
נתוני הרשת של Thread. |
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()
(כלומר מכיל פריט אחד או יותר), או שהוא ריק ו/או נמחק במלואו (לא מכיל ערך).
שכבת הפלטפורמה יכולה להסתמך על עובדה זו ולהשתמש בה לצורך אופטימיזציה של ההטמעה.
פרטים | |||||||||
---|---|---|---|---|---|---|---|---|---|
פרמטרים |
|
||||||||
ערכים מוחזרים |
|
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. אפשר גם לבדוק את אורך ההגדרה בלי לאחזר אותה, על ידי הגדרת הערך NULL בלבד ל-aValue.
הערה: ההטמעה של האחסון הבסיסי לא נדרשת לשמירה על סדר ההגדרות עם ערכים מרובים. סדר הערכים האלה עשוי להשתנות לאחר פעולת כתיבה כלשהי בחנות.
פרטים | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
פרמטרים |
|
||||||||||
ערכים מוחזרים |
|
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 )
כל ההגדרות יוסרו ממאגר ההגדרות.
מוחק את כל ההגדרות ממאגר ההגדרות ומאפס אותו להגדרות היצרן המקוריות שלו.
פרטים | |||
---|---|---|---|
פרמטרים |
|
מקורות מידע
המקור של נושאי העזר של OpenThread API הוא קוד המקור, שזמין ב-GitHub. אפשר לקרוא מידע נוסף או לתרום למסמכי התיעוד שלנו בדף מקורות מידע.