nl:: Weave:: Profiles:: WeaveTunnel:: WeaveTunnelAgent
Resumo
Construtores e destruidores |
|
---|---|
WeaveTunnelAgent(void)
|
Tipos públicos |
|
---|---|
AgentState{
|
enum Estados do agente de túnel em relação às conexões com o Serviço. |
AgentState
|
typedef Estados do agente de túnel em relação às conexões com o Serviço. |
OnServiceTunnelReconnectNotifyFunct)(TunnelType tunType, const char *reconnectHost, const uint16_t reconnectPort, void *appCtxt)
|
typedefvoid(*
Ponteiro de função para o gerenciador definido por uma camada superior quando uma reconexão de túnel é recebida do serviço. |
OnServiceTunnelStatusNotifyFunct)(WeaveTunnelConnectionMgr::TunnelConnNotifyReasons reason, WEAVE_ERROR err, void *appCtxt)
|
typedefvoid(*
Ponteiro de função para o gerenciador definido por uma camada superior para agir sobre várias notificações relacionadas ao túnel para o serviço. |
PlatformNetworkOnlineCheck)(TunnelType tunType, void *appCtxt)
|
typedefvoid(*
Ponteiro de função para um gerenciador fornecido pelo aplicativo para executar uma verificação on-line no nível da rede. |
WeaveTunnelFlags{
|
enum Bits de sinalização do túnel do Weave. |
WeaveTunnelFlags
|
typedef Bits de sinalização do túnel do Weave. |
Atributos públicos |
|
---|---|
NetworkOnlineCheck
|
|
OnServiceTunReconnectNotify
|
|
OnServiceTunStatusNotify
|
Ponteiro de função para o gerenciador definido por uma camada superior para agir sobre várias notificações relacionadas ao túnel para o serviço.
|
mServiceMgr
|
WeaveServiceManager *
Ponteiro do gerenciador de serviços a ser usado para pesquisar e se conectar ao serviço.
|
Funções públicas |
|
---|---|
DisablePrimaryTunnel(void)
|
void
Desativar túnel principal.
|
EnablePrimaryTunnel(void)
|
void
Ativar túnel primário.
|
GetAgentStateName(const AgentState state)
|
const char *
Extrai o nome WeaveTunnelAgentState.
|
GetTimeMsec(void)
|
uint64_t
Acessa a hora do sistema em milissegundos.
|
GetWeaveTunnelAgentState(void)
|
Acessa o estado do TunnelAgent.
|
Init(InetLayer *inet, WeaveExchangeManager *exchMgr, uint64_t dstNodeId, WeaveAuthMode authMode, WeaveServiceManager *svcMgr, const char *intfName, uint8_t role, void *appContext)
|
Inicialize o agente Tunnel.
|
Init(InetLayer *inet, WeaveExchangeManager *exchMgr, uint64_t dstNodeId, IPAddress dstIPAddr, WeaveAuthMode authMode, const char *intfName, uint8_t role, void *appContext)
|
Inicialize o agente Tunnel.
|
IsPrimaryTunnelEnabled(void) const
|
bool
Verifique se o túnel principal está ativado.
|
IsPrimaryTunnelRoutingRestricted(void)
|
bool
Verifique se o túnel principal está sujeito às restrições de roteamento do serviço.
|
IsTunnelRoutingRestricted(void)
|
bool
Verifique se o túnel está sujeito às restrições de roteamento do serviço.
|
NetworkOnlineCheckResult(TunnelType tunType, bool isOnline)
|
void
Chamada de retorno invocada pela plataforma quando o resultado do verificador on-line de rede está disponível.
|
ResetPrimaryReconnectBackoff(bool reconnectImmediately)
|
Redefina o tempo de reconexão do túnel principal.
|
SetAuthMode(const WeaveAuthMode authMode)
|
void
Defina o WeaveAuthMode para o túnel.
|
SetDestination(const uint64_t nodeId, const IPAddress ipAddr, const uint16_t servicePort)
|
void
Defina o nodeId, o IPAddress e a porta de destino do túnel.
|
SetTunnelingDeviceRole(const Role role)
|
void
Defina o papel do dispositivo de encapsulamento(BorderGateway, StandaloneDevice, MobileDevice) para o túnel.
|
Shutdown(void)
|
Encerre o agente do Tunnel.
|
StartServiceTunnel(void)
|
Inicie o túnel de serviço.
|
StartServiceTunnel(uint64_t dstNodeId, IPAddress dstIPAddr, WeaveAuthMode authMode)
|
Inicie o túnel de serviço.
|
StopServiceTunnel(void)
|
void
Feche a conexão do túnel com o serviço.
|
StopServiceTunnel(WEAVE_ERROR err)
|
void
Feche a conexão do túnel com o serviço.
|
Funções estáticas públicas |
|
---|---|
RecvdFromShortcutUDPTunnel(WeaveMessageLayer *msgLayer, PacketBuffer *message)
|
void
Gerenciador para receber pacotes IPv6 encapsulados pelo túnel UDP de atalho entre o gateway de borda e o dispositivo móvel e encaminhar para a interface Tunnel EndPoint após descapular o pacote IPv6 bruto de dentro do cabeçalho do túnel.
|
RecvdFromTunnelEndPoint(TunEndPoint *tunEP, PacketBuffer *message)
|
void
Gerenciador para receber pacotes IPv6 da interface do Tunnel EndPoint e encaminhar para o serviço pela conexão TCP do serviço após o encapsulamento do pacote IPv6 dentro do cabeçalho do túnel ou para o cliente móvel em um túnel de atalho.
|
Tipos públicos
AgentState
AgentState
Estados do agente de túnel em relação às conexões com o Serviço.
Propriedades | |
---|---|
kState_BkupOnlyTunModeEstablished
|
Usado para indicar que o túnel de backup para o Serviço foi estabelecido. |
kState_Initialized_NoTunnel
|
Usado para indicar que o agente de túnel foi inicializado, mas nenhum túnel foi estabelecido. |
kState_NotInitialized
|
Usado para indicar que o agente de túnel não está inicializado. |
kState_PrimaryAndBkupTunModeEstablished
|
Usado para indicar que os túneis principal e de backup foram estabelecidos. |
kState_PrimaryTunModeEstablished
|
Usado para indicar que o túnel principal para o serviço foi estabelecido. |
AgentState
enum nl::Weave::Profiles::WeaveTunnel::WeaveTunnelAgent::AgentState AgentState
Estados do agente de túnel em relação às conexões com o Serviço.
OnServiceTunnelReconnectNotifyFunct
void(* OnServiceTunnelReconnectNotifyFunct)(TunnelType tunType, const char *reconnectHost, const uint16_t reconnectPort, void *appCtxt)
Ponteiro de função para o gerenciador definido por uma camada superior quando uma reconexão de túnel é recebida do serviço.
Detalhes | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
OnServiceTunnelStatusNotifyFunct
void(* OnServiceTunnelStatusNotifyFunct)(WeaveTunnelConnectionMgr::TunnelConnNotifyReasons reason, WEAVE_ERROR err, void *appCtxt)
Ponteiro de função para o gerenciador definido por uma camada superior para agir sobre várias notificações relacionadas ao túnel para o serviço.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
PlatformNetworkOnlineCheck
void(* PlatformNetworkOnlineCheck)(TunnelType tunType, void *appCtxt)
Ponteiro de função para um gerenciador fornecido pelo aplicativo para executar uma verificação on-line no nível da rede.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
WeaveTunnelFlags
WeaveTunnelFlags
Bits de sinalização do túnel do Weave.
Propriedades | |
---|---|
kTunnelFlag_BackupEnabled
|
Defina quando o túnel de backup é ativado. |
kTunnelFlag_BackupRestricted
|
Definido quando o túnel de backup tem roteamento restrito. |
kTunnelFlag_PrimaryEnabled
|
Definido quando o túnel principal é ativado. |
kTunnelFlag_PrimaryRestricted
|
Definido quando o túnel primário está com roteamento restrito. |
WeaveTunnelFlags
enum nl::Weave::Profiles::WeaveTunnel::WeaveTunnelAgent::WeaveTunnelFlags WeaveTunnelFlags
Bits de sinalização do túnel do Weave.
Atributos públicos
NetworkOnlineCheck
PlatformNetworkOnlineCheck NetworkOnlineCheck
OnServiceTunReconnectNotify
OnServiceTunnelReconnectNotifyFunct OnServiceTunReconnectNotify
OnServiceTunStatusNotify
OnServiceTunnelStatusNotifyFunct OnServiceTunStatusNotify
Ponteiro de função para o gerenciador definido por uma camada superior para agir sobre várias notificações relacionadas ao túnel para o serviço.
mServiceMgr
WeaveServiceManager * mServiceMgr
Ponteiro do gerenciador de serviços a ser usado para pesquisar e se conectar ao serviço.
Funções públicas
DisablePrimaryTunnel
void DisablePrimaryTunnel( void )
Desativar túnel principal.
Desative o túnel primário.
EnablePrimaryTunnel
void EnablePrimaryTunnel( void )
Ativar túnel primário.
Ative o túnel primário.
GetAgentStateName
const char * GetAgentStateName( const AgentState state )
Extrai o nome WeaveTunnelAgentState.
GetTimeMsec
uint64_t GetTimeMsec( void )
Acessa a hora do sistema em milissegundos.
Recebe a hora do sistema ou o horário monotônico em milissegundos se a hora do sistema não estiver disponível.
.GetWeaveTunnelAgentState
AgentState GetWeaveTunnelAgentState( void )
Init
WEAVE_ERROR Init( InetLayer *inet, WeaveExchangeManager *exchMgr, uint64_t dstNodeId, WeaveAuthMode authMode, WeaveServiceManager *svcMgr, const char *intfName, uint8_t role, void *appContext )
Inicialize o agente Tunnel.
Isso cria o objeto de endpoint do túnel, configura a interface do túnel, inicializa as variáveis de membro, os callbacks e o WeaveTunnelControl.
Init
WEAVE_ERROR Init( InetLayer *inet, WeaveExchangeManager *exchMgr, uint64_t dstNodeId, IPAddress dstIPAddr, WeaveAuthMode authMode, const char *intfName, uint8_t role, void *appContext )
Inicialize o agente Tunnel.
Isso cria o objeto de endpoint do túnel, configura a interface do túnel, inicializa as variáveis de membro, os callbacks e o WeaveTunnelControl.
IsPrimaryTunnelEnabled
bool IsPrimaryTunnelEnabled( void ) const
Verifique se o túnel principal está ativado.
Detalhes | |
---|---|
Retornos |
"true" se estiver ativado. Caso contrário, "false".
|
IsPrimaryTunnelRoutingRestricted
bool IsPrimaryTunnelRoutingRestricted( void )
Verifique se o túnel principal está sujeito às restrições de roteamento do serviço.
Verifique se o túnel principal está sujeito a restrições de roteamento.
Detalhes | |
---|---|
Retornos |
verdadeiro se o túnel principal estiver estabelecido, mas sujeito a restrições de roteamento do serviço.
|
IsTunnelRoutingRestricted
bool IsTunnelRoutingRestricted( void )
Verifique se o túnel está sujeito às restrições de roteamento do serviço.
Verifique se o túnel está sujeito a restrições de roteamento.
Detalhes | |
---|---|
Retornos |
verdadeiro se o túnel primário ou de backup estiverem estabelecidos e estiverem sujeitos a restrições de roteamento pelo serviço.
|
NetworkOnlineCheckResult
void NetworkOnlineCheckResult( TunnelType tunType, bool isOnline )
Chamada de retorno invocada pela plataforma quando o resultado do verificador on-line de rede está disponível.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
ResetPrimaryReconnectBackoff
WEAVE_ERROR ResetPrimaryReconnectBackoff( bool reconnectImmediately )
Redefina o tempo de reconexão do túnel principal.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
SetAuthMode
void SetAuthMode( const WeaveAuthMode authMode )
Defina o WeaveAuthMode para o túnel.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
SetDestination
void SetDestination( const uint64_t nodeId, const IPAddress ipAddr, const uint16_t servicePort )
Defina o nodeId, o IPAddress e a porta de destino do túnel.
Defina o nodeId e o IPAddress de destino do túnel.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
SetTunnelingDeviceRole
void SetTunnelingDeviceRole( const Role role )
Defina o papel do dispositivo de encapsulamento(BorderGateway, StandaloneDevice, MobileDevice) para o túnel.
Defina o papel do dispositivo de encapsulamento(BorderGateway vs. Independente) para o túnel.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
Encerramento
WEAVE_ERROR Shutdown( void )
Encerre o agente do Tunnel.
Isso interrompe a conexão com o serviço e fecha a interface do TunEndPoint depois de remover os endereços e as rotas associados à interface do túnel.
Isso interrompe a conexão com o serviço e fecha a interface do TunEndPoint depois de remover os endereços e as rotas associados à interface do túnel.
Detalhes | |
---|---|
Retornos |
WEAVE_NO_ERROR em caso de sucesso, caso contrário, um tipo de WEAVE_ERROR correspondente.
|
StartServiceTunnel
WEAVE_ERROR StartServiceTunnel( void )
Inicie o túnel de serviço.
Isso ativa o túnel e tenta estabelecer uma conexão com o serviço.
Ele tenta estabelecer uma conexão com o serviço e também define a rota da malha para a interface do túnel.
Detalhes | |
---|---|
Retornos |
WEAVE_NO_ERROR em caso de sucesso, caso contrário, um tipo de WEAVE_ERROR correspondente.
|
StartServiceTunnel
WEAVE_ERROR StartServiceTunnel( uint64_t dstNodeId, IPAddress dstIPAddr, WeaveAuthMode authMode )
Inicie o túnel de serviço.
Isso ativa o túnel e tenta estabelecer uma conexão com o serviço.
StopServiceTunnel
void StopServiceTunnel( void )
Feche a conexão do túnel com o serviço.
StopServiceTunnel
void StopServiceTunnel( WEAVE_ERROR err )
Feche a conexão do túnel com o serviço.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
WeaveTunnelAgent
WeaveTunnelAgent( void )
Funções estáticas públicas
RecvdFromShortcutUDPTunnel
void RecvdFromShortcutUDPTunnel( WeaveMessageLayer *msgLayer, PacketBuffer *message )
Gerenciador para receber pacotes IPv6 encapsulados pelo túnel UDP de atalho entre o gateway de borda e o dispositivo móvel e encaminhar para a interface Tunnel EndPoint após descapular o pacote IPv6 bruto de dentro do cabeçalho do túnel.
Gerenciador para receber pacotes IPv6 encapsulados da conexão TCP de serviço e encaminhá-los para a interface Tunnel EndPoint após descapular o pacote IPv6 bruto de dentro do cabeçalho do túnel.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
RecvdFromTunnelEndPoint
void RecvdFromTunnelEndPoint( TunEndPoint *tunEP, PacketBuffer *message )
Gerenciador para receber pacotes IPv6 da interface do Tunnel EndPoint e encaminhar para o serviço pela conexão TCP do serviço após o encapsulamento do pacote IPv6 dentro do cabeçalho do túnel ou para o cliente móvel em um túnel de atalho.
Gerenciador para receber pacotes IPv6 da interface do Tunnel EndPoint e encaminhar para o serviço pela conexão TCP do serviço após o encapsulamento do pacote IPv6 dentro do cabeçalho do túnel ou para o cliente móvel em um túnel local.
Se a conexão de serviço ainda não estiver ativa, a mensagem vai ficar na fila até que a conexão seja configurada. Para tunelamento para o dispositivo cliente móvel, a tabela vizinha do próximo salto é referenciada.
Se a conexão de serviço ainda não estiver ativa, a mensagem vai ficar na fila até que a conexão seja configurada. Para tunelamento para o dispositivo cliente móvel, a tabela vizinha do próximo salto é referenciada.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|