Google is committed to advancing racial equity for Black communities. See how.
ترجمت واجهة Cloud Translation API‏ هذه الصفحة.
Switch to English

IPv6

تتضمن هذه الوحدة الوظائف التي تتحكم في اتصال IPv6.

ملخص

التعداد

anonymous enum {
OT_ADDRESS_ORIGIN_THREAD = 0,
OT_ADDRESS_ORIGIN_SLAAC = 1,
OT_ADDRESS_ORIGIN_DHCPV6 = 2,
OT_ADDRESS_ORIGIN_MANUAL = 3
}
تعداد
أصول عنوان IPv6.

النوع

otIp6Address typedef
struct otIp6Address
تمثل هذه البنية عنوان IPv6.
otIp6AddressCallback )(const otIp6AddressInfo *aAddressInfo, bool aIsAdded, void *aContext) typedef
void(*
يتم استدعاء مؤشر الوظيفة هذا عند إضافة عنوان IPv6 داخلي أو إزالته.
otIp6AddressComponents typedef
تمثل هذه البنية مكونات عنوان IPv6.
otIp6AddressInfo typedef
otIp6InterfaceIdentifier typedef
تمثل هذه البنية معرف الواجهة لعنوان IPv6.
otIp6NetworkPrefix typedef
تمثل هذه البنية بادئة الشبكة لعنوان IPv6 (أهم 64 بت من العنوان).
otIp6Prefix typedef
struct otIp6Prefix
تمثل هذه البنية بادئة IPv6.
otIp6ReceiveCallback )(otMessage *aMessage, void *aContext) typedef
void(*
يتم استدعاء مؤشر الوظيفة هذا عند تلقي مخطط بيانات IPv6.
otIp6RegisterMulticastListenersCallback )(void *aContext, otError aError, uint8_t aMlrStatus, const otIp6Address *aFailedAddresses, uint8_t aFailedAddressNum) typedef
void(*
يسمى مؤشر الوظيفة هذا بنتائج otIp6RegisterMulticastListeners .
otIp6SlaacPrefixFilter )(otInstance *aInstance, const otIp6Prefix *aPrefix) typedef
bool(*
يتيح مؤشر الوظيفة هذا للمستخدم تصفية البادئات وعدم السماح بإضافة عنوان SLAAC استنادًا إلى بادئة.
otMessageInfo typedef
تمثل هذه البنية عناوين مقبس IPv6 المحلي والنظير.
otNetifAddress typedef
تمثل هذه البنية عنوان الإرسال الأحادي لواجهة شبكة IPv6.
otNetifMulticastAddress typedef
تمثل هذه البنية عنوان البث المتعدد لواجهة شبكة IPv6.
otSockAddr typedef
struct otSockAddr
تمثل هذه البنية عنوان مأخذ توصيل IPv6.

المتغيرات

OT_TOOL_PACKED_END

المهام

otIp6AddUnicastAddress ( otInstance *aInstance, const otNetifAddress *aAddress)
أضف عنوان واجهة الشبكة إلى واجهة مؤشر الترابط.
otIp6AddUnsecurePort ( otInstance *aInstance, uint16_t aPort)
تضيف هذه الوظيفة منفذًا إلى قائمة المنافذ غير الآمنة المسموح بها.
otIp6AddressFromString (const char *aString, otIp6Address *aAddress)
تحويل سلسلة عنوان IPv6 يمكن قراءتها بواسطة الإنسان إلى تمثيل ثنائي.
otIp6GetMulticastAddresses ( otInstance *aInstance)
احصل على قائمة بعناوين البث المتعدد IPv6 المشتركة في واجهة الموضوع.
otIp6GetUnicastAddresses ( otInstance *aInstance)
احصل على قائمة بعناوين IPv6 المعينة لواجهة الموضوع.
otIp6GetUnsecurePorts ( otInstance *aInstance, uint8_t *aNumEntries)
const uint16_t *
تقوم هذه الوظيفة بإرجاع مؤشر إلى قائمة المنافذ غير الآمنة.
otIp6IsAddressEqual (const otIp6Address *aFirst, const otIp6Address *aSecond)
bool
اختبر ما إذا كان عنوانا IPv6 متماثلين.
otIp6IsAddressUnspecified (const otIp6Address *aAddress)
bool
تشير هذه الوظيفة إلى ما إذا كان عنوان IPv6 المحدد هو العنوان غير المحدد أم لا.
otIp6IsEnabled ( otInstance *aInstance)
bool
تشير هذه الوظيفة إلى ما إذا كانت واجهة IPv6 قيد التشغيل أم لا.
otIp6IsMulticastPromiscuousEnabled ( otInstance *aInstance)
bool
تحقق مما إذا كان الوضع المختلط للبث المتعدد ممكّنًا على واجهة مؤشر الترابط.
otIp6IsReceiveFilterEnabled ( otInstance *aInstance)
bool
تشير هذه الوظيفة إلى ما إذا كان يتم تصفية حركة مرور التحكم في مؤشر الترابط أم لا عند تسليم مخططات بيانات IPv6 عبر رد الاتصال المحدد في otIp6SetReceiveCallback () .
otIp6IsSlaacEnabled ( otInstance *aInstance)
bool
تشير هذه الوظيفة إلى ما إذا كانت وحدة SLAAC ممكنة أم لا.
otIp6NewMessage ( otInstance *aInstance, const otMessageSettings *aSettings)
تخصيص مخزن مؤقت للرسائل الجديدة لإرسال رسالة IPv6.
otIp6NewMessageFromBuffer ( otInstance *aInstance, const uint8_t *aData, uint16_t aDataLength, const otMessageSettings *aSettings)
قم بتخصيص مخزن مؤقت للرسائل الجديدة واكتب مخطط بيانات IPv6 إلى مخزن الرسائل المؤقت لإرسال رسالة IPv6.
otIp6PrefixMatch (const otIp6Address *aFirst, const otIp6Address *aSecond)
uint8_t
تقوم هذه الوظيفة بإرجاع طول مطابقة البادئة (بت) لعناوين IPv6.
otIp6RegisterMulticastListeners ( otInstance *aInstance, const otIp6Address *aAddresses, uint8_t aAddressNum, const uint32_t *aTimeout, otIp6RegisterMulticastListenersCallback aCallback, void *aContext)
تسجل هذه الوظيفة مستمعي البث المتعدد في جهاز التوجيه الأساسي الأساسي.
otIp6RemoveAllUnsecurePorts ( otInstance *aInstance)
void
تزيل هذه الوظيفة جميع المنافذ من قائمة المنافذ غير الآمنة المسموح بها.
otIp6RemoveUnicastAddress ( otInstance *aInstance, const otIp6Address *aAddress)
قم بإزالة عنوان واجهة الشبكة من واجهة مؤشر الترابط.
otIp6RemoveUnsecurePort ( otInstance *aInstance, uint16_t aPort)
تقوم هذه الوظيفة بإزالة منفذ من قائمة المنافذ غير الآمنة المسموح بها.
otIp6SelectSourceAddress ( otInstance *aInstance, otMessageInfo *aMessageInfo)
تقوم هذه الوظيفة بتحديد عنوان مصدر OpenThread.
otIp6Send ( otInstance *aInstance, otMessage *aMessage)
ترسل هذه الوظيفة مخطط بيانات IPv6 عبر واجهة مؤشر الترابط.
otIp6SetAddressCallback ( otInstance *aInstance, otIp6AddressCallback aCallback, void *aCallbackContext)
void
تقوم هذه الوظيفة بتسجيل رد اتصال لإخطار تغييرات عنوان IPv6 الداخلية.
otIp6SetEnabled ( otInstance *aInstance, bool aEnabled)
تقوم هذه الوظيفة بإحضار واجهة IPv6 لأعلى / لأسفل.
otIp6SetMulticastPromiscuousEnabled ( otInstance *aInstance, bool aEnabled)
void
تفعيل الوضع المختلط للبث المتعدد على واجهة مؤشر الترابط.
otIp6SetReceiveCallback ( otInstance *aInstance, otIp6ReceiveCallback aCallback, void *aCallbackContext)
void
تسجل هذه الوظيفة رد اتصال لتوفير مخططات بيانات IPv6 المستلمة.
otIp6SetReceiveFilterEnabled ( otInstance *aInstance, bool aEnabled)
void
تحدد هذه الوظيفة ما إذا كان يتم تصفية حركة مرور التحكم في مؤشر الترابط أم لا عند تسليم مخططات بيانات IPv6 عبر رد الاتصال المحدد في otIp6SetReceiveCallback () .
otIp6SetSlaacEnabled ( otInstance *aInstance, bool aEnabled)
void
تعمل هذه الوظيفة على تمكين / تعطيل وحدة SLAAC.
otIp6SetSlaacPrefixFilter ( otInstance *aInstance, otIp6SlaacPrefixFilter aFilter)
void
تحدد هذه الوظيفة معالج مرشح وحدة SLAAC.
otIp6SubscribeMulticastAddress ( otInstance *aInstance, const otIp6Address *aAddress)
اشترك في واجهة مؤشر الترابط في عنوان الإرسال المتعدد لواجهة الشبكة.
otIp6UnsubscribeMulticastAddress ( otInstance *aInstance, const otIp6Address *aAddress)
قم بإلغاء الاشتراك في واجهة مؤشر الترابط في عنوان الإرسال المتعدد لواجهة الشبكة.

الهياكل

otIp6 العنوان

تمثل هذه البنية عنوان IPv6.

otIp6AddressComponents

تمثل هذه البنية مكونات عنوان IPv6.

otIp6AddressInfo

يمثل هذا الهيكل معلومات عنوان IPv6.

otIp6InterfaceIdentifier

تمثل هذه البنية معرف الواجهة لعنوان IPv6.

otIp6NetworkPrefix

تمثل هذه البنية بادئة الشبكة لعنوان IPv6 (أهم 64 بت من العنوان).

otIp6Prefix

تمثل هذه البنية بادئة IPv6.

otMessageInfo

تمثل هذه البنية عناوين مقبس IPv6 المحلي والنظير.

otNetifAddress

تمثل هذه البنية عنوان الإرسال الأحادي لواجهة شبكة IPv6.

otNetifMulticastAddress

تمثل هذه البنية عنوان البث المتعدد لواجهة شبكة IPv6.

otSockAddr

تمثل هذه البنية عنوان مأخذ توصيل IPv6.

النقابات

otIp6InterfaceIdentifier :: OT_TOOL_PACKED_FIELD

التعداد

تعداد مجهول

 anonymous enum

أصول عنوان IPv6.

الخصائص
OT_ADDRESS_ORIGIN_DHCPV6

عنوان DHCPv6 المعين.

OT_ADDRESS_ORIGIN_MANUAL

العنوان المعين يدويًا.

OT_ADDRESS_ORIGIN_SLAAC

عنوان SLAAC المعين.

OT_ADDRESS_ORIGIN_THREAD

عنوان الموضوع المعين (ALOC ، RLOC ، MLEID ، إلخ)

النوع

otIp6 العنوان

struct otIp6Address otIp6Address

تمثل هذه البنية عنوان IPv6.

otIp6AddressCallback

void(* otIp6AddressCallback)(const otIp6AddressInfo *aAddressInfo, bool aIsAdded, void *aContext)

يتم استدعاء مؤشر الوظيفة هذا عند إضافة عنوان IPv6 داخلي أو إزالته.

تفاصيل
المعلمات
[in] aAddressInfo
مؤشر إلى معلومات عنوان IPv6.
[in] aIsAdded
TRUE إذا كان aAddress وأضيف، FALSE إذا aAddress تمت إزالته.
[in] aContext
مؤشر إلى سياق خاص بالتطبيق.

otIp6AddressComponents

struct otIp6AddressComponents otIp6AddressComponents

تمثل هذه البنية مكونات عنوان IPv6.

otIp6AddressInfo

struct otIp6AddressInfo otIp6AddressInfo

otIp6InterfaceIdentifier

struct otIp6InterfaceIdentifier otIp6InterfaceIdentifier

تمثل هذه البنية معرف الواجهة لعنوان IPv6.

otIp6NetworkPrefix

struct otIp6NetworkPrefix otIp6NetworkPrefix

تمثل هذه البنية بادئة الشبكة لعنوان IPv6 (أهم 64 بت من العنوان).

otIp6Prefix

struct otIp6Prefix otIp6Prefix

تمثل هذه البنية بادئة IPv6.

otIp6ReceiveCallback

void(* otIp6ReceiveCallback)(otMessage *aMessage, void *aContext)

يتم استدعاء مؤشر الوظيفة هذا عند تلقي مخطط بيانات IPv6.

تفاصيل
المعلمات
[in] aMessage
مؤشر إلى مخزن الرسائل الذي يحتوي على مخطط بيانات IPv6 المستلم. تقوم هذه الوظيفة بنقل ملكية aMessage إلى متلقي رد aMessage . يجب تحرير الرسالة من قبل المتلقي لرد الاتصال بعد معالجتها (انظر otMessageFree () ).
[in] aContext
مؤشر إلى سياق خاص بالتطبيق.

otIp6 تسجيل متعدد رسائل الاستماع رد الاتصال

void(* otIp6RegisterMulticastListenersCallback)(void *aContext, otError aError, uint8_t aMlrStatus, const otIp6Address *aFailedAddresses, uint8_t aFailedAddressNum)

يسمى مؤشر الوظيفة هذا بنتائج otIp6RegisterMulticastListeners .

تفاصيل
المعلمات
[in] aContext
مؤشر لسياق المستخدم.
[in] aError
OT_ERROR_NONE عند إرسال MLR.req بنجاح وتلقي MLR.rsp و OT_ERROR_RESPONSE_TIMEOUT عندما فشل في تلقي MLR.rsp و OT_ERROR_PARSE عند فشل تحليل MLR.rsp.
[in] aMlrStatus
حالة تسجيل مستمع الإرسال المتعدد عندما يكون aError هو OT_ERROR_NONE.
[in] aFailedAddresses
مؤشر إلى عناوين Ip6 الفاشلة عندما يكون aError هو OT_ERROR_NONE.
[in] aFailedAddressNum
عدد عناوين Ip6 الفاشلة عندما يكون aError هو OT_ERROR_NONE.
أنظر أيضا:
otIp6 تسجيل المستمعين المتعدد

مرشح otIp6SlaacPrefix

bool(* otIp6SlaacPrefixFilter)(otInstance *aInstance, const otIp6Prefix *aPrefix)

يتيح مؤشر الوظيفة هذا للمستخدم تصفية البادئات وعدم السماح بإضافة عنوان SLAAC استنادًا إلى بادئة.

يمكن استخدام otIp6SetSlaacPrefixFilter() لتعيين معالج المرشح. يتم استدعاء معالج المرشح بواسطة الوحدة النمطية SLAAC عندما تكون على وشك إضافة عنوان SLAAC استنادًا إلى بادئة. تحدد قيمة الإرجاع المنطقية الخاصة به ما إذا كان العنوان قد تمت تصفيته (غير مضاف) أم لا.

تفاصيل
المعلمات
[in] aInstacne
مؤشر إلى مثيل OpenThread.
[in] aPrefix
مؤشر البادئة التي سيتم إضافة عنوان SLAAC لها.
إرجاع القيم
TRUE
يشير إلى أنه يجب تصفية عنوان SLAAC المستند إلى البادئة وعدم إضافته.
FALSE
يشير إلى أنه يجب إضافة عنوان SLAAC المستند إلى البادئة.

otMessageInfo

struct otMessageInfo otMessageInfo

تمثل هذه البنية عناوين مقبس IPv6 المحلي والنظير.

otNetifAddress

struct otNetifAddress otNetifAddress

تمثل هذه البنية عنوان الإرسال الأحادي لواجهة شبكة IPv6.

otNetifMulticastAddress

struct otNetifMulticastAddress otNetifMulticastAddress

تمثل هذه البنية عنوان البث المتعدد لواجهة شبكة IPv6.

otSockAddr

struct otSockAddr otSockAddr

تمثل هذه البنية عنوان مأخذ توصيل IPv6.

المتغيرات

OT_TOOL_PACKED_END

OT_TOOL_PACKED_BEGIN struct otIp6InterfaceIdentifier OT_TOOL_PACKED_END

المهام

otIp6AddUnicastAddress

otError otIp6AddUnicastAddress(
  otInstance *aInstance,
  const otNetifAddress *aAddress
)

أضف عنوان واجهة الشبكة إلى واجهة مؤشر الترابط.

يتم نسخ المثيل الذي تم aAddress بواسطة واجهة مؤشر الترابط. تدعم واجهة مؤشر الترابط فقط عددًا ثابتًا من عناوين الإرسال الأحادي المضافة خارجيًا. انظر OPENTHREAD_CONFIG_IP6_MAX_EXT_UCAST_ADDRS.

تفاصيل
المعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread.
[in] aAddress
مؤشر إلى عنوان واجهة الشبكة.
إرجاع القيم
OT_ERROR_NONE
تمت إضافة (أو تحديث) عنوان واجهة الشبكة بنجاح.
OT_ERROR_INVALID_ARGS
عنوان IP المشار إليه بواسطة aAddress هو عنوان داخلي.
OT_ERROR_NO_BUFS
تقوم واجهة الشبكة بالفعل بتخزين الحد الأقصى للعناوين الخارجية المسموح بها.

otIp6AddUnsecurePort

otError otIp6AddUnsecurePort(
  otInstance *aInstance,
  uint16_t aPort
)

تضيف هذه الوظيفة منفذًا إلى قائمة المنافذ غير الآمنة المسموح بها.

تفاصيل
المعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread.
[in] aPort
قيمة المنفذ.
إرجاع القيم
OT_ERROR_NONE
تمت إضافة المنفذ بنجاح إلى قائمة المنافذ غير الآمنة المسموح بها.
OT_ERROR_INVALID_ARGS
المنفذ غير صالح (القيمة 0 محجوزة للاستخدام الداخلي).
OT_ERROR_NO_BUFS
قائمة المنافذ غير الآمنة ممتلئة.

otIp6AddressFromString

otError otIp6AddressFromString(
  const char *aString,
  otIp6Address *aAddress
)

تحويل سلسلة عنوان IPv6 يمكن قراءتها بواسطة الإنسان إلى تمثيل ثنائي.

تفاصيل
المعلمات
[in] aString
مؤشر لسلسلة منتهية NULL.
[out] aAddress
مؤشر إلى عنوان IPv6.
إرجاع القيم
OT_ERROR_NONE
تم تحليل السلسلة بنجاح.
OT_ERROR_INVALID_ARGS
فشل تحليل السلسلة.

otIp6GetMulticastAddresses

const otNetifMulticastAddress * otIp6GetMulticastAddresses(
  otInstance *aInstance
)

احصل على قائمة بعناوين البث المتعدد IPv6 المشتركة في واجهة الموضوع.

تفاصيل
المعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread.
عائدات
مؤشر إلى أول عنوان الإرسال المتعدد لواجهة الشبكة.

otIp6GetUnicastAddresses

const otNetifAddress * otIp6GetUnicastAddresses(
  otInstance *aInstance
)

احصل على قائمة عناوين IPv6 المعينة لواجهة الموضوع.

تفاصيل
المعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread.
عائدات
مؤشر إلى أول عنوان لواجهة الشبكة.

otIp6 احصل على منافذ غير آمنة

const uint16_t * otIp6GetUnsecurePorts(
  otInstance *aInstance,
  uint8_t *aNumEntries
)

تقوم هذه الوظيفة بإرجاع مؤشر إلى قائمة المنافذ غير الآمنة.

تفاصيل
المعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread.
[out] aNumEntries
عدد الإدخالات في القائمة.
عائدات
مؤشر لقائمة المنافذ غير الآمنة.

otIp6IsAddressEqual

bool otIp6IsAddressEqual(
  const otIp6Address *aFirst,
  const otIp6Address *aSecond
)

اختبر ما إذا كان عنوانا IPv6 متماثلين.

تفاصيل
المعلمات
[in] aFirst
مؤشر إلى عنوان IPv6 الأول للمقارنة.
[in] aSecond
مؤشر إلى عنوان IPv6 الثاني للمقارنة.
إرجاع القيم
TRUE
عنوانا IPv6 متماثلان.
FALSE
عنوانا IPv6 ليسا متماثلين.

otIp6IsAddressUnspecified

bool otIp6IsAddressUnspecified(
  const otIp6Address *aAddress
)

تشير هذه الوظيفة إلى ما إذا كان عنوان IPv6 المحدد هو العنوان غير المحدد أم لا.

تفاصيل
المعلمات
[in] aAddress
مؤشر إلى عنوان IPv6.
إرجاع القيم
TRUE
إذا كان عنوان IPv6 هو العنوان غير المحدد.
FALSE
إذا لم يكن عنوان IPv6 هو العنوان غير المحدد.

otIp6IsEnabled

bool otIp6IsEnabled(
  otInstance *aInstance
)

تشير هذه الوظيفة إلى ما إذا كانت واجهة IPv6 قيد التشغيل أم لا.

تفاصيل
المعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread.
إرجاع القيم
TRUE
تم تمكين واجهة IPv6.
FALSE
واجهة IPv6 معطلة.

otIp6IsMulticastPromiscuousEnabled

bool otIp6IsMulticastPromiscuousEnabled(
  otInstance *aInstance
)

تحقق مما إذا كان الوضع المختلط للبث المتعدد ممكّنًا على واجهة مؤشر الترابط.

تفاصيل
المعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread.
أنظر أيضا:
otIp6SetMulticastPromiscuousEnabled

otIp6IsReceiveFilterEnabled

bool otIp6IsReceiveFilterEnabled(
  otInstance *aInstance
)

تشير هذه الوظيفة إلى ما إذا كان يتم تصفية حركة مرور التحكم في مؤشر الترابط أم لا عند تسليم مخططات بيانات IPv6 عبر رد الاتصال المحدد في otIp6SetReceiveCallback () .

تفاصيل
المعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread.
عائدات
تكون القيمة TRUE في حالة تصفية حركة مرور التحكم في مؤشر الترابط ، وخطأ بخلاف ذلك.
أنظر أيضا:
otIp6SetReceiveCallback
otIp6SetReceiveFilterEnabled

otIp6IsSlaacEnabled

bool otIp6IsSlaacEnabled(
  otInstance *aInstance
)

تشير هذه الوظيفة إلى ما إذا كانت وحدة SLAAC ممكنة أم لا.

تتطلب هذه الوظيفة OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE ميزة وقت OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE .

تفاصيل
إرجاع القيم
TRUE
تم تمكين وحدة SLAAC.
FALSE
تم تعطيل وحدة SLAAC.

otIp6NewMessage

otMessage * otIp6NewMessage(
  otInstance *aInstance,
  const otMessageSettings *aSettings
)

تخصيص مخزن مؤقت للرسائل الجديدة لإرسال رسالة IPv6.

تفاصيل
المعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread.
[in] aSettings
مؤشر إلى إعدادات الرسالة أو NULL لضبط الإعدادات الافتراضية.
عائدات
مؤشر إلى المخزن المؤقت للرسالة أو NULL إذا لم تتوفر مخازن رسائل مؤقتة أو كانت المعلمات غير صالحة.
أنظر أيضا:
otMessageFree

otIp6NewMessageFromBuffer

otMessage * otIp6NewMessageFromBuffer(
  otInstance *aInstance,
  const uint8_t *aData,
  uint16_t aDataLength,
  const otMessageSettings *aSettings
)

قم بتخصيص مخزن مؤقت للرسائل الجديدة واكتب مخطط بيانات IPv6 إلى مخزن الرسائل المؤقت لإرسال رسالة IPv6.

تفاصيل
المعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread.
[in] aData
مؤشر إلى المخزن المؤقت لمخطط بيانات IPv6.
[in] aDataLength
حجم المخزن المؤقت aData بيانات IPv6 المشار إليه بواسطة aData .
[in] aSettings
مؤشر إلى إعدادات الرسالة أو NULL لضبط الإعدادات الافتراضية.
عائدات
مؤشر للرسالة أو NULL إذا كان رأس IPv6 مشوه أو مخازن رسالة غير كافية متوفرة.
أنظر أيضا:
otMessageFree

otIp6PrefixMatch

uint8_t otIp6PrefixMatch(
  const otIp6Address *aFirst,
  const otIp6Address *aSecond
)

تقوم هذه الوظيفة بإرجاع طول مطابقة البادئة (بت) لعناوين IPv6.

تفاصيل
المعلمات
[in] aFirst
مؤشر إلى عنوان IPv6 الأول.
[in] aSecond
مؤشر إلى عنوان IPv6 الثاني.
عائدات
طول مطابقة البادئة بالبتات.

otIp6 تسجيل المستمعين المتعدد

otError otIp6RegisterMulticastListeners(
  otInstance *aInstance,
  const otIp6Address *aAddresses,
  uint8_t aAddressNum,
  const uint32_t *aTimeout,
  otIp6RegisterMulticastListenersCallback aCallback,
  void *aContext
)

تسجل هذه الوظيفة مستمعي البث المتعدد في جهاز التوجيه الأساسي الأساسي.

ملاحظة: متاح فقط عند OPENTHREAD_CONFIG_TMF_PROXY_MLR_ENABLE كل من OPENTHREAD_CONFIG_TMF_PROXY_MLR_ENABLE و OPENTHREAD_CONFIG_COMMISSIONER_ENABLE )

تفاصيل
المعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread.
[in] aAddresses
صفيف عنوان الإرسال المتعدد للتسجيل.
[in] aAddressNum
عدد عنوان الإرسال المتعدد المطلوب تسجيله (0 إذا كانت aAddresses هي NULL).
[in] aTimeout
مؤشر لقيمة المهلة (بالثواني) ليتم تضمينها في MLR.req. تؤدي قيمة المهلة 0 إلى إزالة مستمع الإرسال المتعدد المقابل. إذا كانت NULL ، فلن يكون لدى MLR.req Timeout Tlv افتراضيًا.
[in] aCallback
مؤشر إلى وظيفة رد الاتصال.
[in] aContext
مؤشر لسياق المستخدم.
إرجاع القيم
OT_ERROR_NONE
تم إرسال MLR.req بنجاح. سيتم استدعاء aCallback إذا كان هذا الأسلوب يعيد OT_ERROR_NONE.
OT_ERROR_BUSY
إذا كان التسجيل السابق مستمرًا.
OT_ERROR_INVALID_ARGS
إذا كانت هناك وسيطة واحدة أو أكثر غير صالحة.
OT_ERROR_INVALID_STATE
إذا لم يكن الجهاز في حالة صالحة لإرسال MLR.req (على سبيل المثال ، لم يتم بدء تشغيل المفوض ، لم يتم العثور على جهاز التوجيه الأساسي الأساسي).
OT_ERROR_NO_BUFS
في حالة عدم كفاية المخازن المؤقتة للرسائل المتاحة.
أنظر أيضا:
otIp6 تسجيل متعددة رسائل الاستماع رد الاتصال

otIp6RemoveAllUnsecurePorts

void otIp6RemoveAllUnsecurePorts(
  otInstance *aInstance
)

تزيل هذه الوظيفة جميع المنافذ من قائمة المنافذ غير الآمنة المسموح بها.

تفاصيل
المعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread.

otIp6RemoveUnicastAddress

otError otIp6RemoveUnicastAddress(
  otInstance *aInstance,
  const otIp6Address *aAddress
)

قم بإزالة عنوان واجهة الشبكة من واجهة مؤشر الترابط.

تفاصيل
المعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread.
[in] aAddress
مؤشر إلى عنوان IP.
إرجاع القيم
OT_ERROR_NONE
تمت إزالة عنوان واجهة الشبكة بنجاح.
OT_ERROR_INVALID_ARGS
عنوان IP المشار إليه بواسطة aAddress هو عنوان داخلي.
OT_ERROR_NOT_FOUND
لم يتم العثور على عنوان IP المشار إليه بواسطة aAddress .

otIp6RemoveUnsecurePort

otError otIp6RemoveUnsecurePort(
  otInstance *aInstance,
  uint16_t aPort
)

تقوم هذه الوظيفة بإزالة منفذ من قائمة المنافذ غير الآمنة المسموح بها.

تفاصيل
المعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread.
[in] aPort
قيمة المنفذ.
إرجاع القيم
OT_ERROR_NONE
تمت إزالة المنفذ بنجاح من قائمة المنافذ غير الآمنة المسموح بها.
OT_ERROR_INVALID_ARGS
المنفذ غير صالح (القيمة 0 محجوزة للاستخدام الداخلي).
OT_ERROR_NOT_FOUND
لم يتم العثور على المنفذ في قائمة المنافذ غير الآمنة.

otIp6SelectSourceAddress

otError otIp6SelectSourceAddress(
  otInstance *aInstance,
  otMessageInfo *aMessageInfo
)

تقوم هذه الوظيفة بتحديد عنوان مصدر OpenThread.

تفاصيل
المعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread.
[in,out] aMessageInfo
مؤشر لمعلومات الرسالة.
إرجاع القيم
OT_ERROR_NONE
العثور على عنوان المصدر وتعبئته في mSockAddr من aMessageInfo .
OT_ERROR_NOT_FOUND
لم يتم العثور على عنوان المصدر ولم يتم تغيير aMessageInfo .

otIp6 إرسال

otError otIp6Send(
  otInstance *aInstance,
  otMessage *aMessage
)

ترسل هذه الوظيفة مخطط بيانات IPv6 عبر واجهة مؤشر الترابط.

يقوم المتصل بنقل ملكية aMessage عند إجراء هذه المكالمة. aMessage OpenThread aMessage عند اكتمال المعالجة ، بما في ذلك عند إرجاع قيمة أخرى غير OT_ERROR_NONE .

تفاصيل
المعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread.
[in] aMessage
مؤشر إلى مخزن الرسائل المؤقت الذي يحتوي على مخطط بيانات IPv6.
إرجاع القيم
OT_ERROR_NONE
تم بنجاح معالجة الرسالة.
OT_ERROR_DROP
تم تشكيل الرسالة بشكل جيد ولكن لم تتم معالجتها بشكل كامل بسبب قواعد معالجة الحزم.
OT_ERROR_NO_BUFS
تعذر تخصيص المخازن المؤقتة الضرورية للرسائل عند معالجة مخطط البيانات.
OT_ERROR_NO_ROUTE
أي توجيه لاستضافة.
OT_ERROR_INVALID_SOURCE_ADDRESS
عناوين المصدر غير صالحة ، على سبيل المثال عنوان anycast أو عنوان الإرسال المتعدد.
OT_ERROR_PARSE
تمت مصادفة رأس مشوه عند معالجة الرسالة.

otIp6SetAddressCallback

void otIp6SetAddressCallback(
  otInstance *aInstance,
  otIp6AddressCallback aCallback,
  void *aCallbackContext
)

تقوم هذه الوظيفة بتسجيل رد اتصال لإخطار تغييرات عنوان IPv6 الداخلية.

تفاصيل
المعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread.
[in] aCallback
مؤشر لوظيفة يتم استدعاؤها عند إضافة عنوان IPv6 داخلي أو إزالته. NULL لتعطيل رد الاتصال.
[in] aCallbackContext
مؤشر إلى سياق خاص بالتطبيق.

otIp6SetEnabled

otError otIp6SetEnabled(
  otInstance *aInstance,
  bool aEnabled
)

تقوم هذه الوظيفة بإحضار واجهة IPv6 لأعلى / لأسفل.

اتصل بهذه الوظيفة لتمكين / تعطيل اتصال IPv6.

تفاصيل
المعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread.
[in] aEnabled
TRUE لتمكين IPv6 ، وإلا فإن FALSE.
إرجاع القيم
OT_ERROR_NONE
نجح في رفع / إيقاف واجهة IPv6.
OT_ERROR_INVALID_STATE
واجهة IPv6 غير متاحة نظرًا لأن الجهاز يعمل في وضع الارتباط OPENTHREAD_CONFIG_LINK_RAW_ENABLE (قابل للتطبيق فقط عند تمكين ميزة OPENTHREAD_CONFIG_LINK_RAW_ENABLE ).

otIp6SetMulticastPromiscuousEnabled

void otIp6SetMulticastPromiscuousEnabled(
  otInstance *aInstance,
  bool aEnabled
)

تفعيل الوضع المختلط للبث المتعدد على واجهة مؤشر الترابط.

تفاصيل
المعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread.
[in] aEnabled
TRUE لتمكين وضع الإرسال المتعدد المشوش ، وإلا فالخطأ.
أنظر أيضا:
otIp6IsMulticastPromiscuousEnabled

otIp6SetReceiveCallback

void otIp6SetReceiveCallback(
  otInstance *aInstance,
  otIp6ReceiveCallback aCallback,
  void *aCallbackContext
)

تسجل هذه الوظيفة رد اتصال لتوفير مخططات بيانات IPv6 المستلمة.

بشكل افتراضي ، لا يمر رد الاتصال هذا حركة مرور التحكم في مؤشر الترابط. راجع otIp6SetReceiveFilterEnabled () لتغيير إعداد عامل تصفية حركة مرور مؤشر الترابط.

تفاصيل
المعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread.
[in] aCallback
مؤشر إلى وظيفة يتم استدعاؤها عند تلقي مخطط بيانات IPv6 أو NULL لتعطيل رد الاتصال.
[in] aCallbackContext
مؤشر إلى سياق خاص بالتطبيق.
أنظر أيضا:
otIp6IsReceiveFilterEnabled
otIp6SetReceiveFilterEnabled

otIp6SetReceiveFilterEnabled

void otIp6SetReceiveFilterEnabled(
  otInstance *aInstance,
  bool aEnabled
)

تحدد هذه الوظيفة ما إذا كان يتم تصفية حركة مرور التحكم في مؤشر الترابط أم لا عند تسليم مخططات بيانات IPv6 عبر رد الاتصال المحدد في otIp6SetReceiveCallback () .

تفاصيل
المعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread.
[in] aEnabled
تكون القيمة TRUE في حالة تصفية حركة مرور التحكم في مؤشر الترابط ، وخطأ بخلاف ذلك.
أنظر أيضا:
otIp6SetReceiveCallback
otIsReceiveIp6FilterEnabled

otIp6SetSlaacEnabled

void otIp6SetSlaacEnabled(
  otInstance *aInstance,
  bool aEnabled
)

تعمل هذه الوظيفة على تمكين / تعطيل وحدة SLAAC.

تتطلب هذه الوظيفة OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE ميزة وقت OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE .

عند تمكين وحدة SLAAC ، تتم إضافة عناوين SLAAC (بناءً على بادئات الشبكة في بيانات الشبكة) إلى الواجهة. عند تعطيل وحدة SLAAC ، تتم إزالة أي عنوان SLAAC مضاف مسبقًا.

تفاصيل
المعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread.
[in] aEnabled
صحيح للتمكين ، خطأ للتعطيل.

مرشح otIp6SetSlaacPrefix

void otIp6SetSlaacPrefixFilter(
  otInstance *aInstance,
  otIp6SlaacPrefixFilter aFilter
)

تحدد هذه الوظيفة معالج مرشح وحدة SLAAC.

تتطلب هذه الوظيفة OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE ميزة وقت OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE .

يتم استدعاء معالج المرشح بواسطة وحدة SLAAC عندما تكون على وشك إضافة عنوان SLAAC استنادًا إلى بادئة لتقرير ما إذا كان يجب إضافة العنوان أم لا.

يقوم معالج مرشح NULL بتعطيل التصفية ويسمح بإضافة كافة عناوين SLAAC.

إذا لم يتم استدعاء هذه الوظيفة ، فسيكون المرشح الافتراضي المستخدم بواسطة وحدة SLAAC فارغًا (يتم تعطيل التصفية).

تفاصيل
المعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread.
[in] aFilter
مؤشر لمعالج مرشح بادئة SLAAC أو NULL لتعطيل التصفية.

otIp6SubscribeMulticastAddress

otError otIp6SubscribeMulticastAddress(
  otInstance *aInstance,
  const otIp6Address *aAddress
)

اشترك في واجهة مؤشر الترابط في عنوان الإرسال المتعدد لواجهة الشبكة.

سيتم نسخ المثال الذي تم تمريره aAddress بواسطة واجهة مؤشر الترابط. تدعم واجهة مؤشر الترابط فقط عددًا ثابتًا من عناوين الإرسال المتعدد المضافة خارجيًا. انظر OPENTHREAD_CONFIG_IP6_MAX_EXT_MCAST_ADDRS.

تفاصيل
المعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread.
[in] aAddress
مؤشر إلى عنوان IP.
إرجاع القيم
OT_ERROR_NONE
تم الاشتراك بنجاح في عنوان الإرسال المتعدد لواجهة الشبكة.
OT_ERROR_ALREADY
عنوان الإرسال المتعدد مشترك بالفعل.
OT_ERROR_INVALID_ARGS
عنوان IP المشار إليه بواسطة aAddress هو عنوان غير صالح.
OT_ERROR_INVALID_STATE
واجهة الشبكة ليست لأعلى.
OT_ERROR_NO_BUFS
تقوم واجهة الشبكة بالفعل بتخزين الحد الأقصى المسموح به من عناوين البث المتعدد الخارجية.

otIp6 إلغاء الاشتراك

otError otIp6UnsubscribeMulticastAddress(
  otInstance *aInstance,
  const otIp6Address *aAddress
)

قم بإلغاء الاشتراك في واجهة مؤشر الترابط في عنوان الإرسال المتعدد لواجهة الشبكة.

تفاصيل
المعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread.
[in] aAddress
مؤشر إلى عنوان IP.
إرجاع القيم
OT_ERROR_NONE
تم إلغاء الاشتراك بنجاح في عنوان الإرسال المتعدد لواجهة الشبكة.
OT_ERROR_INVALID_ARGS
عنوان IP المشار إليه بواسطة aAddress هو عنوان داخلي.
OT_ERROR_NOT_FOUND
لم يتم العثور على عنوان IP المشار إليه بواسطة aAddress .

وحدات الماكرو

OT_IP6_ADDRESS_SIZE

 OT_IP6_ADDRESS_SIZE 16

حجم عنوان IPv6 (بايت)

OT_IP6_IID_SIZE

 OT_IP6_IID_SIZE 8

حجم معرّف واجهة IPv6 (بايت)

OT_IP6_PREFIX_BITSIZE

 OT_IP6_PREFIX_BITSIZE (OT_IP6_PREFIX_SIZE * 8)

حجم بادئة IPv6 (بت)

OT_IP6_PREFIX_SIZE

 OT_IP6_PREFIX_SIZE 8

حجم بادئة IPv6 (بايت)