O Google tem o compromisso de promover a igualdade racial para as comunidades negras. Saiba como.

Border Router

Este módulo inclui funções para gerenciar dados de rede local com o OpenThread Border Router.

Resumo

Funções

otBorderRouterAddOnMeshPrefix ( otInstance *aInstance, const otBorderRouterConfig *aConfig)
Adicione uma configuração de roteador de borda aos dados da rede local.
otBorderRouterAddRoute ( otInstance *aInstance, const otExternalRouteConfig *aConfig)
Adicione uma configuração de rota externa aos dados da rede local.
otBorderRouterGetNetData ( otInstance *aInstance, bool aStable, uint8_t *aData, uint8_t *aDataLength)
Este método fornece uma cópia completa ou estável dos Dados de Rede de Threads locais.
otBorderRouterGetNextOnMeshPrefix ( otInstance *aInstance, otNetworkDataIterator *aIterator, otBorderRouterConfig *aConfig)
Esta função obtém o próximo prefixo On Mesh nos dados de rede local.
otBorderRouterGetNextRoute ( otInstance *aInstance, otNetworkDataIterator *aIterator, otExternalRouteConfig *aConfig)
Esta função obtém a próxima rota externa nos dados da rede local.
otBorderRouterRegister ( otInstance *aInstance)
Registre imediatamente os dados da rede local com o Líder.
otBorderRouterRemoveOnMeshPrefix ( otInstance *aInstance, const otIp6Prefix *aPrefix)
Remova uma configuração de roteador de borda dos dados da rede local.
otBorderRouterRemoveRoute ( otInstance *aInstance, const otIp6Prefix *aPrefix)
Remova uma configuração de rota externa dos dados da rede local.
otBorderRoutingGetOmrPrefix ( otInstance *aInstance, otIp6Prefix *aPrefix)
Este método retorna o prefixo fora da malha roteável (OMR).
otBorderRoutingGetOnLinkPrefix ( otInstance *aInstance, otIp6Prefix *aPrefix)
Este método retorna o prefixo on-link para o link de infraestrutura adjacente.
otBorderRoutingInit ( otInstance *aInstance, uint32_t aInfraIfIndex, bool aInfraIfIsRunning)
Este método inicializa o Border Routing Manager na interface de infraestrutura fornecida.
otBorderRoutingSetEnabled ( otInstance *aInstance, bool aEnabled)
Este método ativa / desativa o Gerenciador de Roteamento de Fronteira.

Funções

otBorderRouterAddOnMeshPrefix

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

Adicione uma configuração de roteador de borda aos dados da rede local.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância OpenThread.
[in] aConfig
Um ponteiro para a configuração do roteador de borda.
Valores Retornados
OT_ERROR_NONE
Adicionada com sucesso a configuração aos dados da rede local.
OT_ERROR_INVALID_ARGS
Um ou mais parâmetros de configuração eram inválidos.
OT_ERROR_NO_BUFS
Não há espaço suficiente disponível para adicionar a configuração aos dados da rede local.
Veja também:
otBorderRouterRemoveOnMeshPrefix
otBorderRouterRegister

otBorderRouterAddRoute

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

Adicione uma configuração de rota externa aos dados da rede local.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância OpenThread.
[in] aConfig
Um ponteiro para a configuração de rota externa.
Valores Retornados
OT_ERROR_NONE
Adicionada com sucesso a configuração aos dados da rede local.
OT_ERROR_INVALID_ARGS
Um ou mais parâmetros de configuração eram inválidos.
OT_ERROR_NO_BUFS
Não há espaço suficiente disponível para adicionar a configuração aos dados da rede local.
Veja também:
otBorderRouterRemoveRoute
otBorderRouterRegister

otBorderRouterGetNetData

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

Este método fornece uma cópia completa ou estável dos Dados de Rede de Threads locais.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância OpenThread.
[in] aStable
TRUE ao copiar a versão estável, FALSE ao copiar a versão completa.
[out] aData
Um ponteiro para o buffer de dados.
[in,out] aDataLength
Na entrada, o tamanho da memória tampão de dados apontado pelo aData . Na saída, número de bytes copiados.

otBorderRouterGetNextOnMeshPrefix

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

Esta função obtém o próximo prefixo On Mesh nos dados de rede local.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância OpenThread.
[in,out] aIterator
Um ponteiro para o contexto do iterador de dados de rede. Para obter a primeira entrada na malha, ela deve ser definida como OT_NETWORK_DATA_ITERATOR_INIT.
[out] aConfig
Um ponteiro para as informações do prefixo On Mesh.
Valores Retornados
OT_ERROR_NONE
O próximo prefixo On Mesh foi encontrado com sucesso.
OT_ERROR_NOT_FOUND
Não existe nenhum prefixo On Mesh subsequente nos Dados da Rede de Threads.

otBorderRouterGetNextRoute

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

Esta função obtém a próxima rota externa nos dados da rede local.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância OpenThread.
[in,out] aIterator
Um ponteiro para o contexto do iterador de dados de rede. Para obter a primeira entrada de rota externa, ela deve ser definida como OT_NETWORK_DATA_ITERATOR_INIT.
[out] aConfig
Um ponteiro para as informações de rota externa.
Valores Retornados
OT_ERROR_NONE
Encontrada com sucesso a próxima rota externa.
OT_ERROR_NOT_FOUND
Nenhuma entrada de rota externa subsequente existe nos dados de rede do segmento.

otBorderRouterRegister

otError otBorderRouterRegister(
  otInstance *aInstance
)

Registre imediatamente os dados da rede local com o Líder.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância OpenThread.
Valores Retornados
OT_ERROR_NONE
Enfileirou com êxito uma mensagem de solicitação de dados do servidor para entrega.
Veja também:
otBorderRouterAddOnMeshPrefix
otBorderRouterRemoveOnMeshPrefix
otBorderRouterAddRoute
otBorderRouterRemoveRoute

otBorderRouterRemoveOnMeshPrefix

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

Remova uma configuração de roteador de borda dos dados da rede local.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância OpenThread.
[in] aPrefix
Um ponteiro para um prefixo IPv6.
Valores Retornados
OT_ERROR_NONE
A configuração foi removida com sucesso dos dados da rede local.
OT_ERROR_NOT_FOUND
Não foi possível encontrar a entrada do Border Router.
Veja também:
otBorderRouterAddOnMeshPrefix
otBorderRouterRegister

otBorderRouterRemoveRoute

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

Remova uma configuração de rota externa dos dados da rede local.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância OpenThread.
[in] aPrefix
Um ponteiro para um prefixo IPv6.
Valores Retornados
OT_ERROR_NONE
A configuração foi removida com sucesso dos dados da rede local.
OT_ERROR_NOT_FOUND
Não foi possível encontrar a entrada do Border Router.
Veja também:
otBorderRouterAddRoute
otBorderRouterRegister

otBorderRoutingGetOmrPrefix

otError otBorderRoutingGetOmrPrefix(
  otInstance *aInstance,
  otIp6Prefix *aPrefix
)

Este método retorna o prefixo fora da malha roteável (OMR).

O prefixo de 64 bits gerado aleatoriamente será publicado na rede Thread se ainda não houver um prefixo OMR.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância OpenThread.
[out] aPrefix
Um ponteiro para onde o prefixo será enviado.
Valores Retornados
OT_ERROR_INVALID_STATE
O Border Routing Manager ainda não foi inicializado.
OT_ERROR_NONE
Obtido com sucesso o prefixo OMR.

otBorderRoutingGetOnLinkPrefix

otError otBorderRoutingGetOnLinkPrefix(
  otInstance *aInstance,
  otIp6Prefix *aPrefix
)

Este método retorna o prefixo on-link para o link de infraestrutura adjacente.

O prefixo de 64 bits gerado aleatoriamente será anunciado no link de infraestrutura se ainda não houver um prefixo no link utilizável sendo anunciado no link.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância OpenThread.
[out] aPrefix
Um ponteiro para onde o prefixo será enviado.
Valores Retornados
OT_ERROR_INVALID_STATE
O Border Routing Manager ainda não foi inicializado.
OT_ERROR_NONE
Obtido com sucesso o prefixo on-link.

otBorderRoutingInit

otError otBorderRoutingInit(
  otInstance *aInstance,
  uint32_t aInfraIfIndex,
  bool aInfraIfIsRunning
)

Este método inicializa o Border Routing Manager na interface de infraestrutura fornecida.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância OpenThread.
[in] aInfraIfIndex
O índice da interface de infraestrutura.
[in] aInfraIfIsRunning
Um booleano que indica se a interface de infraestrutura está em execução.
Valores Retornados
OT_ERROR_NONE
Iniciei com sucesso o Border Routing Manager em determinada infraestrutura.
OT_ERROR_INVALID_STATE
O Border Routing Manager já foi inicializado.
OT_ERROR_INVALID_ARGS
O índice da interface de infraestrutura não é válido.
OT_ERROR_FAILED
Falha interna. Normalmente devido à falha na geração de prefixos aleatórios.
Veja também:
otPlatInfraIfStateChanged .

otBorderRoutingSetEnabled

otError otBorderRoutingSetEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Este método ativa / desativa o Gerenciador de Roteamento de Fronteira.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância OpenThread.
[in] aEnabled
Um booleano para habilitar / desabilitar o gerenciador de roteamento.
Valores Retornados
OT_ERROR_INVALID_STATE
O Border Routing Manager ainda não foi inicializado.
OT_ERROR_NONE
Habilitado / desabilitado com sucesso o Gerenciador de Roteamento de Fronteira.