class WeaveTunnelControl
Defined at line 53 of file x64-shared/gen/third_party/openweave-core/src/include/Weave/Profiles/weave-tunneling/WeaveTunnelControl.h
Public Members
uint16_t mCtrlResponseTimeout
uint16_t mShortcutTunnelAdvInterval
TunnelStatusRcvdFunct OnTunStatusRcvd
Public Methods
void WeaveTunnelControl ()
WEAVE_ERROR Init (WeaveTunnelAgent * tunAgent, TunnelStatusRcvdFunct statusRcvd)
Initialize WeaveTunnelControl to set relevant members like the Weave Tunnel Agent and callbacks.
WEAVE_ERROR Close ()
Close WeaveTunnelControl by closing any outstanding exchange contexts and resetting members.
WEAVE_ERROR SendTunnelOpen (WeaveTunnelConnectionMgr * conMgr, WeaveTunnelRoute * tunRoute)
Send a Tunnel Open control message to the peer node with a set of tunnel routes.
WEAVE_ERROR SendTunnelClose (WeaveTunnelConnectionMgr * conMgr)
Send a Tunnel Close control message to the peer node with a set of tunnel routes.
WEAVE_ERROR SendTunnelRouteUpdate (WeaveTunnelConnectionMgr * conMgr, WeaveTunnelRoute * tunRoute)
Send a Tunnel Route Update control message to the peer node with a set of tunnel routes.
WEAVE_ERROR SendTunnelLiveness (WeaveTunnelConnectionMgr * conMgr)
Send a Tunnel Close control message to the peer node with a set of tunnel routes.
WEAVE_ERROR Reconnect (WeaveTunnelConnectionMgr * conMgr)
Reconnect with the peer node.
WEAVE_ERROR SendBorderRouterAdvertise ()
Send a border router advertise message advertising its fabric Id.
WEAVE_ERROR SendMobileClientAdvertise ()
Send a mobile client advertise message advertising its Node Id.
void HandleShortcutTunnelAdvertiseMessage (ExchangeContext * ec, const IPPacketInfo * pktInfo, const WeaveMessageInfo * msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer * payload)
Function registered with WeaveMessageLayer for listening to Shortcut
tunnel advertisments and updating cache.
bool IsPeerInShortcutTunnelCache (uint64_t peerId)
Verify if the peer is present in the tunnel shortcut cache for sending locally.
void EnableShortcutTunneling ()
Enable shortcut tunneling by sending advertisments from either the Border gateway or Mobile client and
also listening to advertisements from shortcut tunnel counterparts.
void DisableShortcutTunneling ()
Disable shortcut tunneling of sending advertisments from either the Border gateway or Mobile client and
also listening to advertisements from shortcut tunnel counterparts.
WEAVE_ERROR SendMessageOverTunnelShortcut (uint64_t peerId, WeaveMessageInfo * msgHdr, PacketBuffer * msg)
Send message over the tunnel shortcut.
Friends
class WeaveTunnelConnectionMgr