Interfejs infrastruktury

Ten moduł zawiera abstrakcję platformy dla sąsiedniego interfejsu sieci infrastruktury.

Podsumowanie

Funkcje

otPlatInfraIfDiscoverNat64Prefix(uint32_t aInfraIfIndex)
Wyślij żądanie wykrywania prefiksu NAT64 w interfejsie infrastruktury za pomocą aInfraIfIndex.
otPlatInfraIfDiscoverNat64PrefixDone(otInstance *aInstance, uint32_t aInfraIfIndex, const otIp6Prefix *aIp6Prefix)
void
Sterownik interfejsu infrastruktury wywołuje tę metodę, aby powiadamiać OpenThread o zakończeniu wykrywania prefiksu NAT64.
otPlatInfraIfHasAddress(uint32_t aInfraIfIndex, const otIp6Address *aAddress)
bool
Wskazuje, czy interfejs infrastruktury ma przypisany adres IPv6.
otPlatInfraIfRecvIcmp6Nd(otInstance *aInstance, uint32_t aInfraIfIndex, const otIp6Address *aSrcAddress, const uint8_t *aBuffer, uint16_t aBufferLength)
void
Sterownik interfejsu infrastruktury wywołuje tę metodę, aby powiadamiać OpenThread o otrzymaniu wiadomości wykrywania sąsiadów ICMPv6.
otPlatInfraIfSendIcmp6Nd(uint32_t aInfraIfIndex, const otIp6Address *aDestAddress, const uint8_t *aBuffer, uint16_t aBufferLength)
Wysyła komunikat wykrywania sąsiadów ICMPv6 przez dany interfejs infrastruktury.
otPlatInfraIfStateChanged(otInstance *aInstance, uint32_t aInfraIfIndex, bool aIsRunning)
Sterownik interfejsu infrastruktury wywołuje tę metodę, aby powiadamiać OpenThread o zmianach stanu interfejsu.

Funkcje

otPlatInfraIfDiscoverNat64Prefix

otError otPlatInfraIfDiscoverNat64Prefix(
  uint32_t aInfraIfIndex
)

Wyślij żądanie wykrywania prefiksu NAT64 w interfejsie infrastruktury za pomocą aInfraIfIndex.

OpenThread będzie okresowo wywoływać tę metodę, aby monitorować obecność lub zmianę prefiksu NAT64.

Szczegóły
Parametry
[in] aInfraIfIndex
Indeks interfejsu infrastruktury do wykrywania prefiksu NAT64.
Zwracane wartości
OT_ERROR_NONE
Zażądano wykrywania prefiksów NAT64.
OT_ERROR_FAILED
Nie udało się zażądać wykrywania prefiksów NAT64.

otPlatInfraIfDiscoverNat64PrefixDone

void otPlatInfraIfDiscoverNat64PrefixDone(
  otInstance *aInstance,
  uint32_t aInfraIfIndex,
  const otIp6Prefix *aIp6Prefix
)

Sterownik interfejsu infrastruktury wywołuje tę metodę, aby powiadamiać OpenThread o zakończeniu wykrywania prefiksu NAT64.

Powinna być wywoływana po wywołaniu otPlatInfraIfDiscoverNat64Prefix. Jeśli nie zostanie wykryty żaden prefiks NAT64, aIp6Prefix powinien wskazywać pusty prefiks o zerowej długości.

Szczegóły
Parametry
[in] aInstance
Struktura instancji OpenThread.
[in] aInfraIfIndex
Indeks interfejsu infrastruktury, w którym wykrywany jest prefiks NAT64.
[in] aIp6Prefix
Wskaźnik do prefiksu NAT64.

otPlatInfraIfHasAddress

bool otPlatInfraIfHasAddress(
  uint32_t aInfraIfIndex,
  const otIp6Address *aAddress
)

Wskazuje, czy interfejs infrastruktury ma przypisany adres IPv6.

Szczegóły
Parametry
[in] aInfraIfIndex
Indeks interfejsu infrastruktury.
[in] aAddress
Adres IPv6.
Zwroty
Wartość TRUE, jeśli interfejs infrastruktury podał adres IPv6, w przeciwnym razie ma wartość FALSE.

OTPlatInfraIfRecvIcmp6Nd

void otPlatInfraIfRecvIcmp6Nd(
  otInstance *aInstance,
  uint32_t aInfraIfIndex,
  const otIp6Address *aSrcAddress,
  const uint8_t *aBuffer,
  uint16_t aBufferLength
)

Sterownik interfejsu infrastruktury wywołuje tę metodę, aby powiadamiać OpenThread o otrzymaniu wiadomości wykrywania sąsiadów ICMPv6.

Patrz: RFC 4861: https://tools.ietf.org/html/rfc4861.

Szczegóły
Parametry
[in] aInstance
Struktura instancji OpenThread.
[in] aInfraIfIndex
Indeks interfejsu infrastruktury, z którego pochodzi wiadomość ICMPv6.
[in] aSrcAddress
Adres źródłowy tej wiadomości.
[in] aBuffer
Bufor wiadomości ICMPv6.
[in] aBufferLength
Długość bufora wiadomości ICMPv6.

otPlatInfraIfSendIcmp6Nd

otError otPlatInfraIfSendIcmp6Nd(
  uint32_t aInfraIfIndex,
  const otIp6Address *aDestAddress,
  const uint8_t *aBuffer,
  uint16_t aBufferLength
)

Wysyła komunikat wykrywania sąsiadów ICMPv6 przez dany interfejs infrastruktury.

Patrz: RFC 4861: https://tools.ietf.org/html/rfc4861.

Szczegóły
Parametry
[in] aInfraIfIndex
Indeks interfejsu infrastruktury, do którego wysyłana jest ta wiadomość.
[in] aDestAddress
Adres docelowy, na który jest wysyłana ta wiadomość.
[in] aBuffer
Bufor wiadomości ICMPv6. Suma kontrolna ICMPv6 wynosi zero, a platforma powinna obliczyć sumę kontrolną.
[in] aBufferLength
Długość bufora wiadomości.
Zwracane wartości
OT_ERROR_NONE
Wysłano wiadomość ICMPv6.
OT_ERROR_FAILED
Nie udało się wysłać wiadomości ICMPv6.

otPlatInfraIfStateChanged

otError otPlatInfraIfStateChanged(
  otInstance *aInstance,
  uint32_t aInfraIfIndex,
  bool aIsRunning
)

Sterownik interfejsu infrastruktury wywołuje tę metodę, aby powiadamiać OpenThread o zmianach stanu interfejsu.

Platforma może wywoływać metodę nawet wtedy, gdy stan działania interfejsu się nie zmienił. Nie ma to wpływu na stan menedżera routingu.

Szczegóły
Parametry
[in] aInstance
Struktura instancji OpenThread.
[in] aInfraIfIndex
Indeks interfejsu infrastruktury.
[in] aIsRunning
Wartość logiczna wskazująca, czy interfejs infrastruktury jest uruchomiony.
Zwracane wartości
OT_ERROR_NONE
Zaktualizowano stan interfejsu infrastruktury.
OT_ERROR_INVALID_STATE
Menedżer routingu nie został zainicjowany.
OT_ERROR_INVALID_ARGS
aInfraIfIndex nie jest zgodny z interfejsem infrastruktury, za pomocą którego zainicjowano menedżera routingu.

Zasoby

Tematy referencyjne interfejsu OpenThread API pochodzą z kodu źródłowego dostępnego w GitHub. Aby dowiedzieć się więcej lub dołączyć do naszej dokumentacji, skorzystaj z sekcji Zasoby.