IPv6

این ماژول شامل توابعی است که ارتباطات IPv6 را کنترل می کند.

خلاصه

شمارش ها

anonymous enum {
OT_IP6_PROTO_HOP_OPTS = 0,
OT_IP6_PROTO_TCP = 6,
OT_IP6_PROTO_UDP = 17,
OT_IP6_PROTO_IP6 = 41,
OT_IP6_PROTO_ROUTING = 43,
OT_IP6_PROTO_FRAGMENT = 44,
OT_IP6_PROTO_ICMP6 = 58,
OT_IP6_PROTO_NONE = 59,
OT_IP6_PROTO_DST_OPTS = 60
}
enum
شماره پروتکل اینترنت
anonymous enum {
OT_ADDRESS_ORIGIN_THREAD = 0,
OT_ADDRESS_ORIGIN_SLAAC = 1,
OT_ADDRESS_ORIGIN_DHCPV6 = 2,
OT_ADDRESS_ORIGIN_MANUAL = 3
}
enum
مبدا آدرس IPv6.
anonymous enum {
OT_ECN_NOT_CAPABLE = 0x0,
OT_ECN_CAPABLE_0 = 0x2,
OT_ECN_CAPABLE_1 = 0x1,
OT_ECN_MARKED = 0x3
}
enum
وضعیت های ECN، که در هدر IP نشان داده شده است.

Typedefs

otBorderRoutingCounters typedef
شمارنده بسته های ارسال شده از طریق Border Routing را نشان می دهد.
otIp6Address typedef
struct otIp6Address
نشان دهنده یک آدرس IPv6 است.
otIp6AddressCallback )(const otIp6AddressInfo *aAddressInfo, bool aIsAdded, void *aContext) typedef
void(*
هنگامی که یک آدرس IPv6 داخلی اضافه یا حذف شود، اشاره گر فراخوانی می شود.
otIp6AddressComponents typedef
اجزای یک آدرس IPv6 را نشان می دهد.
otIp6AddressInfo typedef
اطلاعات آدرس IPv6 را نشان می دهد.
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(*
Pointer به کاربر اجازه می دهد پیشوندها را فیلتر کند و اجازه اضافه کردن آدرس SLAAC بر اساس پیشوند را نمی دهد.
otMessageInfo typedef
نشان دهنده آدرس سوکت IPv6 محلی و مشابه است.
otNetifAddress typedef
نشان دهنده یک آدرس unicast رابط شبکه IPv6 است.
otNetifMulticastAddress typedef
نشان دهنده یک آدرس چندپخشی رابط شبکه IPv6 است.
otPacketsAndBytes typedef
شمارنده های بسته ها و بایت ها را نشان می دهد.
otSockAddr typedef
struct otSockAddr
نشان دهنده یک آدرس سوکت IPv6 است.

متغیرها

OT_TOOL_PACKED_END

کارکرد

otIp6AddUnicastAddress ( otInstance *aInstance, const otNetifAddress *aAddress)
یک آدرس رابط شبکه به رابط Thread اضافه می کند.
otIp6AddUnsecurePort ( otInstance *aInstance, uint16_t aPort)
یک پورت را به لیست پورت های ناامن مجاز اضافه می کند.
otIp6AddressFromString (const char *aString, otIp6Address *aAddress)
یک رشته آدرس IPv6 قابل خواندن توسط انسان را به یک نمایش باینری تبدیل می کند.
otIp6AddressToString (const otIp6Address *aAddress, char *aBuffer, uint16_t aSize)
void
یک آدرس IPv6 داده شده را به یک رشته قابل خواندن توسط انسان تبدیل می کند.
otIp6ArePrefixesEqual (const otIp6Prefix *aFirst, const otIp6Prefix *aSecond)
bool
تست کنید که آیا دو پیشوند IPv6 یکسان هستند یا خیر.
otIp6GetBorderRoutingCounters ( otInstance *aInstance)
شمارنده های مسیریابی مرزی را دریافت می کند.
otIp6GetMulticastAddresses ( otInstance *aInstance)
فهرستی از آدرس‌های چندپخشی IPv6 مشترک در رابط Thread را دریافت می‌کند.
otIp6GetPrefix (const otIp6Address *aAddress, uint8_t aLength, otIp6Prefix *aPrefix)
void
یک پیشوند با aLength از aAddress دریافت می کند.
otIp6GetUnicastAddresses ( otInstance *aInstance)
لیستی از آدرس های IPv6 اختصاص داده شده به رابط Thread را دریافت می کند.
otIp6GetUnsecurePorts ( otInstance *aInstance, uint8_t *aNumEntries)
const uint16_t *
اشاره گر را به لیست پورت ناامن برمی گرداند.
otIp6HasUnicastAddress ( otInstance *aInstance, const otIp6Address *aAddress)
bool
نشان می دهد که آیا یک آدرس IPv6 unicast به رابط Thread اختصاص داده شده است یا خیر.
otIp6IsAddressEqual (const otIp6Address *aFirst, const otIp6Address *aSecond)
bool
تست کنید که آیا دو آدرس IPv6 یکسان هستند یا خیر.
otIp6IsAddressUnspecified (const otIp6Address *aAddress)
bool
نشان می دهد که آیا آدرس IPv6 داده شده آدرس نامشخص است یا خیر.
otIp6IsEnabled ( otInstance *aInstance)
bool
نشان می دهد که آیا رابط IPv6 فعال است یا خیر.
otIp6IsMulticastPromiscuousEnabled ( otInstance *aInstance)
bool
بررسی می کند که آیا حالت چندپخشی در رابط Thread فعال است یا خیر.
otIp6IsReceiveFilterEnabled ( otInstance *aInstance)
bool
نشان می دهد که آیا ترافیک کنترل Thread هنگام ارائه دیتاگرام های IPv6 از طریق callback مشخص شده در 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 بنویسید.
otIp6PrefixFromString (const char *aString, otIp6Prefix *aPrefix)
یک رشته پیشوند IPv6 قابل خواندن توسط انسان را به یک نمایش باینری تبدیل می کند.
otIp6PrefixMatch (const otIp6Address *aFirst, const otIp6Address *aSecond)
uint8_t
طول تطابق پیشوند (بیت) را برای دو آدرس IPv6 برمی گرداند.
otIp6PrefixToString (const otIp6Prefix *aPrefix, char *aBuffer, uint16_t aSize)
void
یک پیشوند IPv6 داده شده را به یک رشته قابل خواندن توسط انسان تبدیل می کند.
otIp6ProtoToString (uint8_t aIpProto)
const char *
یک شماره پروتکل IP داده شده را به یک رشته قابل خواندن توسط انسان تبدیل می کند.
otIp6RegisterMulticastListeners ( otInstance *aInstance, const otIp6Address *aAddresses, uint8_t aAddressNum, const uint32_t *aTimeout, otIp6RegisterMulticastListenersCallback aCallback, void *aContext)
شنوندگان Multicast را در مسیریاب اصلی ستون فقرات ثبت می کند.
otIp6RemoveAllUnsecurePorts ( otInstance *aInstance)
void
تمام پورت ها را از لیست پورت های ناامن مجاز حذف می کند.
otIp6RemoveUnicastAddress ( otInstance *aInstance, const otIp6Address *aAddress)
یک آدرس رابط شبکه را از رابط Thread حذف می کند.
otIp6RemoveUnsecurePort ( otInstance *aInstance, uint16_t aPort)
یک پورت را از لیست پورت های ناامن مجاز حذف می کند.
otIp6ResetBorderRoutingCounters ( otInstance *aInstance)
void
شمارنده های Border Routing را بازنشانی می کند.
otIp6SelectSourceAddress ( otInstance *aInstance, otMessageInfo *aMessageInfo)
انتخاب آدرس منبع OpenThread را انجام دهید.
otIp6Send ( otInstance *aInstance, otMessage *aMessage)
دیتاگرام IPv6 را از طریق رابط Thread ارسال می کند.
otIp6SetAddressCallback ( otInstance *aInstance, otIp6AddressCallback aCallback, void *aCallbackContext)
void
برای اطلاع از تغییرات آدرس IPv6 داخلی، یک تماس برگشتی ثبت می کند.
otIp6SetEnabled ( otInstance *aInstance, bool aEnabled)
رابط IPv6 را بالا یا پایین می آورد.
otIp6SetMeshLocalIid ( otInstance *aInstance, const otIp6InterfaceIdentifier *aIid)
Mesh Local ID (برای هدف آزمایش) را تنظیم می کند.
otIp6SetMulticastPromiscuousEnabled ( otInstance *aInstance, bool aEnabled)
void
حالت چندپخشی را در رابط Thread فعال یا غیرفعال می کند.
otIp6SetReceiveCallback ( otInstance *aInstance, otIp6ReceiveCallback aCallback, void *aCallbackContext)
void
برای ارائه دیتاگرام های IPv6 دریافتی، یک تماس برگشتی ثبت می کند.
otIp6SetReceiveFilterEnabled ( otInstance *aInstance, bool aEnabled)
void
تنظیم می کند که آیا ترافیک کنترل Thread هنگام ارائه دیتاگرام های IPv6 از طریق تماس برگشتی مشخص شده در ()otIp6SetReceiveCallback فیلتر شود یا خیر.
otIp6SetSlaacEnabled ( otInstance *aInstance, bool aEnabled)
void
ماژول SLAAC را فعال/غیرفعال می کند.
otIp6SetSlaacPrefixFilter ( otInstance *aInstance, otIp6SlaacPrefixFilter aFilter)
void
کنترل کننده فیلتر ماژول SLAAC را تنظیم می کند.
otIp6SockAddrToString (const otSockAddr *aSockAddr, char *aBuffer, uint16_t aSize)
void
یک آدرس سوکت IPv6 داده شده را به یک رشته قابل خواندن توسط انسان تبدیل می کند.
otIp6SubscribeMulticastAddress ( otInstance *aInstance, const otIp6Address *aAddress)
رابط Thread را در یک آدرس چندپخشی رابط شبکه مشترک می کند.
otIp6UnsubscribeMulticastAddress ( otInstance *aInstance, const otIp6Address *aAddress)
رابط Thread را از یک آدرس چندپخشی رابط شبکه لغو می کند.

سازه ها

otBorderRoutingCounters

شمارنده بسته های ارسال شده از طریق Border Routing را نشان می دهد.

آدرس otIp6

نشان دهنده یک آدرس IPv6 است.

otIp6AddressComponents

اجزای یک آدرس IPv6 را نشان می دهد.

otIp6AddressInfo

اطلاعات آدرس IPv6 را نشان می دهد.

otIp6InterfaceIdentifier

نشان دهنده شناسه رابط یک آدرس IPv6 است.

otIp6NetworkPrefix

نشان دهنده پیشوند شبکه یک آدرس IPv6 (مهمترین 64 بیت آدرس) است.

پیشوند otIp6

یک پیشوند IPv6 را نشان می دهد.

otMessageInfo

نشان دهنده آدرس سوکت IPv6 محلی و مشابه است.

آدرس otNetif

نشان دهنده یک آدرس unicast رابط شبکه IPv6 است.

otNetifMulticastAddress

نشان دهنده یک آدرس چندپخشی رابط شبکه IPv6 است.

otPacketsAndBytes

شمارنده های بسته ها و بایت ها را نشان می دهد.

otSockAddr

نشان دهنده یک آدرس سوکت IPv6 است.

اتحادیه ها

otIp6InterfaceIdentifier:: OT_TOOL_PACKED_FIELD

شمارش ها

شماره ناشناس

 anonymous enum

شماره پروتکل اینترنت

خواص
OT_IP6_PROTO_DST_OPTS

گزینه های مقصد برای IPv6.

OT_IP6_PROTO_FRAGMENT

هدر قطعه برای IPv6.

OT_IP6_PROTO_HOP_OPTS

IPv6 گزینه Hop-by-Hop.

OT_IP6_PROTO_ICMP6

ICMP برای IPv6.

OT_IP6_PROTO_IP6

کپسوله سازی IPv6

OT_IP6_PROTO_NONE

بدون سربرگ بعدی برای IPv6.

OT_IP6_PROTO_ROUTING

سربرگ مسیریابی برای IPv6.

OT_IP6_PROTO_TCP

پروتکل کنترل انتقال

OT_IP6_PROTO_UDP

دیتاگرام کاربر.

شماره ناشناس

 anonymous enum

مبدا آدرس IPv6.

خواص
OT_ADDRESS_ORIGIN_DHCPV6

آدرس اختصاص داده شده به DHCPv6.

OT_ADDRESS_ORIGIN_MANUAL

آدرس اختصاص داده شده به صورت دستی

OT_ADDRESS_ORIGIN_SLAAC

آدرس اختصاص داده شده توسط SLAAC

OT_ADDRESS_ORIGIN_THREAD

آدرس اختصاص داده شده به رشته (ALOC، RLOC، MLEID، و غیره)

شماره ناشناس

 anonymous enum

وضعیت های ECN، که در هدر IP نشان داده شده است.

خواص
OT_ECN_CAPABLE_0

ECT(0)

OT_ECN_CAPABLE_1

ECT (1)

OT_ECN_MARKED

ازدحام رخ داده (CE)

OT_ECN_NOT_CAPABLE

غیر ECT.

Typedefs

otBorderRoutingCounters

struct otBorderRoutingCounters otBorderRoutingCounters

شمارنده بسته های ارسال شده از طریق Border Routing را نشان می دهد.

آدرس otIp6

struct otIp6Address otIp6Address

نشان دهنده یک آدرس IPv6 است.

otIp6Address Callback

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

هنگامی که یک آدرس IPv6 داخلی اضافه یا حذف شود، اشاره گر فراخوانی می شود.

جزئیات
مولفه های
[in] aAddressInfo
اشاره گر به اطلاعات آدرس IPv6.
[in] aIsAdded
اگر aAddress اضافه شده باشد، درست است، اگر aAddress حذف شده باشد، نادرست است.
[in] aContext
اشاره‌ای به زمینه خاص برنامه.

otIp6AddressComponents

struct otIp6AddressComponents otIp6AddressComponents

اجزای یک آدرس IPv6 را نشان می دهد.

otIp6AddressInfo

struct otIp6AddressInfo otIp6AddressInfo

اطلاعات آدرس IPv6 را نشان می دهد.

otIp6InterfaceIdentifier

struct otIp6InterfaceIdentifier otIp6InterfaceIdentifier

نشان دهنده شناسه رابط یک آدرس IPv6 است.

otIp6NetworkPrefix

struct otIp6NetworkPrefix otIp6NetworkPrefix

نشان دهنده پیشوند شبکه یک آدرس IPv6 (مهمترین 64 بیت آدرس) است.

پیشوند otIp6

struct otIp6Prefix otIp6Prefix

یک پیشوند IPv6 را نشان می دهد.

otIp6ReceiveCallback

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

هنگامی که دیتاگرام IPv6 دریافت می شود، اشاره گر فراخوانی می شود.

جزئیات
مولفه های
[in] aMessage
یک اشاره گر به بافر پیام حاوی دیتاگرام IPv6 دریافتی. این تابع مالکیت aMessage را به گیرنده تماس برگشتی منتقل می کند. پیام پس از پردازش باید توسط گیرنده پاسخ به تماس آزاد شود (به otMessageFree() مراجعه کنید.
[in] aContext
اشاره‌ای به زمینه خاص برنامه.

otIp6RegisterMulticastListenersCallback

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
زمانی که aError OT_ERROR_NONE باشد، نشانگر آدرس‌های IPv6 ناموفق.
[in] aFailedAddressNum
تعداد آدرس‌های IPv6 ناموفق وقتی aError OT_ERROR_NONE باشد.
همچنین ببینید:
otIp6RegisterMulticastListeners

otIp6SlaacPrefixFilter

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

Pointer به کاربر اجازه می دهد پیشوندها را فیلتر کند و اجازه اضافه کردن آدرس SLAAC بر اساس پیشوند را نمی دهد.

otIp6SetSlaacPrefixFilter() می توان برای تنظیم کنترل کننده فیلتر استفاده کرد. هنگامی که می خواهد یک آدرس SLAAC بر اساس یک پیشوند اضافه کند، کنترل کننده فیلتر توسط ماژول SLAAC فراخوانی می شود. مقدار بازگشتی بولی آن تعیین می کند که آیا آدرس فیلتر شده (افزوده نشده است) یا خیر.

جزئیات
مولفه های
[in] aInstance
اشاره گر به یک نمونه OpenThread.
[in] aPrefix
یک اشاره گر به پیشوندی که آدرس SLAAC قرار است برای آن اضافه شود.
ارزش های بازگشتی
TRUE
نشان می دهد که آدرس SLAAC بر اساس پیشوند باید فیلتر شود و اضافه نشود.
FALSE
نشان می دهد که آدرس SLAAC بر اساس پیشوند باید اضافه شود.

otMessageInfo

struct otMessageInfo otMessageInfo

نشان دهنده آدرس سوکت IPv6 محلی و مشابه است.

آدرس otNetif

struct otNetifAddress otNetifAddress

نشان دهنده یک آدرس unicast رابط شبکه IPv6 است.

otNetifMulticastAddress

struct otNetifMulticastAddress otNetifMulticastAddress

نشان دهنده یک آدرس چندپخشی رابط شبکه IPv6 است.

otPacketsAndBytes

struct otPacketsAndBytes otPacketsAndBytes

شمارنده های بسته ها و بایت ها را نشان می دهد.

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
)

یک آدرس رابط شبکه به رابط Thread اضافه می کند.

نمونه پاس شده aAddress توسط رابط Thread کپی می شود. رابط Thread فقط از تعداد ثابتی از آدرس های unicast اضافه شده خارجی پشتیبانی می کند. به 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
aString با موفقیت تجزیه شد و aAddress به روز شد.
OT_ERROR_PARSE
aString به عنوان آدرس IPv6 تجزیه نشد.

otIp6AddressToString

void otIp6AddressToString(
  const otIp6Address *aAddress,
  char *aBuffer,
  uint16_t aSize
)

یک آدرس IPv6 داده شده را به یک رشته قابل خواندن توسط انسان تبدیل می کند.

رشته آدرس IPv6 به صورت 16 مقدار هگزا فرمت شده است که با ":" از هم جدا شده اند (یعنی "%x:%x:%x:...:%x").

اگر رشته به دست آمده در aBuffer (در کاراکترهای aSize آن) قرار نگیرد، رشته کوتاه می‌شود اما رشته خروجی همیشه تهی است.

جزئیات
مولفه های
[in] aAddress
اشاره گر به آدرس IPv6 (نباید NULL باشد).
[out] aBuffer
یک اشاره گر به آرایه char برای خروجی رشته (نباید NULL باشد).
[in] aSize
اندازه aBuffer (بر حسب بایت). برای استفاده از OT_IP6_ADDRESS_STRING_SIZE توصیه می شود.

otIp6ArePrefixesEqual

bool otIp6ArePrefixesEqual(
  const otIp6Prefix *aFirst,
  const otIp6Prefix *aSecond
)

تست کنید که آیا دو پیشوند IPv6 یکسان هستند یا خیر.

جزئیات
مولفه های
[in] aFirst
اشاره گر به اولین پیشوند IPv6 برای مقایسه.
[in] aSecond
اشاره گر به پیشوند IPv6 دوم برای مقایسه.
ارزش های بازگشتی
TRUE
دو پیشوند IPv6 یکسان هستند.
FALSE
دو پیشوند IPv6 یکسان نیستند.

otIp6GetBorderRoutingCounters

const otBorderRoutingCounters * otIp6GetBorderRoutingCounters(
  otInstance *aInstance
)

شمارنده های مسیریابی مرزی را دریافت می کند.

ویژگی OPENTHREAD_CONFIG_IP6_BR_COUNTERS_ENABLE زمان ساخت باید فعال باشد.

جزئیات
مولفه های
[in] aInstance
اشاره گر به یک نمونه OpenThread.
برمی گرداند
اشاره گر به شمارنده های Border Routing.

otIp6GetMulticastAddresses

const otNetifMulticastAddress * otIp6GetMulticastAddresses(
  otInstance *aInstance
)

فهرستی از آدرس‌های چندپخشی IPv6 مشترک در رابط Thread را دریافت می‌کند.

جزئیات
مولفه های
[in] aInstance
اشاره گر به یک نمونه OpenThread.
برمی گرداند
اشاره‌ای به اولین آدرس چندپخشی رابط شبکه.

otIp6GetPrefix

void otIp6GetPrefix(
  const otIp6Address *aAddress,
  uint8_t aLength,
  otIp6Prefix *aPrefix
)

یک پیشوند با aLength از aAddress دریافت می کند.

جزئیات
مولفه های
[in] aAddress
اشاره گر به آدرس IPv6.
[in] aLength
طول پیشوند بر حسب بیت.
[out] aPrefix
یک اشاره گر برای خروجی پیشوند IPv6.

otIp6GetUnicastAddresses

const otNetifAddress * otIp6GetUnicastAddresses(
  otInstance *aInstance
)

لیستی از آدرس های IPv6 اختصاص داده شده به رابط Thread را دریافت می کند.

جزئیات
مولفه های
[in] aInstance
اشاره گر به یک نمونه OpenThread.
برمی گرداند
اشاره گر به اولین آدرس رابط شبکه.

otIp6GetUnsecurePorts

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

اشاره گر را به لیست پورت ناامن برمی گرداند.

جزئیات
مولفه های
[in] aInstance
اشاره گر به یک نمونه OpenThread.
[out] aNumEntries
تعداد ورودی های لیست
برمی گرداند
اشاره گر به لیست پورت ناامن.

otIp6HasUnicastAddress

bool otIp6HasUnicastAddress(
  otInstance *aInstance,
  const otIp6Address *aAddress
)

نشان می دهد که آیا یک آدرس IPv6 unicast به رابط Thread اختصاص داده شده است یا خیر.

جزئیات
مولفه های
[in] aInstance
اشاره گر به یک نمونه OpenThread.
[in] aAddress
اشاره گر به آدرس unicast.
ارزش های بازگشتی
TRUE
اگر aAddress به رابط Thread اختصاص داده شده باشد.
FALSE
اگر aAddress به رابط Thread اختصاص داده نشده باشد.

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
)

بررسی می کند که آیا حالت چندپخشی در رابط Thread فعال است یا خیر.

جزئیات
مولفه های
[in] aInstance
اشاره گر به یک نمونه OpenThread.
همچنین ببینید:
otIp6SetMulticastPromiscuousEnabled

otIp6IsReceiveFilterEnabled

bool otIp6IsReceiveFilterEnabled(
  otInstance *aInstance
)

نشان می دهد که آیا ترافیک کنترل Thread هنگام ارائه دیتاگرام های IPv6 از طریق callback مشخص شده در otIp6SetReceiveCallback () فیلتر شده است یا خیر.

جزئیات
مولفه های
[in] aInstance
اشاره گر به یک نمونه OpenThread.
برمی گرداند
اگر ترافیک کنترل رشته فیلتر شود درست است، در غیر این صورت نادرست است.
همچنین ببینید:
otIp6SetReceiveCallback
otIp6SetReceiveFilterEnabled

otIp6IsSlaacEnabled

bool otIp6IsSlaacEnabled(
  otInstance *aInstance
)

نشان می دهد که آیا ماژول SLAAC فعال است یا خیر.

ویژگی زمان ساخت 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
اندازه بافر دیتاگرام IPv6 که توسط aData مشخص شده است.
[in] aSettings
یک اشاره گر به تنظیمات پیام یا NULL برای تنظیم تنظیمات پیش فرض.
برمی گرداند
اگر سرصفحه IPv6 نادرست است یا بافرهای پیام کافی موجود نباشد، نشانگر پیام یا NULL.
همچنین ببینید:
otMessageFree

otIp6PrefixFromString

otError otIp6PrefixFromString(
  const char *aString,
  otIp6Prefix *aPrefix
)

یک رشته پیشوند IPv6 قابل خواندن توسط انسان را به یک نمایش باینری تبدیل می کند.

پارامتر aString باید یک رشته با فرمت باشد "

/ "، جایی که
یک آدرس IPv6 است و طول پیشوند است.

جزئیات
مولفه های
[in] aString
یک اشاره گر به یک رشته با پایان NULL.
[out] aPrefix
اشاره گر به پیشوند IPv6.
ارزش های بازگشتی
OT_ERROR_NONE
رشته به عنوان پیشوند IPv6 با موفقیت تجزیه شد و aPrefix به روز شد.
OT_ERROR_PARSE
aString به عنوان پیشوند IPv6 تجزیه نشد.

otIp6PrefixMatch

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

طول تطابق پیشوند (بیت) را برای دو آدرس IPv6 برمی گرداند.

جزئیات
مولفه های
[in] aFirst
اشاره گر به اولین آدرس IPv6.
[in] aSecond
اشاره گر به آدرس IPv6 دوم.
برمی گرداند
طول پیشوند مطابق با بیت است.

otIp6PrefixToString

void otIp6PrefixToString(
  const otIp6Prefix *aPrefix,
  char *aBuffer,
  uint16_t aSize
)

یک پیشوند IPv6 داده شده را به یک رشته قابل خواندن توسط انسان تبدیل می کند.

رشته آدرس IPv6 به صورت "%x:%x:%x:...[::]/plen" فرمت شده است.

اگر رشته به دست آمده در aBuffer (در کاراکترهای aSize آن) قرار نگیرد، رشته کوتاه می‌شود اما رشته خروجی همیشه تهی است.

جزئیات
مولفه های
[in] aPrefix
اشاره گر به پیشوند IPv6 (نباید NULL باشد).
[out] aBuffer
یک اشاره گر به آرایه char برای خروجی رشته (نباید NULL باشد).
[in] aSize
اندازه aBuffer (بر حسب بایت). برای استفاده از OT_IP6_PREFIX_STRING_SIZE توصیه می شود.

otIp6ProtoToString

const char * otIp6ProtoToString(
  uint8_t aIpProto
)

یک شماره پروتکل IP داده شده را به یک رشته قابل خواندن توسط انسان تبدیل می کند.

جزئیات
مولفه های
[in] aIpProto
یک شماره پروتکل IP (شماری OT_IP6_PROTO_* ).
برمی گرداند
رشته ای که aIpProto را نشان می دهد.

otIp6RegisterMulticastListeners

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

شنوندگان Multicast را در مسیریاب اصلی ستون فقرات ثبت می کند.

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 شنونده Multicast مربوطه را حذف می کند. اگر NULL باشد، MLR.req به طور پیش فرض فاقد Timeout Tlv خواهد بود.
[in] aCallback
اشاره گر به عملکرد برگشت به تماس.
[in] aContext
اشاره گر به زمینه کاربر.
ارزش های بازگشتی
OT_ERROR_NONE
MLR.req با موفقیت ارسال شد. اگر این روش OT_ERROR_NONE را برگرداند، aCallback فراخوانی می‌شود.
OT_ERROR_BUSY
اگر ثبت نام قبلی در حال انجام بود.
OT_ERROR_INVALID_ARGS
اگر یک یا چند آرگومان نامعتبر باشد.
OT_ERROR_INVALID_STATE
اگر دستگاه در وضعیت معتبری برای ارسال MLR.req نبود (مثلاً Commissioner شروع نشده است، روتر اصلی Backbone یافت نشد).
OT_ERROR_NO_BUFS
اگر بافرهای پیام کافی موجود نیست.
همچنین ببینید:
otIp6RegisterMulticastListenersCallback

otIp6RemoveAllUnsecurePorts

void otIp6RemoveAllUnsecurePorts(
  otInstance *aInstance
)

تمام پورت ها را از لیست پورت های ناامن مجاز حذف می کند.

جزئیات
مولفه های
[in] aInstance
اشاره گر به یک نمونه OpenThread.

otIp6RemoveUnicastAddress

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

یک آدرس رابط شبکه را از رابط Thread حذف می کند.

جزئیات
مولفه های
[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
پورت در لیست پورت ناامن یافت نشد.

otIp6ResetBorderRoutingCounters

void otIp6ResetBorderRoutingCounters(
  otInstance *aInstance
)

شمارنده های Border Routing را بازنشانی می کند.

جزئیات
مولفه های
[in] aInstance
اشاره گر به یک نمونه OpenThread.

otIp6SelectSourceAddress

otError otIp6SelectSourceAddress(
  otInstance *aInstance,
  otMessageInfo *aMessageInfo
)

انتخاب آدرس منبع OpenThread را انجام دهید.

جزئیات
مولفه های
[in] aInstance
اشاره گر به یک نمونه OpenThread.
[in,out] aMessageInfo
اشاره گر به اطلاعات پیام
ارزش های بازگشتی
OT_ERROR_NONE
یک آدرس منبع پیدا کرد و در mSockAddr aMessageInfo پر شد.
OT_ERROR_NOT_FOUND
هیچ آدرس منبعی پیدا نشد و aMessageInfo بدون تغییر است.

otIp6Send

otError otIp6Send(
  otInstance *aInstance,
  otMessage *aMessage
)

دیتاگرام IPv6 را از طریق رابط Thread ارسال می کند.

هنگام برقراری این تماس، تماس‌گیرنده مالکیت aMessage را منتقل می‌کند. OpenThread وقتی پردازش کامل شد، از جمله زمانی که مقداری غیر از OT_ERROR_NONE برگردانده شد، aMessage آزاد می کند.

جزئیات
مولفه های
[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
هنگام پردازش پیام با سرصفحه نادرست مواجه شدیم.
OT_ERROR_INVALID_ARGS
فراداده پیام نامعتبر است، به عنوان مثال پیام از OT_MESSAGE_ORIGIN_THREAD_NETIF به عنوان مبدا استفاده می کند.

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 فعال باشد قابل استفاده است).

otIp6SetMeshLocalIid

otError otIp6SetMeshLocalIid(
  otInstance *aInstance,
  const otIp6InterfaceIdentifier *aIid
)

Mesh Local ID (برای هدف آزمایش) را تنظیم می کند.

به OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE نیاز دارد.

جزئیات
مولفه های
[in] aInstance
اشاره گر به یک نمونه OpenThread.
[in] aIid
یک اشاره گر به Mesh Local ID برای تنظیم.
ارزش های بازگشتی
OT_ERROR_NONE
شناسه محلی Mesh با موفقیت تنظیم شد.
OT_ERROR_INVALID_STATE
پروتکل های رشته فعال هستند.

otIp6SetMulticastPromiscuousEnabled

void otIp6SetMulticastPromiscuousEnabled(
  otInstance *aInstance,
  bool aEnabled
)

حالت چندپخشی را در رابط Thread فعال یا غیرفعال می کند.

جزئیات
مولفه های
[in] aInstance
اشاره گر به یک نمونه OpenThread.
[in] aEnabled
TRUE برای فعال کردن حالت Multicast Promiscuous، در غیر این صورت FALSE.
همچنین ببینید:
otIp6IsMulticastPromiscuousEnabled

otIp6SetReceiveCallback

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

برای ارائه دیتاگرام های IPv6 دریافتی، یک تماس برگشتی ثبت می کند.

به طور پیش فرض، این تماس برگشتی ترافیک کنترل Thread را عبور نمی دهد. برای تغییر تنظیمات فیلتر ترافیک کنترل Thread، به otIp6SetReceiveFilterEnabled() مراجعه کنید.

جزئیات
مولفه های
[in] aInstance
اشاره گر به یک نمونه OpenThread.
[in] aCallback
یک اشاره گر به تابعی که هنگام دریافت دیتاگرام IPv6 یا NULL برای غیرفعال کردن پاسخ تماس فراخوانی می شود.
[in] aCallbackContext
اشاره‌ای به زمینه خاص برنامه.
همچنین ببینید:
otIp6IsReceiveFilterEnabled
otIp6SetReceiveFilterEnabled

otIp6SetReceiveFilterEnabled

void otIp6SetReceiveFilterEnabled(
  otInstance *aInstance,
  bool aEnabled
)

تنظیم می کند که آیا ترافیک کنترل Thread هنگام ارائه دیتاگرام های IPv6 از طریق تماس برگشتی مشخص شده در ()otIp6SetReceiveCallback فیلتر شود یا خیر.

جزئیات
مولفه های
[in] aInstance
اشاره گر به یک نمونه OpenThread.
[in] aEnabled
اگر ترافیک کنترل رشته فیلتر شود درست است، در غیر این صورت نادرست است.
همچنین ببینید:
otIp6SetReceiveCallback
otIsReceiveIp6FilterEnabled

otIp6SetSlaacEnabled

void otIp6SetSlaacEnabled(
  otInstance *aInstance,
  bool aEnabled
)

ماژول SLAAC را فعال/غیرفعال می کند.

ویژگی زمان ساخت OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE باید فعال باشد.

وقتی ماژول SLAAC فعال است، آدرس‌های SLAAC (بر اساس پیشوندهای روی مش در داده‌های شبکه) به رابط اضافه می‌شوند. وقتی ماژول SLAAC غیرفعال است، هر آدرس SLAAC قبلاً اضافه شده حذف می شود.

جزئیات
مولفه های
[in] aInstance
اشاره گر به یک نمونه OpenThread.
[in] aEnabled
TRUE برای فعال کردن، FALSE برای غیرفعال کردن.

otIp6SetSlaacPrefixFilter

void otIp6SetSlaacPrefixFilter(
  otInstance *aInstance,
  otIp6SlaacPrefixFilter aFilter
)

کنترل کننده فیلتر ماژول SLAAC را تنظیم می کند.

ویژگی زمان ساخت OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE باید فعال باشد.

کنترل کننده فیلتر توسط ماژول SLAAC زمانی فراخوانی می شود که می خواهد یک آدرس SLAAC را بر اساس یک پیشوند اضافه کند تا تصمیم بگیرد که آیا آدرس باید اضافه شود یا خیر.

یک کنترل کننده فیلتر NULL فیلتر کردن را غیرفعال می کند و اجازه می دهد تا تمام آدرس های SLAAC اضافه شوند.

اگر این تابع فراخوانی نشود، فیلتر پیش فرض استفاده شده توسط ماژول SLAAC NULL خواهد بود (فیلتر کردن غیرفعال است).

جزئیات
مولفه های
[in] aInstance
اشاره گر به یک نمونه OpenThread.
[in] aFilter
یک اشاره گر به کنترل کننده فیلتر پیشوند SLAAC یا NULL برای غیرفعال کردن فیلتر کردن.

otIp6SockAddrToString

void otIp6SockAddrToString(
  const otSockAddr *aSockAddr,
  char *aBuffer,
  uint16_t aSize
)

یک آدرس سوکت IPv6 داده شده را به یک رشته قابل خواندن توسط انسان تبدیل می کند.

رشته آدرس سوکت IPv6 به صورت [ address ] فرمت می شود: port که address به صورت ۱۶ مقدار هگزا جدا شده با : نشان داده می شود و port شماره پورت در قالب اعشاری است، برای مثال «[%x:%x:...:%x ]:%u".

اگر رشته به دست آمده در aBuffer (در کاراکترهای aSize آن) قرار نگیرد، رشته کوتاه می‌شود اما رشته خروجی همیشه تهی است.

جزئیات
مولفه های
[in] aSockAddr
اشاره گر به آدرس سوکت IPv6 (نباید NULL باشد).
[out] aBuffer
یک اشاره گر به آرایه char برای خروجی رشته (نباید NULL باشد).
[in] aSize
اندازه aBuffer (بر حسب بایت). توصیه می شود از OT_IP6_SOCK_ADDR_STRING_SIZE استفاده کنید.

otIp6SubscribeMulticastAddress

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

رابط Thread را در یک آدرس چندپخشی رابط شبکه مشترک می کند.

به عنوان مثال aAddress ارسال شده توسط رابط Thread کپی می شود. رابط Thread فقط از تعداد ثابتی از آدرس های چندپخشی اضافه شده خارجی پشتیبانی می کند. به 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_REJECTED
آدرس IP نشان داده شده توسط aAddress یک آدرس چندپخشی داخلی است.
OT_ERROR_NO_BUFS
رابط شبکه در حال حاضر حداکثر آدرس های چندپخشی خارجی مجاز را ذخیره می کند.

otIp6UnsubscribeMulticastAddress

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

رابط Thread را از یک آدرس چندپخشی رابط شبکه لغو می کند.

جزئیات
مولفه های
[in] aInstance
اشاره گر به یک نمونه OpenThread.
[in] aAddress
اشاره گر به آدرس IP
ارزش های بازگشتی
OT_ERROR_NONE
اشتراک آدرس چندپخشی رابط شبکه با موفقیت لغو شد.
OT_ERROR_REJECTED
آدرس IP نشان داده شده توسط aAddress یک آدرس داخلی است.
OT_ERROR_NOT_FOUND
آدرس IP نشان داده شده توسط aAddress پیدا نشد.

ماکروها

OT_IP6_ADDRESS_SIZE

 OT_IP6_ADDRESS_SIZE 16

اندازه آدرس IPv6 (بایت)

OT_IP6_ADDRESS_STRING_SIZE

 OT_IP6_ADDRESS_STRING_SIZE 40

اندازه توصیه شده برای نمایش رشته ای آدرس IPv6.

OT_IP6_HEADER_PROTO_OFFSET

 OT_IP6_HEADER_PROTO_OFFSET 6

افست فیلد پروتو در هدر IPv6 (بایت)

OT_IP6_HEADER_SIZE

 OT_IP6_HEADER_SIZE 40

اندازه هدر IPv6 (بایت)

OT_IP6_IID_SIZE

 OT_IP6_IID_SIZE 8

اندازه شناسه رابط IPv6 (بایت)

OT_IP6_MAX_MLR_ADDRESSES

 OT_IP6_MAX_MLR_ADDRESSES 15

حداکثر تعداد آدرس های IPv6 پشتیبانی شده توسط Multicast Listener Registration.

OT_IP6_PREFIX_BITSIZE

 OT_IP6_PREFIX_BITSIZE (OT_IP6_PREFIX_SIZE * 8)

اندازه پیشوند IPv6 (بیت)

OT_IP6_PREFIX_SIZE

 OT_IP6_PREFIX_SIZE 8

اندازه پیشوند IPv6 (بایت)

OT_IP6_PREFIX_STRING_SIZE

 OT_IP6_PREFIX_STRING_SIZE 45

اندازه توصیه شده برای نمایش رشته پیشوند IPv6.

OT_IP6_SOCK_ADDR_STRING_SIZE

 OT_IP6_SOCK_ADDR_STRING_SIZE 48

اندازه توصیه شده برای نمایش رشته آدرس سوکت IPv6.

منابع

موضوعات مرجع OpenThread API از کد منبع موجود در GitHub سرچشمه می گیرند. برای اطلاعات بیشتر، یا مشارکت در اسناد ما، به منابع مراجعه کنید.