الإعدادات
تتضمن هذه الوحدة تجريد النظام الأساسي للتخزين غير المتطاير للإعدادات.
ملخّص
عمليات التعداد |
|
---|---|
anonymous 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
|
البادئات المحلية على الرابط في البرازيل |
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()
(أي تحتوي على عنصر واحد أو أكثر) أو فارغة و/أو محذوفة بالكامل (لا تحتوي على أي قيمة).
يمكن لطبقة النظام الأساسي الاعتماد على هذه الحقيقة واستخدامها لتحسين عملية تنفيذها.
التفاصيل | |||||||||
---|---|---|---|---|---|---|---|---|---|
المَعلمات |
|
||||||||
قيم الإرجاع |
|
otPlatSettingsDeinit
void otPlatSettingsDeinit( otInstance *aInstance )
إجراء أي إلغاء تهيئة للنظام الفرعي للإعدادات، إذا لزم الأمر.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
otPlatSettingsDelete
otError otPlatSettingsDelete( otInstance *aInstance, uint16_t aKey, int aIndex )
يؤدي إلى إزالة إعداد من مخزن الإعدادات.
لحذف قيمة معيّنة من الإعداد الذي يحدِّده مفتاح من مخزن الإعدادات.
وتجدُر الإشارة إلى أنّ عملية التنفيذ الأساسية لا تتطلّب الحفاظ على ترتيب العناصر المرتبطة بمفتاح معيّن.
التفاصيل | |||||||
---|---|---|---|---|---|---|---|
المَعلمات |
|
||||||
قيم الإرجاع |
|
otPlatSettingsGet
otError otPlatSettingsGet( otInstance *aInstance, uint16_t aKey, int aIndex, uint8_t *aValue, uint16_t *aValueLength )
لاسترجاع قيمة إعداد
لاسترجاع قيمة الإعداد المحددة بواسطة aKey
وكتابتها على الذاكرة المشار إليها بواسطة aValue. ثم تكتب هذه الدالة الطول إلى العدد الصحيح الذي يشير إليه aValueLength
. القيمة الأولية لـ aValueLength
هي الحد الأقصى لعدد وحدات البايت التي يمكن كتابتها في aValue
.
يمكن استخدامها للتحقّق من وجود مفتاح بدون جلب القيمة من خلال ضبط aValue
وaValueLength
على "فارغ". يمكنك أيضًا التحقق من طول الإعداد بدون جلبه من خلال تعيين قيمة فقط إلى NULL.
يُرجى العلم أنّ تنفيذ مساحة التخزين الأساسية غير مطلوب للحفاظ على ترتيب الإعدادات ذات القيم المتعدّدة. قد يتغير ترتيب هذه القيم بعد أي عملية كتابة إلى المخزن.
التفاصيل | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
المَعلمات |
|
||||||||||
قيم الإرجاع |
|
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 من رمز المصدر المتاح على GitHub. للحصول على مزيد من المعلومات أو للمساهمة في مستنداتنا، يمكنك الاطّلاع على المراجع.