Google berkomitmen untuk mendorong terwujudnya keadilan ras bagi komunitas Kulit Hitam. Lihat caranya.

IPv6

Modul ini mencakup fungsi yang mengontrol komunikasi IPv6.

Ringkasan

Enumerasi

anonymous enum {
OT_ADDRESS_ORIGIN_THREAD = 0,
OT_ADDRESS_ORIGIN_SLAAC = 1,
OT_ADDRESS_ORIGIN_DHCPV6 = 2,
OT_ADDRESS_ORIGIN_MANUAL = 3
}
enum
Alamat IPv6 asal.
anonymous enum {
OT_ECN_NOT_CAPABLE = 0x0,
OT_ECN_CAPABLE_0 = 0x2,
OT_ECN_CAPABLE_1 = 0x1,
OT_ECN_MARKED = 0x3
}
enum
Status ECN, direpresentasikan seperti pada header IP.
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
Nomor Protokol Internet.

Typedef

otIp6Address typedef
struct otIp6Address
Struktur ini mewakili alamat IPv6.
otIp6AddressCallback )(const otIp6AddressInfo *aAddressInfo, bool aIsAdded, void *aContext) typedef
void(*
Penunjuk fungsi ini dipanggil ketika alamat IPv6 internal ditambahkan atau dihapus.
otIp6AddressComponents typedef
Struktur ini mewakili komponen dari alamat IPv6.
otIp6AddressInfo typedef
otIp6InterfaceIdentifier typedef
Struktur ini mewakili Pengidentifikasi Antarmuka dari alamat IPv6.
otIp6NetworkPrefix typedef
Struktur ini mewakili Network Prefix dari alamat IPv6 (64 bit paling signifikan dari alamat).
otIp6Prefix typedef
struct otIp6Prefix
Struktur ini mewakili awalan IPv6.
otIp6ReceiveCallback )(otMessage *aMessage, void *aContext) typedef
void(*
Penunjuk fungsi ini dipanggil ketika datagram IPv6 diterima.
otIp6RegisterMulticastListenersCallback )(void *aContext, otError aError, uint8_t aMlrStatus, const otIp6Address *aFailedAddresses, uint8_t aFailedAddressNum) typedef
void(*
Fungsi pointer ini disebut dengan hasil otIp6RegisterMulticastListeners .
otIp6SlaacPrefixFilter )(otInstance *aInstance, const otIp6Prefix *aPrefix) typedef
bool(*
Penunjuk fungsi ini memungkinkan pengguna untuk memfilter awalan dan tidak mengizinkan alamat SLAAC berdasarkan awalan untuk ditambahkan.
otMessageInfo typedef
Struktur ini mewakili alamat soket IPv6 lokal dan peer.
otNetifAddress typedef
Struktur ini mewakili alamat unicast antarmuka jaringan IPv6.
otNetifMulticastAddress typedef
Struktur ini mewakili alamat multicast antarmuka jaringan IPv6.
otSockAddr typedef
struct otSockAddr
Struktur ini mewakili alamat soket IPv6.

Variabel

OT_TOOL_PACKED_END

Fungsi

otIp6AddUnicastAddress ( otInstance *aInstance, const otNetifAddress *aAddress)
Tambahkan Alamat Antarmuka Jaringan ke antarmuka Utas.
otIp6AddUnsecurePort ( otInstance *aInstance, uint16_t aPort)
Fungsi ini menambahkan port ke daftar port tidak aman yang diizinkan.
otIp6AddressFromString (const char *aString, otIp6Address *aAddress)
Fungsi ini mengubah string alamat IPv6 yang dapat dibaca manusia menjadi representasi biner.
otIp6AddressToString (const otIp6Address *aAddress, char *aBuffer, uint16_t aSize)
void
Fungsi ini mengubah alamat IPv6 yang diberikan menjadi string yang dapat dibaca manusia.
otIp6ArePrefixesEqual (const otIp6Prefix *aFirst, const otIp6Prefix *aSecond)
bool
Uji apakah dua prefiks IPv6 sama.
otIp6GetMulticastAddresses ( otInstance *aInstance)
Dapatkan daftar alamat multicast IPv6 yang berlangganan antarmuka Thread.
otIp6GetUnicastAddresses ( otInstance *aInstance)
Dapatkan daftar alamat IPv6 yang ditetapkan ke antarmuka Thread.
otIp6GetUnsecurePorts ( otInstance *aInstance, uint8_t *aNumEntries)
const uint16_t *
Fungsi ini mengembalikan pointer ke daftar port tidak aman.
otIp6IsAddressEqual (const otIp6Address *aFirst, const otIp6Address *aSecond)
bool
Uji apakah dua alamat IPv6 sama.
otIp6IsAddressUnspecified (const otIp6Address *aAddress)
bool
Fungsi ini menunjukkan apakah alamat IPv6 yang diberikan adalah Alamat Tidak Ditentukan atau tidak.
otIp6IsEnabled ( otInstance *aInstance)
bool
Fungsi ini menunjukkan apakah antarmuka IPv6 aktif atau tidak.
otIp6IsMulticastPromiscuousEnabled ( otInstance *aInstance)
bool
Periksa apakah mode promiscuous multicast diaktifkan pada antarmuka Thread.
otIp6IsReceiveFilterEnabled ( otInstance *aInstance)
bool
Fungsi ini menunjukkan apakah atau tidak Thread kontrol lalu lintas disaring saat menyampaikan datagram IPv6 melalui callback ditentukan dalam otIp6SetReceiveCallback () .
otIp6IsSlaacEnabled ( otInstance *aInstance)
bool
Fungsi ini menunjukkan apakah modul SLAAC diaktifkan atau tidak.
otIp6NewMessage ( otInstance *aInstance, const otMessageSettings *aSettings)
Alokasikan buffer pesan baru untuk mengirim pesan IPv6.
otIp6NewMessageFromBuffer ( otInstance *aInstance, const uint8_t *aData, uint16_t aDataLength, const otMessageSettings *aSettings)
Alokasikan buffer pesan baru dan tulis datagram IPv6 ke buffer pesan untuk mengirim pesan IPv6.
otIp6PrefixMatch (const otIp6Address *aFirst, const otIp6Address *aSecond)
uint8_t
Fungsi ini mengembalikan panjang kecocokan awalan (bit) untuk dua alamat IPv6.
otIp6PrefixToString (const otIp6Prefix *aPrefix, char *aBuffer, uint16_t aSize)
void
Fungsi ini mengonversi awalan IPv6 yang diberikan menjadi string yang dapat dibaca manusia.
otIp6ProtoToString (uint8_t aIpProto)
const char *
Fungsi ini mengubah nomor protokol IP yang diberikan menjadi string yang dapat dibaca manusia.
otIp6RegisterMulticastListeners ( otInstance *aInstance, const otIp6Address *aAddresses, uint8_t aAddressNum, const uint32_t *aTimeout, otIp6RegisterMulticastListenersCallback aCallback, void *aContext)
Fungsi ini mendaftarkan Pendengar Multicast ke Router Tulang Belakang Utama.
otIp6RemoveAllUnsecurePorts ( otInstance *aInstance)
void
Fungsi ini menghapus semua port dari daftar port tidak aman yang diizinkan.
otIp6RemoveUnicastAddress ( otInstance *aInstance, const otIp6Address *aAddress)
Hapus Alamat Antarmuka Jaringan dari antarmuka Thread.
otIp6RemoveUnsecurePort ( otInstance *aInstance, uint16_t aPort)
Fungsi ini menghapus port dari daftar port tidak aman yang diizinkan.
otIp6SelectSourceAddress ( otInstance *aInstance, otMessageInfo *aMessageInfo)
Fungsi ini melakukan pemilihan alamat sumber OpenThread.
otIp6Send ( otInstance *aInstance, otMessage *aMessage)
Fungsi ini mengirimkan datagram IPv6 melalui antarmuka Thread.
otIp6SetAddressCallback ( otInstance *aInstance, otIp6AddressCallback aCallback, void *aCallbackContext)
void
Fungsi ini mendaftarkan panggilan balik untuk memberi tahu perubahan alamat IPv6 internal.
otIp6SetEnabled ( otInstance *aInstance, bool aEnabled)
Fungsi ini membawa naik/turun antarmuka IPv6.
otIp6SetMeshLocalIid ( otInstance *aInstance, const otIp6InterfaceIdentifier *aIid)
Fungsi ini menetapkan IID Lokal Mesh (untuk tujuan pengujian).
otIp6SetMulticastPromiscuousEnabled ( otInstance *aInstance, bool aEnabled)
void
Aktifkan mode promiscuous multicast pada antarmuka Thread.
otIp6SetReceiveCallback ( otInstance *aInstance, otIp6ReceiveCallback aCallback, void *aCallbackContext)
void
Fungsi ini mendaftarkan panggilan balik untuk menyediakan datagram IPv6 yang diterima.
otIp6SetReceiveFilterEnabled ( otInstance *aInstance, bool aEnabled)
void
Fungsi ini set apakah atau tidak Thread kontrol lalu lintas disaring saat menyampaikan datagram IPv6 melalui callback ditentukan dalam otIp6SetReceiveCallback () .
otIp6SetSlaacEnabled ( otInstance *aInstance, bool aEnabled)
void
Fungsi ini mengaktifkan/menonaktifkan modul SLAAC.
otIp6SetSlaacPrefixFilter ( otInstance *aInstance, otIp6SlaacPrefixFilter aFilter)
void
Fungsi ini mengatur pengendali filter modul SLAAC.
otIp6SockAddrToString (const otSockAddr *aSockAddr, char *aBuffer, uint16_t aSize)
void
Fungsi ini mengubah alamat soket IPv6 yang diberikan menjadi string yang dapat dibaca manusia.
otIp6SubscribeMulticastAddress ( otInstance *aInstance, const otIp6Address *aAddress)
Berlangganan antarmuka Thread ke Alamat Multicast Antarmuka Jaringan.
otIp6UnsubscribeMulticastAddress ( otInstance *aInstance, const otIp6Address *aAddress)
Berhenti berlangganan antarmuka Thread ke Alamat Multicast Antarmuka Jaringan.

Struktur

otIp6Address

Struktur ini mewakili alamat IPv6.

otIp6AddressComponents

Struktur ini mewakili komponen dari alamat IPv6.

otIp6AddressInfo

Struktur ini mewakili informasi alamat IPv6.

otIp6InterfaceIdentifier

Struktur ini mewakili Pengidentifikasi Antarmuka dari alamat IPv6.

otIp6NetworkPrefix

Struktur ini mewakili Network Prefix dari alamat IPv6 (64 bit paling signifikan dari alamat).

otIp6Awalan

Struktur ini mewakili awalan IPv6.

otMessageInfo

Struktur ini mewakili alamat soket IPv6 lokal dan peer.

otNetifAddress

Struktur ini mewakili alamat unicast antarmuka jaringan IPv6.

otNetifMulticastAddress

Struktur ini mewakili alamat multicast antarmuka jaringan IPv6.

otSockAddr

Struktur ini mewakili alamat soket IPv6.

serikat pekerja

otIp6InterfaceIdentifier :: OT_TOOL_PACKED_FIELD

Enumerasi

enum anonim

 anonymous enum

Alamat IPv6 asal.

Properti
OT_ADDRESS_ORIGIN_DHCPV6

alamat yang ditetapkan DHCPv6.

OT_ADDRESS_ORIGIN_MANUAL

Alamat yang ditetapkan secara manual.

OT_ADDRESS_ORIGIN_SLAAC

alamat yang ditetapkan SLAAC.

OT_ADDRESS_ORIGIN_THREAD

Alamat yang ditetapkan utas (ALOC, RLOC, MLEID, dll)

enum anonim

 anonymous enum

Status ECN, direpresentasikan seperti pada header IP.

Properti
OT_ECN_CAPABLE_0

dll(0)

OT_ECN_CAPABLE_1

ECT(1)

OT_ECN_MARKED

Terjadi kemacetan (CE)

OT_ECN_NOT_CAPABLE

Non-ECT.

enum anonim

 anonymous enum

Nomor Protokol Internet.

Properti
OT_IP6_PROTO_DST_OPTS

Opsi Tujuan untuk IPv6.

OT_IP6_PROTO_FRAGMENT

Header Fragmen untuk IPv6.

OT_IP6_PROTO_HOP_OPTS

Opsi Hop-by-Hop IPv6.

OT_IP6_PROTO_ICMP6

ICMP untuk IPv6.

OT_IP6_PROTO_IP6

enkapsulasi IPv6.

OT_IP6_PROTO_NONE

Tidak Ada Header Berikutnya untuk IPv6.

OT_IP6_PROTO_ROUTING

Header Perutean untuk IPv6.

OT_IP6_PROTO_TCP

Protokol Kontrol Transmisi.

OT_IP6_PROTO_UDP

Datagram pengguna.

Typedefs

otIp6Address

struct otIp6Address otIp6Address

Struktur ini mewakili alamat IPv6.

otIp6AddressCallback

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

Penunjuk fungsi ini dipanggil ketika alamat IPv6 internal ditambahkan atau dihapus.

rincian
Parameter
[in] aAddressInfo
Sebuah pointer ke informasi alamat IPv6.
[in] aIsAdded
TRUE jika aAddress ditambahkan, FALSE jika aAddress telah dihapus.
[in] aContext
Pointer ke konteks khusus aplikasi.

otIp6AddressComponents

struct otIp6AddressComponents otIp6AddressComponents

Struktur ini mewakili komponen dari alamat IPv6.

otIp6AddressInfo

struct otIp6AddressInfo otIp6AddressInfo

otIp6InterfaceIdentifier

struct otIp6InterfaceIdentifier otIp6InterfaceIdentifier

Struktur ini mewakili Pengidentifikasi Antarmuka dari alamat IPv6.

otIp6NetworkPrefix

struct otIp6NetworkPrefix otIp6NetworkPrefix

Struktur ini mewakili Network Prefix dari alamat IPv6 (64 bit paling signifikan dari alamat).

otIp6Awalan

struct otIp6Prefix otIp6Prefix

Struktur ini mewakili awalan IPv6.

otIp6ReceiveCallback

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

Penunjuk fungsi ini dipanggil ketika datagram IPv6 diterima.

rincian
Parameter
[in] aMessage
Pointer ke buffer pesan yang berisi datagram IPv6 yang diterima. Fungsi ini mentransfer kepemilikan aMessage ke penerima callback. Pesan harus dibebaskan oleh penerima callback setelah diproses (lihat otMessageFree () ).
[in] aContext
Pointer ke konteks khusus aplikasi.

otIp6RegisterMulticastListenersCallback

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

Fungsi pointer ini disebut dengan hasil otIp6RegisterMulticastListeners .

rincian
Parameter
[in] aContext
Sebuah pointer ke konteks pengguna.
[in] aError
OT_ERROR_NONE ketika berhasil mengirim MLR.req dan menerima MLR.rsp, OT_ERROR_RESPONSE_TIMEOUT ketika gagal menerima MLR.rsp, OT_ERROR_PARSE ketika gagal mengurai MLR.rsp.
[in] aMlrStatus
Status Pendaftaran Multicast Listener ketika aError adalah OT_ERROR_NONE.
[in] aFailedAddresses
Sebuah pointer ke alamat IPv6 gagal ketika aError adalah OT_ERROR_NONE.
[in] aFailedAddressNum
Jumlah alamat IPv6 gagal ketika aError adalah OT_ERROR_NONE.
Lihat juga:
otIp6RegisterMulticastListeners

otIp6SlaacPrefixFilter

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

Penunjuk fungsi ini memungkinkan pengguna untuk memfilter awalan dan tidak mengizinkan alamat SLAAC berdasarkan awalan untuk ditambahkan.

otIp6SetSlaacPrefixFilter() dapat digunakan untuk mengatur handler filter. Handler filter dipanggil oleh modul SLAAC ketika akan menambahkan alamat SLAAC berdasarkan awalan. Nilai kembalian booleannya menentukan apakah alamat tersebut difilter (tidak ditambahkan) atau tidak.

rincian
Parameter
[in] aInstacne
Pointer ke instance OpenThread.
[in] aPrefix
Sebuah pointer ke awalan yang alamat SLAAC akan ditambahkan.
Mengembalikan Nilai
TRUE
Menunjukkan bahwa alamat SLAAC berdasarkan awalan harus difilter dan TIDAK ditambahkan.
FALSE
Menunjukkan bahwa alamat SLAAC berdasarkan awalan harus ditambahkan.

otMessageInfo

struct otMessageInfo otMessageInfo

Struktur ini mewakili alamat soket IPv6 lokal dan peer.

otNetifAddress

struct otNetifAddress otNetifAddress

Struktur ini mewakili alamat unicast antarmuka jaringan IPv6.

otNetifMulticastAddress

struct otNetifMulticastAddress otNetifMulticastAddress

Struktur ini mewakili alamat multicast antarmuka jaringan IPv6.

otSockAddr

struct otSockAddr otSockAddr

Struktur ini mewakili alamat soket IPv6.

Variabel

OT_TOOL_PACKED_END

OT_TOOL_PACKED_BEGIN struct otIp6InterfaceIdentifier OT_TOOL_PACKED_END

Fungsi

otIp6AddUnicastAddress

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

Tambahkan Alamat Antarmuka Jaringan ke antarmuka Utas.

The lulus-dalam hal aAddress disalin oleh antarmuka Thread. Antarmuka Thread hanya mendukung sejumlah alamat unicast yang ditambahkan secara eksternal. Lihat OPENTHREAD_CONFIG_IP6_MAX_EXT_UCAST_ADDRS.

rincian
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aAddress
Sebuah pointer ke Alamat Antarmuka Jaringan.
Mengembalikan Nilai
OT_ERROR_NONE
Berhasil menambahkan (atau memperbarui) Alamat Antarmuka Jaringan.
OT_ERROR_INVALID_ARGS
Alamat IP yang ditunjukkan oleh aAddress adalah alamat internal.
OT_ERROR_NO_BUFS
Antarmuka Jaringan sudah menyimpan alamat eksternal maksimum yang diizinkan.

otIp6AddUnsecurePort

otError otIp6AddUnsecurePort(
  otInstance *aInstance,
  uint16_t aPort
)

Fungsi ini menambahkan port ke daftar port tidak aman yang diizinkan.

rincian
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aPort
Nilai pelabuhan.
Mengembalikan Nilai
OT_ERROR_NONE
Port berhasil ditambahkan ke daftar port tidak aman yang diizinkan.
OT_ERROR_INVALID_ARGS
Port tidak valid (nilai 0 dicadangkan untuk penggunaan internal).
OT_ERROR_NO_BUFS
Daftar port tidak aman sudah penuh.

otIp6AddressFromString

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

Fungsi ini mengubah string alamat IPv6 yang dapat dibaca manusia menjadi representasi biner.

rincian
Parameter
[in] aString
Pointer ke string yang diakhiri NULL.
[out] aAddress
Sebuah pointer ke alamat IPv6.
Mengembalikan Nilai
OT_ERROR_NONE
Berhasil menguraikan string.
OT_ERROR_INVALID_ARGS
Gagal mengurai string.

otIp6AddressToString

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

Fungsi ini mengubah alamat IPv6 yang diberikan menjadi string yang dapat dibaca manusia.

String alamat IPv6 diformat sebagai 16 nilai hex yang dipisahkan oleh ':' (yaitu, "%x:%x:%x:...:%x").

Jika string yang dihasilkan tidak cocok di aBuffer (dalam nya aSize karakter), string akan dipotong tapi string dikeluarkan selalu null-dihentikan.

rincian
Parameter
[in] aAddress
Pointer ke alamat IPv6 (HARUS TIDAK NULL).
[out] aBuffer
Pointer ke array char untuk menampilkan string (HARUS TIDAK NULL).
[in] aSize
Ukuran aBuffer (dalam byte). Dianjurkan untuk menggunakan OT_IP6_ADDRESS_STRING_SIZE .

otIp6ArePrefixesEqual

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

Uji apakah dua prefiks IPv6 sama.

rincian
Parameter
[in] aFirst
Pointer ke awalan IPv6 pertama yang akan dibandingkan.
[in] aSecond
Pointer ke awalan IPv6 kedua untuk dibandingkan.
Mengembalikan Nilai
TRUE
Kedua prefiks IPv6 adalah sama.
FALSE
Kedua prefiks IPv6 tidak sama.

otIp6GetMulticastAddresses

const otNetifMulticastAddress * otIp6GetMulticastAddresses(
  otInstance *aInstance
)

Dapatkan daftar alamat multicast IPv6 yang berlangganan antarmuka Thread.

rincian
Parameter
[in] aInstance
Pointer ke instance OpenThread.
Kembali
Pointer ke Alamat Multicast Antarmuka Jaringan pertama.

otIp6GetUnicastAddresses

const otNetifAddress * otIp6GetUnicastAddresses(
  otInstance *aInstance
)

Dapatkan daftar alamat IPv6 yang ditetapkan ke antarmuka Thread.

rincian
Parameter
[in] aInstance
Pointer ke instance OpenThread.
Kembali
Sebuah pointer ke Alamat Antarmuka Jaringan pertama.

otIp6GetUnsecurePorts

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

Fungsi ini mengembalikan pointer ke daftar port tidak aman.

rincian
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[out] aNumEntries
Jumlah entri dalam daftar.
Kembali
Pointer ke daftar port tidak aman.

otIp6IsAddressEqual

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

Uji apakah dua alamat IPv6 sama.

rincian
Parameter
[in] aFirst
Pointer ke alamat IPv6 pertama yang akan dibandingkan.
[in] aSecond
Sebuah pointer ke alamat IPv6 kedua untuk membandingkan.
Mengembalikan Nilai
TRUE
Kedua alamat IPv6 adalah sama.
FALSE
Kedua alamat IPv6 tidak sama.

otIp6IsAddressUnspecified

bool otIp6IsAddressUnspecified(
  const otIp6Address *aAddress
)

Fungsi ini menunjukkan apakah alamat IPv6 yang diberikan adalah Alamat Tidak Ditentukan atau tidak.

rincian
Parameter
[in] aAddress
Sebuah pointer ke alamat IPv6.
Mengembalikan Nilai
TRUE
Jika alamat IPv6 adalah Alamat yang Tidak Ditentukan.
FALSE
Jika alamat IPv6 bukan Alamat yang Tidak Ditentukan.

otIp6IsEnabled

bool otIp6IsEnabled(
  otInstance *aInstance
)

Fungsi ini menunjukkan apakah antarmuka IPv6 aktif atau tidak.

rincian
Parameter
[in] aInstance
Pointer ke instance OpenThread.
Mengembalikan Nilai
TRUE
Antarmuka IPv6 diaktifkan.
FALSE
Antarmuka IPv6 dinonaktifkan.

otIp6IsMulticastPromiscuousEnabled

bool otIp6IsMulticastPromiscuousEnabled(
  otInstance *aInstance
)

Periksa apakah mode promiscuous multicast diaktifkan pada antarmuka Thread.

rincian
Parameter
[in] aInstance
Pointer ke instance OpenThread.
Lihat juga:
otIp6SetMulticastPromiscuousEnabled

otIp6IsReceiveFilterEnabled

bool otIp6IsReceiveFilterEnabled(
  otInstance *aInstance
)

Fungsi ini menunjukkan apakah atau tidak Thread kontrol lalu lintas disaring saat menyampaikan datagram IPv6 melalui callback ditentukan dalam otIp6SetReceiveCallback () .

rincian
Parameter
[in] aInstance
Pointer ke instance OpenThread.
Kembali
TRUE jika lalu lintas kontrol Thread difilter, FALSE jika tidak.
Lihat juga:
otIp6SetReceiveCallback
otIp6SetReceiveFilterEnabled

otIp6IsSlaacEnabled

bool otIp6IsSlaacEnabled(
  otInstance *aInstance
)

Fungsi ini menunjukkan apakah modul SLAAC diaktifkan atau tidak.

Fungsi ini memerlukan fitur build-waktu OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE harus diaktifkan.

rincian
Mengembalikan Nilai
TRUE
Modul SLAAC diaktifkan.
FALSE
Modul SLAAC dinonaktifkan.

otIp6NewMessage

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

Alokasikan buffer pesan baru untuk mengirim pesan IPv6.

rincian
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aSettings
Pointer ke pengaturan pesan atau NULL untuk mengatur pengaturan default.
Kembali
Pointer ke buffer pesan atau NULL jika tidak ada buffer pesan yang tersedia atau parameter tidak valid.
Lihat juga:
otMessageGratis

otIp6NewMessageFromBuffer

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

Alokasikan buffer pesan baru dan tulis datagram IPv6 ke buffer pesan untuk mengirim pesan IPv6.

rincian
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aData
Sebuah pointer ke buffer datagram IPv6.
[in] aDataLength
Ukuran datagram IPv6 penyangga ditunjuk oleh aData .
[in] aSettings
Pointer ke pengaturan pesan atau NULL untuk mengatur pengaturan default.
Kembali
Pointer ke pesan atau NULL jika header IPv6 rusak atau buffer pesan tidak mencukupi tersedia.
Lihat juga:
otMessageGratis

otIp6PrefixMatch

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

Fungsi ini mengembalikan panjang kecocokan awalan (bit) untuk dua alamat IPv6.

rincian
Parameter
[in] aFirst
Sebuah pointer ke alamat IPv6 pertama.
[in] aSecond
Sebuah pointer ke alamat IPv6 kedua.
Kembali
Panjang awalan cocok dalam bit.

otIp6PrefixToString

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

Fungsi ini mengonversi awalan IPv6 yang diberikan menjadi string yang dapat dibaca manusia.

String alamat IPv6 diformat sebagai "%x:%x:%x:...[::]/plen".

Jika string yang dihasilkan tidak cocok di aBuffer (dalam nya aSize karakter), string akan dipotong tapi string dikeluarkan selalu null-dihentikan.

rincian
Parameter
[in] aPrefix
Pointer ke awalan IPv6 (HARUS TIDAK NULL).
[out] aBuffer
Pointer ke array char untuk menampilkan string (HARUS TIDAK NULL).
[in] aSize
Ukuran aBuffer (dalam byte). Dianjurkan untuk menggunakan OT_IP6_PREFIX_STRING_SIZE .

otIp6ProtoToString

const char * otIp6ProtoToString(
  uint8_t aIpProto
)

Fungsi ini mengubah nomor protokol IP yang diberikan menjadi string yang dapat dibaca manusia.

rincian
Parameter
[in] aIpProto
Sebuah nomor protokol IP ( OT_IP6_PROTO_* pencacahan).
Kembali
Sebuah string yang mewakili aIpProto .

otIp6RegisterMulticastListeners

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

Fungsi ini mendaftarkan Pendengar Multicast ke Router Tulang Belakang Utama.

Catatan: hanya tersedia ketika kedua OPENTHREAD_CONFIG_TMF_PROXY_MLR_ENABLE dan OPENTHREAD_CONFIG_COMMISSIONER_ENABLE diaktifkan)

rincian
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aAddresses
Array Alamat Multicast untuk mendaftar.
[in] aAddressNum
Jumlah Multicast Alamat untuk mendaftar (0 jika aAddresses adalah NULL).
[in] aTimeout
Sebuah pointer ke nilai batas waktu (dalam detik) untuk dimasukkan dalam MLR.req. Nilai batas waktu 0 menghapus Pendengar Multicast yang sesuai. Jika NULL, MLR.req tidak akan memiliki Timeout Tlv secara default.
[in] aCallback
Pointer ke fungsi panggilan balik.
[in] aContext
Sebuah pointer ke konteks pengguna.
Mengembalikan Nilai
OT_ERROR_NONE
Berhasil mengirim MLR.req. The aCallback akan disebut IFF ini kembali metode OT_ERROR_NONE.
OT_ERROR_BUSY
Jika pendaftaran sebelumnya sedang berlangsung.
OT_ERROR_INVALID_ARGS
Jika satu atau lebih argumen tidak valid.
OT_ERROR_INVALID_STATE
Jika perangkat tidak dalam keadaan valid untuk mengirim MLR.req (mis. Komisaris tidak dimulai, Router Tulang Belakang Utama tidak ditemukan).
OT_ERROR_NO_BUFS
Jika buffer pesan tidak mencukupi tersedia.
Lihat juga:
otIp6RegisterMulticastListenersCallback

otIp6RemoveAllUnsecurePorts

void otIp6RemoveAllUnsecurePorts(
  otInstance *aInstance
)

Fungsi ini menghapus semua port dari daftar port tidak aman yang diizinkan.

rincian
Parameter
[in] aInstance
Pointer ke instance OpenThread.

otIp6RemoveUnicastAddress

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

Hapus Alamat Antarmuka Jaringan dari antarmuka Thread.

rincian
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aAddress
Sebuah pointer ke Alamat IP.
Mengembalikan Nilai
OT_ERROR_NONE
Berhasil menghapus Alamat Antarmuka Jaringan.
OT_ERROR_INVALID_ARGS
Alamat IP yang ditunjukkan oleh aAddress adalah alamat internal.
OT_ERROR_NOT_FOUND
Alamat IP yang ditunjukkan oleh aAddress tidak ditemukan.

otIp6RemoveUnsecurePort

otError otIp6RemoveUnsecurePort(
  otInstance *aInstance,
  uint16_t aPort
)

Fungsi ini menghapus port dari daftar port tidak aman yang diizinkan.

rincian
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aPort
Nilai pelabuhan.
Mengembalikan Nilai
OT_ERROR_NONE
Port berhasil dihapus dari daftar port tidak aman yang diizinkan.
OT_ERROR_INVALID_ARGS
Port tidak valid (nilai 0 dicadangkan untuk penggunaan internal).
OT_ERROR_NOT_FOUND
Port tidak ditemukan dalam daftar port tidak aman.

otIp6SelectSourceAddress

otError otIp6SelectSourceAddress(
  otInstance *aInstance,
  otMessageInfo *aMessageInfo
)

Fungsi ini melakukan pemilihan alamat sumber OpenThread.

rincian
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in,out] aMessageInfo
Sebuah pointer ke informasi pesan.
Mengembalikan Nilai
OT_ERROR_NONE
Ditemukan alamat sumber dan diisi ke dalam mSockAddr dari aMessageInfo .
OT_ERROR_NOT_FOUND
Tidak ada alamat sumber ditemukan dan aMessageInfo tidak berubah.

atauIp6Kirim

otError otIp6Send(
  otInstance *aInstance,
  otMessage *aMessage
)

Fungsi ini mengirimkan datagram IPv6 melalui antarmuka Thread.

Transfer pemanggil kepemilikan aMessage ketika membuat panggilan ini. OpenThread akan membebaskan aMessage setelah proses selesai, termasuk ketika nilai selain OT_ERROR_NONE dikembalikan.

rincian
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aMessage
Sebuah pointer ke buffer pesan yang berisi datagram IPv6.
Mengembalikan Nilai
OT_ERROR_NONE
Berhasil memproses pesan.
OT_ERROR_DROP
Pesan terbentuk dengan baik tetapi tidak sepenuhnya diproses karena aturan pemrosesan paket.
OT_ERROR_NO_BUFS
Tidak dapat mengalokasikan buffer pesan yang diperlukan saat memproses datagram.
OT_ERROR_NO_ROUTE
Tidak ada rute untuk menjadi tuan rumah.
OT_ERROR_INVALID_SOURCE_ADDRESS
Alamat sumber tidak valid, misalnya alamat anycast atau alamat multicast.
OT_ERROR_PARSE
Menemukan header yang salah format saat memproses pesan.

otIp6SetAddressCallback

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

Fungsi ini mendaftarkan panggilan balik untuk memberi tahu perubahan alamat IPv6 internal.

rincian
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aCallback
Pointer ke fungsi yang dipanggil saat alamat IPv6 internal ditambahkan atau dihapus. NULL untuk menonaktifkan panggilan balik.
[in] aCallbackContext
Pointer ke konteks khusus aplikasi.

otIp6SetEnabled

otError otIp6SetEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Fungsi ini membawa naik/turun antarmuka IPv6.

Panggil fungsi ini untuk mengaktifkan/menonaktifkan komunikasi IPv6.

rincian
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aEnabled
TRUE untuk mengaktifkan IPv6, FALSE sebaliknya.
Mengembalikan Nilai
OT_ERROR_NONE
Berhasil membawa antarmuka IPv6 naik/turun.
OT_ERROR_INVALID_STATE
Antarmuka IPv6 tidak tersedia karena perangkat operasi dalam mode mentah-link (berlaku hanya ketika OPENTHREAD_CONFIG_LINK_RAW_ENABLE fitur diaktifkan).

otIp6SetMeshLocalIid

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

Fungsi ini menetapkan IID Lokal Mesh (untuk tujuan pengujian).

Hanya tersedia saat OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE diaktifkan.

rincian
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aIid
Pointer ke IID Lokal Mesh untuk disetel.
Mengembalikan Nilai
OT_ERROR_NONE
Berhasil mengatur IID Lokal Mesh.
OT_ERROR_INVALID_STATE
Protokol utas diaktifkan.

otIp6SetMulticastPromiscuousEnabled

void otIp6SetMulticastPromiscuousEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Aktifkan mode promiscuous multicast pada antarmuka Thread.

rincian
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aEnabled
TRUE untuk mengaktifkan mode Multicast Promiscuous, FALSE jika tidak.
Lihat juga:
otIp6IsMulticastPromiscuousEnabled

otIp6SetReceiveCallback

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

Fungsi ini mendaftarkan panggilan balik untuk menyediakan datagram IPv6 yang diterima.

Secara default, callback ini tidak melewati lalu lintas kontrol Thread. Lihat otIp6SetReceiveFilterEnabled () untuk mengubah kontrol Thread setelan filter lalu lintas.

rincian
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aCallback
Pointer ke fungsi yang dipanggil saat datagram IPv6 diterima atau NULL untuk menonaktifkan panggilan balik.
[in] aCallbackContext
Pointer ke konteks khusus aplikasi.
Lihat juga:
otIp6IsReceiveFilterEnabled
otIp6SetReceiveFilterEnabled

otIp6SetReceiveFilterEnabled

void otIp6SetReceiveFilterEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Fungsi ini set apakah atau tidak Thread kontrol lalu lintas disaring saat menyampaikan datagram IPv6 melalui callback ditentukan dalam otIp6SetReceiveCallback () .

rincian
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aEnabled
TRUE jika lalu lintas kontrol Thread difilter, FALSE jika tidak.
Lihat juga:
otIp6SetReceiveCallback
otIsReceiveIp6FilterEnabled

otIp6SetSlaacEnabled

void otIp6SetSlaacEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Fungsi ini mengaktifkan/menonaktifkan modul SLAAC.

Fungsi ini memerlukan fitur build-waktu OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE harus diaktifkan.

Ketika modul SLAAC diaktifkan, alamat SLAAC (berdasarkan prefiks on-mesh di Data Jaringan) ditambahkan ke antarmuka. Ketika modul SLAAC dinonaktifkan, alamat SLAAC yang ditambahkan sebelumnya akan dihapus.

rincian
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aEnabled
TRUE untuk mengaktifkan, FALSE untuk menonaktifkan.

otIp6SetSlaacPrefixFilter

void otIp6SetSlaacPrefixFilter(
  otInstance *aInstance,
  otIp6SlaacPrefixFilter aFilter
)

Fungsi ini mengatur pengendali filter modul SLAAC.

Fungsi ini memerlukan fitur build-waktu OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE harus diaktifkan.

Handler filter dipanggil oleh modul SLAAC ketika akan menambahkan alamat SLAAC berdasarkan awalan untuk memutuskan apakah alamat harus ditambahkan atau tidak.

Penangan filter NULL menonaktifkan pemfilteran dan memungkinkan semua alamat SLAAC ditambahkan.

Jika fungsi ini tidak dipanggil, filter default yang digunakan oleh modul SLAAC akan menjadi NULL (pemfilteran dinonaktifkan).

rincian
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aFilter
Penunjuk ke penangan filter awalan SLAAC, atau NULL untuk menonaktifkan pemfilteran.

otIp6SockAddrToString

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

Fungsi ini mengubah alamat soket IPv6 yang diberikan menjadi string yang dapat dibaca manusia.

String alamat soket IPv6 diformat sebagai "[

]: " dimana `
ditampilkan sebagai 16 nilai heksagonal yang dipisahkan oleh ':' dan adalah nomor port dalam format desimal (yaitu, "[%x:%x:...:%x]:%u")

Jika string yang dihasilkan tidak cocok di aBuffer (dalam nya aSize karakter), string akan dipotong tapi string dikeluarkan selalu null-dihentikan.

rincian
Parameter
[in] aSockAddr
Pointer ke alamat soket IPv6 (HARUS TIDAK NULL).
[out] aBuffer
Pointer ke array char untuk menampilkan string (HARUS TIDAK NULL).
[in] aSize
Ukuran aBuffer (dalam byte). Dianjurkan untuk menggunakan OT_IP6_SOCK_ADDR_STRING_SIZE .

otIp6SubscribeMulticastAddress

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

Berlangganan antarmuka Thread ke Alamat Multicast Antarmuka Jaringan.

Berlalu dalam contoh aAddress akan disalin oleh antarmuka Thread. Antarmuka Thread hanya mendukung sejumlah alamat multicast yang ditambahkan secara eksternal. Lihat OPENTHREAD_CONFIG_IP6_MAX_EXT_MCAST_ADDRS.

rincian
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aAddress
Sebuah pointer ke Alamat IP.
Mengembalikan Nilai
OT_ERROR_NONE
Berhasil berlangganan Alamat Multicast Antarmuka Jaringan.
OT_ERROR_ALREADY
Alamat multicast sudah berlangganan.
OT_ERROR_INVALID_ARGS
Alamat IP yang ditunjukkan oleh aAddress adalah alamat yang tidak valid.
OT_ERROR_INVALID_STATE
Antarmuka Jaringan tidak aktif.
OT_ERROR_NO_BUFS
Antarmuka Jaringan sudah menyimpan alamat multicast eksternal maksimum yang diizinkan.

otIp6Berhenti BerlanggananMulticastAddress

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

Berhenti berlangganan antarmuka Thread ke Alamat Multicast Antarmuka Jaringan.

rincian
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aAddress
Sebuah pointer ke Alamat IP.
Mengembalikan Nilai
OT_ERROR_NONE
Berhasil berhenti berlangganan Alamat Multicast Antarmuka Jaringan.
OT_ERROR_INVALID_ARGS
Alamat IP yang ditunjukkan oleh aAddress adalah alamat internal.
OT_ERROR_NOT_FOUND
Alamat IP yang ditunjukkan oleh aAddress tidak ditemukan.

makro

OT_IP6_ADDRESS_SIZE

 OT_IP6_ADDRESS_SIZE 16

Ukuran alamat IPv6 (byte)

OT_IP6_ADDRESS_STRING_SIZE

 OT_IP6_ADDRESS_STRING_SIZE 40

Ukuran yang disarankan untuk representasi string dari alamat IPv6.

OT_IP6_IID_SIZE

 OT_IP6_IID_SIZE 8

Ukuran Pengidentifikasi Antarmuka IPv6 (byte)

OT_IP6_PREFIX_BITSIZE

 OT_IP6_PREFIX_BITSIZE (OT_IP6_PREFIX_SIZE * 8)

Ukuran awalan IPv6 (bit)

OT_IP6_PREFIX_SIZE

 OT_IP6_PREFIX_SIZE 8

Ukuran awalan IPv6 (byte)

OT_IP6_PREFIX_STRING_SIZE

 OT_IP6_PREFIX_STRING_SIZE 45

Ukuran yang disarankan untuk representasi string dari awalan IPv6.

OT_IP6_SOCK_ADDR_STRING_SIZE

 OT_IP6_SOCK_ADDR_STRING_SIZE 48

Ukuran yang disarankan untuk representasi string dari alamat soket IPv6.