Sınır Yönlendirici

Bu modül, OpenThread Sınır Yönlendirici ile yerel ağ verilerini yönetmek için işlevler içerir.

Özet

Typedefs

otBorderRouterNetDataFullCallback)(void *aContext) Typedef
void(*
Ağ Verileri (yerel veya öncü) dolduğu zaman çağrılan işlev işaretçisi geri çağırması.

İşlevler

otBorderRouterAddOnMeshPrefix(otInstance *aInstance, const otBorderRouterConfig *aConfig)
Yerel ağ verilerine sınır yönlendirici yapılandırması ekleyin.
otBorderRouterAddRoute(otInstance *aInstance, const otExternalRouteConfig *aConfig)
Yerel ağ verilerine harici bir rota yapılandırması ekleyin.
otBorderRouterGetNetData(otInstance *aInstance, bool aStable, uint8_t *aData, uint8_t *aDataLength)
Yerel Thread Ağ Verilerinin tam veya kararlı bir kopyasını sağlar.
otBorderRouterGetNextOnMeshPrefix(otInstance *aInstance, otNetworkDataIterator *aIterator, otBorderRouterConfig *aConfig)
Yerel Ağ Verilerinde bir sonraki Mesh Örneği alır.
otBorderRouterGetNextRoute(otInstance *aInstance, otNetworkDataIterator *aIterator, otExternalRouteConfig *aConfig)
Yerel Ağ Verileri'nde bir sonraki harici rotayı alır.
otBorderRouterRegister(otInstance *aInstance)
Yerel ağ verilerini lidere hemen kaydedin.
otBorderRouterRemoveOnMeshPrefix(otInstance *aInstance, const otIp6Prefix *aPrefix)
Yerel ağ verilerinden bir sınır yönlendirici yapılandırmasını kaldırın.
otBorderRouterRemoveRoute(otInstance *aInstance, const otIp6Prefix *aPrefix)
Harici ağ yapılandırmasını yerel ağ verilerinden kaldırın.
otBorderRouterSetNetDataFullCallback(otInstance *aInstance, otBorderRouterNetDataFullCallback aCallback, void *aContext)
void
Ağ Verilerinin ne zaman dolacağını belirtmek için geri çağırmayı ayarlar.

Typedefs

otBorderRouterNetDataFullCallback

void(* otBorderRouterNetDataFullCallback)(void *aContext)

Ağ Verileri (yerel veya öncü) dolduğu zaman çağrılan işlev işaretçisi geri çağırması.

Ayrıntılar
Parametreler
[in] aContext
İsteğe bağlı bağlam bilgilerine işaret eder.

İşlevler

otBorderRouterAddOnMesh Ön Eki

otError otBorderRouterAddOnMeshPrefix(
  otInstance *aInstance,
  const otBorderRouterConfig *aConfig
)

Yerel ağ verilerine sınır yönlendirici yapılandırması ekleyin.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğini işaret eder.
[in] aConfig
Sınır yönlendirici yapılandırmasının işaretçisi.
Döndürülen Değerler
OT_ERROR_NONE
Yapılandırma, yerel ağ verilerine başarıyla eklendi.
OT_ERROR_INVALID_ARGS
Bir veya daha fazla yapılandırma parametresi geçersizdi.
OT_ERROR_NO_BUFS
Yapılandırmayı yerel ağ verilerine eklemek için yeterli alan yok.
Şu makaleyi de inceleyebilirsiniz:
otBorderRouterRemoveOnMeshPrefix
otBorderRouterEnrollment

otBorderRouterEkleme

otError otBorderRouterAddRoute(
  otInstance *aInstance,
  const otExternalRouteConfig *aConfig
)

Yerel ağ verilerine harici bir rota yapılandırması ekleyin.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğini işaret eder.
[in] aConfig
Harici rota yapılandırması için bir işaretçi.
Döndürülen Değerler
OT_ERROR_NONE
Yapılandırma, yerel ağ verilerine başarıyla eklendi.
OT_ERROR_INVALID_ARGS
Bir veya daha fazla yapılandırma parametresi geçersizdi.
OT_ERROR_NO_BUFS
Yapılandırmayı yerel ağ verilerine eklemek için yeterli alan yok.
Şu makaleyi de inceleyebilirsiniz:
otBorderRouterRemoveRoute
otBorderRouterEnrollment

otBorderRouterGetNetData

otError otBorderRouterGetNetData(
  otInstance *aInstance,
  bool aStable,
  uint8_t *aData,
  uint8_t *aDataLength
)

Yerel Thread Ağ Verilerinin tam veya kararlı bir kopyasını sağlar.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğini işaret eder.
[in] aStable
Kararlı sürümü kopyalarken DOĞRU, tam sürümü kopyalarken YANLIŞ değerini girin.
[out] aData
Veri arabelleğine bir işaretçi.
[in,out] aDataLength
Giriş yapıldığında, veri arabelleğinin boyutu aData ile gösterilir. Çıkışta, kopyalanan bayt sayısı.

otBorderRouterGetNextOnMeshÖn eki

otError otBorderRouterGetNextOnMeshPrefix(
  otInstance *aInstance,
  otNetworkDataIterator *aIterator,
  otBorderRouterConfig *aConfig
)

Yerel Ağ Verilerinde bir sonraki Mesh Örneği alır.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğini işaret eder.
[in,out] aIterator
Ağ Verileri iteratörü bağlamı işaretçisi. İlk örgü girişini almak için giriş OT_NETWORK_DATA_ITERATOR_INIT olarak ayarlanmalıdır.
[out] aConfig
Örgü Ön Eki bilgisinin işaretçisi.
Döndürülen Değerler
OT_ERROR_NONE
Bir sonraki Mesh ön eki başarıyla bulundu.
OT_ERROR_NOT_FOUND
Thread Ağ Verilerinde sonraki Örgü Ağ ön eki yok.

otBorderRouterGetSonrakiYol

otError otBorderRouterGetNextRoute(
  otInstance *aInstance,
  otNetworkDataIterator *aIterator,
  otExternalRouteConfig *aConfig
)

Yerel Ağ Verileri'nde bir sonraki harici rotayı alır.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğini işaret eder.
[in,out] aIterator
Ağ Verileri iteratörü bağlamı işaretçisi. İlk harici rota girişini almak için giriş OT_NETWORK_DATA_ITERATOR_INIT olarak ayarlanmalıdır.
[out] aConfig
Harici rota bilgisi işaretçisi.
Döndürülen Değerler
OT_ERROR_NONE
Sonraki Harici Rota başarıyla bulundu.
OT_ERROR_NOT_FOUND
Thread Ağ Verilerinde takip eden harici rota girişi yok.

otBorderRouterKaydol

otError otBorderRouterRegister(
  otInstance *aInstance
)

Yerel ağ verilerini lidere hemen kaydedin.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğini işaret eder.
Döndürülen Değerler
OT_ERROR_NONE
Sunucu Veri İsteği mesajı teslim edilmek üzere başarıyla sıraya alındı.
Şu kaynakları da incelemenizi öneririz:
otBorderRouterAddOnMeshPrefix
otBorderRouterRemoveOnMeshPrefix
otBorderRouterAddRoute
otBorderRouterRemoveRoute

otBorderRouterRemoveOnMeshÖn Eki

otError otBorderRouterRemoveOnMeshPrefix(
  otInstance *aInstance,
  const otIp6Prefix *aPrefix
)

Yerel ağ verilerinden bir sınır yönlendirici yapılandırmasını kaldırın.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğini işaret eder.
[in] aPrefix
Bir IPv6 önekine işaret eden işaret.
Döndürülen Değerler
OT_ERROR_NONE
Yapılandırma, yerel ağ verilerinden başarıyla kaldırıldı.
OT_ERROR_NOT_FOUND
Sınır Yönlendirici girişi bulunamadı.
Şu makaleyi de inceleyebilirsiniz:
otBorderRouterAddOnMeshPrefix
otBorderRouterEnrollment

otBorderRouterKaldırma

otError otBorderRouterRemoveRoute(
  otInstance *aInstance,
  const otIp6Prefix *aPrefix
)

Harici ağ yapılandırmasını yerel ağ verilerinden kaldırın.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğini işaret eder.
[in] aPrefix
Bir IPv6 önekine işaret eden işaret.
Döndürülen Değerler
OT_ERROR_NONE
Yapılandırma, yerel ağ verilerinden başarıyla kaldırıldı.
OT_ERROR_NOT_FOUND
Sınır Yönlendirici girişi bulunamadı.
Şu makaleyi de inceleyebilirsiniz:
otBorderRouterAddRoute
otBorderRouterEnrollment

otBorderRouterSetNetDataFullCallback

void otBorderRouterSetNetDataFullCallback(
  otInstance *aInstance,
  otBorderRouterNetDataFullCallback aCallback,
  void *aContext
)

Ağ Verilerinin ne zaman dolacağını belirtmek için geri çağırmayı ayarlar.

OPENTHREAD_CONFIG_BORDER_ROUTER_SIGNAL_NETWORK_DATA_FULL gerektirir.

Geri çağırma, şu durumlarda çağrılır:

  • Cihaz, lider konumdadır ve Sınır Yönlendirici'den (BR) Ağ Verileri'ne ekleme yapamaz. Bu veriler, Ağ Verilerine eklenemez (alanı biter).
  • Cihaz bir BR işlevi görür ve yerel Ağ Verilerine yeni girişler eklenemez.
  • Cihaz bir BR işlevi görür ve yerel Ağ Veri girişlerini lidere kaydettirmeye çalışır ancak yerel girişlerinin sığmayacağını belirler.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğini işaret eder.
[in] aCallback
Geri çağırma.
[in] aContext
aCallback ile kullanılan rastgele bağlam bilgilerinin işaretçisi.

Kaynaklar

OpenThread API Referans konuları, GitHub'da bulunan kaynak koddan gelir. Daha fazla bilgi edinmek veya dokümanlarımıza katkıda bulunmak için Kaynaklar sayfasına göz atın.