nl::Weave::Profiles::WeaveTunnel::WeaveTunnelControl

Resumo

Construtores e destrutores

WeaveTunnelControl(void)

Tipos públicos

TunnelStatusRcvdFunct)(uint8_t tType, StatusReport &tunStatus) typedef
void(*
Ponteiro de função para o gerenciador definido por uma camada superior para agir após o recebimento de uma mensagem StatusReport em resposta a uma mensagem de controle de túnel enviada.

Atributos públicos

OnTunStatusRcvd
mCtrlResponseTimeout
uint16_t
Tempo limite(em segundos) das respostas para controlar mensagens.
mShortcutTunnelAdvInterval
uint16_t
Intervalo em segundos para anúncios periódicos de túnel de atalho.

Funções públicas

Close(void)
Feche WeaveTunnelControl, fechando todos os contextos de troca pendentes e redefinindo membros.
DisableShortcutTunneling(void)
void
Desative o encapsulamento de atalhos do envio de anúncios do gateway de borda ou do cliente para dispositivos móveis e também detecte os anúncios dos túneis de atalhos.
EnableShortcutTunneling(void)
void
Ative o encapsulamento de atalhos enviando anúncios do gateway de borda ou do cliente móvel e também detectando os anúncios dos túneis de atalho correspondentes.
Init(WeaveTunnelAgent *tunAgent, TunnelStatusRcvdFunct statusRcvd)
Inicialize o WeaveTunnelControl para definir membros relevantes, como o Weave Tunnel Agent e callbacks.
IsPeerInShortcutTunnelCache(uint64_t peerId)
bool
Verifique se o peering está presente no cache de atalhos do túnel para envio local.
Reconnect(WeaveTunnelConnectionMgr *conMgr)
Reconecte-se com o nó de peering.
SendBorderRouterAdvertise(void)
Envie uma mensagem de anúncio do roteador de borda anunciando o ID do tecido.
SendMessageOverTunnelShortcut(uint64_t peerId, WeaveMessageInfo *msgHdr, PacketBuffer *msg)
Envie a mensagem pelo atalho do túnel.
SendMobileClientAdvertise(void)
Envie um anúncio de cliente para dispositivos móveis anunciando o ID do nó dele.
SendTunnelClose(WeaveTunnelConnectionMgr *conMgr)
Envie uma mensagem de controle de fechamento de túnel para o nó de peering com um conjunto de rotas de túnel.
SendTunnelOpen(WeaveTunnelConnectionMgr *conMgr, WeaveTunnelRoute *tunRoute)
Envie uma mensagem de controle de túnel aberto para o nó de peering com um conjunto de rotas de túnel.
SendTunnelRouteUpdate(WeaveTunnelConnectionMgr *conMgr, WeaveTunnelRoute *tunRoute)
Envie uma mensagem de controle da atualização de rota do túnel para o nó de peering com um conjunto de rotas do túnel.

Funções estáticas públicas

HandleShortcutTunnelAdvertiseMessage(ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload)
void
Função registrada com WeaveMessageLayer para detectar anúncios de túnel de atalhos e atualizar o cache.

Tipos públicos

TunnelStatusRcvdFunct

void(* TunnelStatusRcvdFunct)(uint8_t tType, StatusReport &tunStatus)

Ponteiro de função para o gerenciador definido por uma camada superior para agir após o recebimento de uma mensagem StatusReport em resposta a uma mensagem de controle de túnel enviada.

Detalhes
Parâmetros
[in] tType
O tipo de túnel Principal ou Backup.
[in] tunStatus
Uma referência à mensagem StatusReport do controle de túnel.

Atributos públicos

OnTunStatusRcvd

TunnelStatusRcvdFunct OnTunStatusRcvd

mCtrlResponseTimeout

uint16_t mCtrlResponseTimeout

Tempo limite(em segundos) das respostas para controlar mensagens.

mShortcutTunnelAdvInterval

uint16_t mShortcutTunnelAdvInterval

Intervalo em segundos para anúncios periódicos de túnel de atalho.

Funções públicas

Fechar

WEAVE_ERROR Close(
  void
)

Feche WeaveTunnelControl, fechando todos os contextos de troca pendentes e redefinindo membros.

Detalhes
Retorna
WEAVE_NO_ERROR.

DisableShortcutTunneling

void DisableShortcutTunneling(
  void
)

Desative o encapsulamento de atalhos do envio de anúncios do gateway de borda ou do cliente para dispositivos móveis e também detecte os anúncios dos túneis de atalhos.

EnableShortcutTunneling

void EnableShortcutTunneling(
  void
)

Ative o encapsulamento de atalhos enviando anúncios do gateway de borda ou do cliente móvel e também detectando os anúncios dos túneis de atalho correspondentes.

Init

WEAVE_ERROR Init(
  WeaveTunnelAgent *tunAgent,
  TunnelStatusRcvdFunct statusRcvd
)

Inicialize o WeaveTunnelControl para definir membros relevantes, como o Weave Tunnel Agent e callbacks.

Detalhes
Parâmetros
[in] tunAgent
Um ponteiro para o objeto WeaveTunnelAgent.
[in] statusRcvd
Um ponteiro para um callback para o gerenciador StatusRcvd.
Retorna
WEAVE_NO_ERROR

IsPeerInShortcutTunnelCache

bool IsPeerInShortcutTunnelCache(
  uint64_t peerId
)

Verifique se o peering está presente no cache de atalhos do túnel para envio local.

Reconectar

WEAVE_ERROR Reconnect(
  WeaveTunnelConnectionMgr *conMgr
)

Reconecte-se com o nó de peering.

SendBorderRouterAdvertise

WEAVE_ERROR SendBorderRouterAdvertise(
  void
)

Envie uma mensagem de anúncio do roteador de borda anunciando o ID do tecido.

SendMessageOverTunnelShortcut

WEAVE_ERROR SendMessageOverTunnelShortcut(
  uint64_t peerId,
  WeaveMessageInfo *msgHdr,
  PacketBuffer *msg
)

Envie a mensagem pelo atalho do túnel.

SendMobileClientAdvertise

WEAVE_ERROR SendMobileClientAdvertise(
  void
)

Envie um anúncio de cliente para dispositivos móveis anunciando o ID do nó dele.

SendTunnelClose

WEAVE_ERROR SendTunnelClose(
  WeaveTunnelConnectionMgr *conMgr
)

Envie uma mensagem de controle de fechamento de túnel para o nó de peering com um conjunto de rotas de túnel.

Envie uma mensagem de controle de fechamento de túnel para o nó de peering.

Detalhes
Parâmetros
[in] conMgr
Um ponteiro para o objeto WeaveTunnelConnectionMgr.
Retorna
WEAVE_ERROR WEAVE_NO_ERROR em caso de êxito, caso contrário, erro.

SendTunnelOpen

WEAVE_ERROR SendTunnelOpen(
  WeaveTunnelConnectionMgr *conMgr,
  WeaveTunnelRoute *tunRoute
)

Envie uma mensagem de controle de túnel aberto para o nó de peering com um conjunto de rotas de túnel.

Detalhes
Parâmetros
[in] conMgr
Um ponteiro para o objeto WeaveTunnelConnectionMgr.
[in] tunRoutes
Lista de rotas de prefixo a serem adicionadas à tabela de rotas.
Retorna
WEAVE_ERROR WEAVE_NO_ERROR em caso de êxito, caso contrário, erro.

SendTunnelRouteUpdate

WEAVE_ERROR SendTunnelRouteUpdate(
  WeaveTunnelConnectionMgr *conMgr,
  WeaveTunnelRoute *tunRoute
)

Envie uma mensagem de controle da atualização de rota do túnel para o nó de peering com um conjunto de rotas do túnel.

Detalhes
Parâmetros
[in] conMgr
Um ponteiro para o objeto WeaveTunnelConnectionMgr.
[in] tunRoutes
Lista de rotas de prefixo a serem adicionadas à tabela de rotas.
Retorna
WEAVE_ERROR WEAVE_NO_ERROR em caso de êxito, caso contrário, erro.

WeaveTunnelControl

 WeaveTunnelControl(
  void
)

Funções estáticas públicas

HandleShortcutTunnelAdvertiseMessage

void HandleShortcutTunnelAdvertiseMessage(
  ExchangeContext *ec,
  const IPPacketInfo *pktInfo,
  const WeaveMessageInfo *msgInfo,
  uint32_t profileId,
  uint8_t msgType,
  PacketBuffer *payload
)

Função registrada com WeaveMessageLayer para detectar anúncios de túnel de atalhos e atualizar o cache.