нл:: Переплетение:: Профили:: ВеавеТуннель:: Агент WeaveTunnel
Краткое содержание
Конструкторы и деструкторы | |
---|---|
WeaveTunnelAgent (void) |
Публичные типы | |
---|---|
AgentState { | перечисление Состояния Туннельного агента в отношении его подключения к Сервису. |
AgentState | определение типа Состояния Туннельного агента в отношении его подключения к Сервису. |
OnServiceTunnelReconnectNotifyFunct )(TunnelType tunType, const char *reconnectHost, const uint16_t reconnectPort, void *appCtxt) | определение типаvoid(* Указатель функции на обработчик, установленный более высоким уровнем, когда от службы получено повторное подключение туннеля. |
OnServiceTunnelStatusNotifyFunct )(WeaveTunnelConnectionMgr::TunnelConnNotifyReasons reason, WEAVE_ERROR err, void *appCtxt) | определение типаvoid(* Указатель функции на обработчик, установленный более высоким уровнем для воздействия на различные уведомления, связанные с туннелем к Сервису. |
PlatformNetworkOnlineCheck )(TunnelType tunType, void *appCtxt) | определение типаvoid(* Указатель функции на обработчик, предоставляемый приложением для выполнения онлайн-проверки на уровне сети. |
WeaveTunnelFlags { | перечисление Биты флага Weave Tunnel. |
WeaveTunnelFlags | определение типа Биты флага Weave Tunnel. |
Публичные атрибуты | |
---|---|
NetworkOnlineCheck | |
OnServiceTunReconnectNotify | |
OnServiceTunStatusNotify | Указатель функции на обработчик, установленный более высоким уровнем для воздействия на различные уведомления, связанные с туннелем к Сервису. |
mServiceMgr | WeaveServiceManager * Указатель Service Manager, используемый для поиска и подключения к службе. |
Общественные функции | |
---|---|
DisablePrimaryTunnel (void) | void Отключить основной туннель. |
EnablePrimaryTunnel (void) | void Включить основной туннель. |
GetAgentStateName (const AgentState state) | const char * Получите имя WeaveTunnelAgentState. |
GetTimeMsec (void) | uint64_t Получите системное время в миллисекундах. |
GetWeaveTunnelAgentState (void) | Получите состояние TunnelAgent. |
Init (InetLayer *inet, WeaveExchangeManager *exchMgr, uint64_t dstNodeId, WeaveAuthMode authMode, WeaveServiceManager *svcMgr, const char *intfName, uint8_t role, void *appContext) | Инициализируйте агент туннеля. |
Init (InetLayer *inet, WeaveExchangeManager *exchMgr, uint64_t dstNodeId, IPAddress dstIPAddr, WeaveAuthMode authMode, const char *intfName, uint8_t role, void *appContext) | Инициализируйте агент туннеля. |
IsPrimaryTunnelEnabled (void) const | bool Проверьте, включен ли основной туннель. |
IsPrimaryTunnelRoutingRestricted (void) | bool Проверьте, распространяется ли служба на ограничения маршрутизации на основной туннель. |
IsTunnelRoutingRestricted (void) | bool Проверьте, не распространяется ли на туннель ограничения маршрутизации со стороны службы. |
NetworkOnlineCheckResult (TunnelType tunType, bool isOnline) | void Обратный вызов, вызываемый платформой, когда доступен результат онлайн-проверки сети. |
ResetPrimaryReconnectBackoff (bool reconnectImmediately) | Сбросьте время повторного подключения для основного туннеля. |
SetAuthMode (const WeaveAuthMode authMode) | void Установите WeaveAuthMode для туннеля. |
SetDestination (const uint64_t nodeId, const IPAddress ipAddr, const uint16_t servicePort) | void Установите идентификатор узла назначения, IP-адрес и порт для туннеля. |
SetTunnelingDeviceRole (const Role role) | void Установите роль туннельного устройства (BorderGateway, StandaloneDevice, MobileDevice) для туннеля. |
Shutdown (void) | Завершите работу туннельного агента. |
StartServiceTunnel (void) | Запустите сервисный туннель. |
StartServiceTunnel (uint64_t dstNodeId, IPAddress dstIPAddr, WeaveAuthMode authMode) | Запустите сервисный туннель. |
StopServiceTunnel (void) | void Закройте туннельное соединение со службой. |
StopServiceTunnel ( WEAVE_ERROR err) | void Закройте туннельное соединение со службой. |
Публичные статические функции | |
---|---|
RecvdFromShortcutUDPTunnel ( WeaveMessageLayer *msgLayer, PacketBuffer *message) | void Обработчик для получения туннелированных пакетов IPv6 через короткий UDP-туннель между пограничным шлюзом и мобильным устройством и пересылки на интерфейс конечной точки туннеля после декапсуляции необработанного пакета IPv6 из заголовка туннеля. |
RecvdFromTunnelEndPoint ( TunEndPoint *tunEP, PacketBuffer *message) | void Обработчик для получения пакетов IPv6 из интерфейса EndPoint туннеля и их пересылки либо в Службу через TCP-соединение службы после инкапсуляции пакета IPv6 внутри заголовка туннеля, либо в мобильный клиент через туннель быстрого доступа. |
Публичные типы
Состояние Агента
AgentState
Состояния Туннельного агента в отношении его подключения к Сервису.
Состояние Агента
enum nl::Weave::Profiles::WeaveTunnel::WeaveTunnelAgent::AgentState AgentState
Состояния Туннельного агента в отношении его подключения к Сервису.
Онсервицетуннелреконнектнотифифункт
void(* OnServiceTunnelReconnectNotifyFunct)(TunnelType tunType, const char *reconnectHost, const uint16_t reconnectPort, void *appCtxt)
Указатель функции на обработчик, установленный более высоким уровнем, когда от службы получено повторное подключение туннеля.
Подробности | |||||||||
---|---|---|---|---|---|---|---|---|---|
Параметры |
|
Онсервицетуннелстатуснотифифункт
void(* OnServiceTunnelStatusNotifyFunct)(WeaveTunnelConnectionMgr::TunnelConnNotifyReasons reason, WEAVE_ERROR err, void *appCtxt)
Указатель функции на обработчик, установленный более высоким уровнем для воздействия на различные уведомления, связанные с туннелем к Сервису.
Подробности | |||||||
---|---|---|---|---|---|---|---|
Параметры |
|
ПлатформаСетьОнлайнПроверить
void(* PlatformNetworkOnlineCheck)(TunnelType tunType, void *appCtxt)
Указатель функции на обработчик, предоставляемый приложением для выполнения онлайн-проверки на уровне сети.
Подробности | |||||
---|---|---|---|---|---|
Параметры |
|
ТкатьТуннельФлаги
WeaveTunnelFlags
Биты флага Weave Tunnel.
ТкатьТуннельФлаги
enum nl::Weave::Profiles::WeaveTunnel::WeaveTunnelAgent::WeaveTunnelFlags WeaveTunnelFlags
Биты флага Weave Tunnel.
Публичные атрибуты
СетьОнлайнПроверка
PlatformNetworkOnlineCheck NetworkOnlineCheck
Онсервицетунреконнектифи
OnServiceTunnelReconnectNotifyFunct OnServiceTunReconnectNotify
Онсервицетунстатуснотифи
OnServiceTunnelStatusNotifyFunct OnServiceTunStatusNotify
Указатель функции на обработчик, установленный более высоким уровнем для воздействия на различные уведомления, связанные с туннелем к Сервису.
мсервицемгр
WeaveServiceManager * mServiceMgr
Указатель Service Manager, используемый для поиска и подключения к службе.
Общественные функции
Отключить первичный туннель
void DisablePrimaryTunnel( void )
Отключить основной туннель.
Отключите основной туннель.
Включить первичный туннель
void EnablePrimaryTunnel( void )
Включить основной туннель.
Включите основной туннель.
GetAgentStateName
const char * GetAgentStateName( const AgentState state )
Получите имя WeaveTunnelAgentState.
GetTimeMsec
uint64_t GetTimeMsec( void )
Получите системное время в миллисекундах.
Получите системное время или монотонное время в миллисекундах, если системное время недоступно.
GetWeaveTunnelAgentState
AgentState GetWeaveTunnelAgentState( void )
Получите состояние TunnelAgent.
Подробности | |
---|---|
Возврат | AgentState — текущее состояние WeaveTunnelAgent . |
Инициализировать
WEAVE_ERROR Init( InetLayer *inet, WeaveExchangeManager *exchMgr, uint64_t dstNodeId, WeaveAuthMode authMode, WeaveServiceManager *svcMgr, const char *intfName, uint8_t role, void *appContext )
Инициализируйте агент туннеля.
Это создает объект конечной точки Tunnel, настраивает интерфейс туннеля, инициализирует переменные-члены, обратные вызовы и WeaveTunnelControl .
Инициализировать
WEAVE_ERROR Init( InetLayer *inet, WeaveExchangeManager *exchMgr, uint64_t dstNodeId, IPAddress dstIPAddr, WeaveAuthMode authMode, const char *intfName, uint8_t role, void *appContext )
Инициализируйте агент туннеля.
Это создает объект конечной точки Tunnel, настраивает интерфейс туннеля, инициализирует переменные-члены, обратные вызовы и WeaveTunnelControl .
IsPrimaryTunnelEnabled
bool IsPrimaryTunnelEnabled( void ) const
Проверьте, включен ли основной туннель.
Подробности | |
---|---|
Возврат | true, если он включен, иначе false. |
IsPrimaryTunnelRoutingRestricted
bool IsPrimaryTunnelRoutingRestricted( void )
Проверьте, распространяется ли служба на ограничения маршрутизации на основной туннель.
Проверьте, распространяется ли на основной туннель ограничения маршрутизации.
Подробности | |
---|---|
Возврат | true, если основной туннель установлен, но на него распространяются ограничения маршрутизации со стороны службы. |
IsTunnelRoutingRestricted
bool IsTunnelRoutingRestricted( void )
Проверьте, не распространяется ли на туннель ограничения маршрутизации со стороны службы.
Проверьте, распространяется ли на туннель ограничения маршрутизации.
Подробности | |
---|---|
Возврат | true, если установлен основной или резервный туннель, и на оба из них накладываются ограничения маршрутизации со стороны службы. |
СетьОнлайнЧекРезультат
void NetworkOnlineCheckResult( TunnelType tunType, bool isOnline )
Обратный вызов, вызываемый платформой, когда доступен результат онлайн-проверки сети.
Подробности | |||||
---|---|---|---|---|---|
Параметры |
|
ResetPrimaryReconnectBackoff
WEAVE_ERROR ResetPrimaryReconnectBackoff( bool reconnectImmediately )
Сбросьте время повторного подключения для основного туннеля.
Подробности | |||
---|---|---|---|
Параметры |
|
SetAuthMode
void SetAuthMode( const WeaveAuthMode authMode )
Установите WeaveAuthMode для туннеля.
Подробности | |||
---|---|---|---|
Параметры |
|
УстановитьDestination
void SetDestination( const uint64_t nodeId, const IPAddress ipAddr, const uint16_t servicePort )
Установите идентификатор узла назначения, IP-адрес и порт для туннеля.
Установите идентификатор узла назначения и IP-адрес для туннеля.
Подробности | |||||||
---|---|---|---|---|---|---|---|
Параметры |
|
SetTunnelingDeviceRole
void SetTunnelingDeviceRole( const Role role )
Установите роль туннельного устройства (BorderGateway, StandaloneDevice, MobileDevice) для туннеля.
Установите роль туннельного устройства (BorderGateway или Standalone) для туннеля.
Подробности | |||
---|---|---|---|
Параметры |
|
Неисправность
WEAVE_ERROR Shutdown( void )
Завершите работу туннельного агента.
Это разрывает соединение со службой и закрывает интерфейс TunEndPoint после удаления адресов и маршрутов, связанных с туннельным интерфейсом.
Это разрывает соединение со службой и закрывает интерфейс TunEndPoint после удаления адресов и маршрутов, связанных с туннельным интерфейсом.
Подробности | |
---|---|
Возврат | WEAVE_NO_ERROR в случае успеха, в противном случае соответствующий тип WEAVE_ERROR. |
Стартсервистуннель
WEAVE_ERROR StartServiceTunnel( void )
Запустите сервисный туннель.
Это активирует туннель и пытается установить соединение со Службой.
Это пытается установить соединение со Службой, а также устанавливает маршрут структуры к туннельному интерфейсу.
Подробности | |
---|---|
Возврат | WEAVE_NO_ERROR в случае успеха, в противном случае соответствующий тип WEAVE_ERROR. |
Стартсервистуннель
WEAVE_ERROR StartServiceTunnel( uint64_t dstNodeId, IPAddress dstIPAddr, WeaveAuthMode authMode )
Запустите сервисный туннель.
Это включает туннель и пытается установить соединение со Службой.
Стопсервистуннель
void StopServiceTunnel( void )
Закройте туннельное соединение со службой.
Стопсервистуннель
void StopServiceTunnel( WEAVE_ERROR err )
Закройте туннельное соединение со службой.
Подробности | |||
---|---|---|---|
Параметры |
|
Агент WeaveTunnel
WeaveTunnelAgent( void )
Публичные статические функции
RecvdFromShortcutUDPTunnel
void RecvdFromShortcutUDPTunnel( WeaveMessageLayer *msgLayer, PacketBuffer *message )
Обработчик для получения туннелированных пакетов IPv6 через короткий UDP-туннель между пограничным шлюзом и мобильным устройством и пересылки на интерфейс конечной точки туннеля после декапсуляции необработанного пакета IPv6 из заголовка туннеля.
Обработчик для получения туннелированных пакетов IPv6 из TCP-соединения службы и их пересылки на интерфейс конечной точки туннеля после декапсуляции необработанного пакета IPv6 из заголовка туннеля.
Подробности | |||||||
---|---|---|---|---|---|---|---|
Параметры |
|
RecvdFromTunnelEndPoint
void RecvdFromTunnelEndPoint( TunEndPoint *tunEP, PacketBuffer *message )
Обработчик для получения пакетов IPv6 из интерфейса EndPoint туннеля и их пересылки либо в Службу через TCP-соединение службы после инкапсуляции пакета IPv6 внутри заголовка туннеля, либо в мобильный клиент через туннель быстрого доступа.
Обработчик для получения пакетов IPv6 из интерфейса EndPoint туннеля и их пересылки либо в Службу через TCP-соединение службы после инкапсуляции пакета IPv6 внутри заголовка туннеля, либо в мобильный клиент через локальный туннель.
Если соединение со службой еще не установлено, сообщение помещается в очередь до тех пор, пока соединение не будет установлено. Для туннелирования к мобильному клиентскому устройству используется ссылка на таблицу соседей следующего перехода.
Если соединение со службой еще не установлено, сообщение помещается в очередь до тех пор, пока соединение не будет установлено. Для туннелирования к мобильному клиентскому устройству используется ссылка на таблицу соседей следующего перехода.
Подробности | |||||
---|---|---|---|---|---|
Параметры |
|