Telematics SDK - Interface Specification
v1.27.0
|
Data Structures | |
class | telux::data::net::IFirewallManager |
FirewallManager is a primary interface that filters and controls the network traffic on a pre-configured set of rules. More... | |
class | telux::data::net::IFirewallEntry |
Firewall entry class is used for configuring firewall rules. More... | |
struct | telux::data::net::NatConfig |
class | telux::data::net::INatManager |
NatManager is a primary interface for configuring static network address translation(SNAT) and DMZ (demilitarized zone) More... | |
class | telux::data::net::IVlanManager |
VlanManager is a primary interface for configuring VLAN (Virtual Local Area Network). it provide APIs for create, query, remove VLAN interfaces and associate or disassociate with profile IDs. More... | |
class telux::data::net::IFirewallManager |
FirewallManager is a primary interface that filters and controls the network traffic on a pre-configured set of rules.
|
virtual |
Destructor for IFirewallManager
|
pure virtual |
Checks if the data subsystem is ready.
|
pure virtual |
Wait for data subsystem to be ready.
|
pure virtual |
Sets firewall configuration to enable or disable and update configuration to drop or accept the packets matching the rules.
[in] | profileId | Profile identifier on which firewall will be set. |
[in] | enable | Indicates whether the firewall is enabled |
[in] | allowPackets | Indicates whether to accept or drop packets matching the rules |
[in] | callback | optional callback to get the response setFirewall |
|
pure virtual |
Request status of firewall
[in] | profileId | Profile identifier for which firewall status is requested. |
[in] | callback | callback to get the response of requestFirewallStatus |
|
pure virtual |
Adds the firewall rule
[in] | profileId | Profile identifier on which firewall rule will be added. |
[in] | entry | Firewall entry based on protocol type |
[in] | callback | optional callback to get the response addFirewallEntry |
|
pure virtual |
Request Firewall rules
[in] | profileId | Profile identifier on which firewall entries are retrieved. |
[in] | callback | callback to get the response requestFirewallEntry |
|
pure virtual |
Remove firewall entry
[in] | profileId | Profile identifier on which firewall entry will be removed. |
[in] | entry | Firewall entry to be removed, get the available entries from requestFirewallEntry() API |
[in] | callback | callback to get the response removeFirewallEntry |
|
pure virtual |
Enable demilitarized zone (DMZ)
[in] | profileId | Profile identifier on which DMZ will be enabled. |
[in] | ipAddr | IP address for which DMZ will be enabled |
[in] | callback | optional callback to get the response addDmz |
|
pure virtual |
Disable demilitarized zone (DMZ)
[in] | profileId | Profile identifier on which DMZ will be disabled. |
[in] | ipType | Specify IP type of the DMZ to be disabled |
[in] | callback | optional callback to get the response removeDmz |
|
pure virtual |
Request DMZ entry that was previously set using enableDmz API
[in] | profileId | Profile identifier on which DMZ entries are requested. |
[in] | dmzCb | callback to get the response requestDmzEntry |
|
pure virtual |
Get the associated operation type for this instance.
class telux::data::net::IFirewallEntry |
Firewall entry class is used for configuring firewall rules.
Public Member Functions | |
virtual std::shared_ptr < IIpFilter > | getIProtocolFilter ()=0 |
virtual telux::data::Direction | getDirection ()=0 |
virtual telux::data::IpFamilyType | getIpFamilyType ()=0 |
virtual | ~IFirewallEntry () |
|
virtual |
Destructor for IFirewallEntry
|
pure virtual |
Get IProtocol filter type
|
pure virtual |
Get firewall direction
|
pure virtual |
Get Ip FamilyType
struct telux::data::net::NatConfig |
Structure represents Network Address Translation (NAT) configuration
Data Fields | ||
---|---|---|
string | addr |
Private IP address |
uint16_t | port |
Private port |
uint16_t | globalPort |
Global port |
IpProtocol | proto |
IP protocol telux::net::IpProtocol |
class telux::data::net::INatManager |
NatManager is a primary interface for configuring static network address translation(SNAT) and DMZ (demilitarized zone)
Public Member Functions | |
virtual bool | isSubsystemReady ()=0 |
virtual std::future< bool > | onSubsystemReady ()=0 |
virtual telux::common::Status | addStaticNatEntry (int profileId, const NatConfig &snatConfig, telux::common::ResponseCallback callback=nullptr)=0 |
virtual telux::common::Status | removeStaticNatEntry (int profileId, const NatConfig &snatConfig, telux::common::ResponseCallback callback=nullptr)=0 |
virtual telux::common::Status | requestStaticNatEntries (int profileId, StaticNatEntriesCb snatEntriesCb)=0 |
virtual telux::data::OperationType | getOperationType ()=0 |
virtual | ~INatManager () |
|
virtual |
Destructor for INatManager
|
pure virtual |
Checks if the NAT manager subsystem is ready.
|
pure virtual |
Wait for NAT manager subsystem to be ready.
|
pure virtual |
Adds a static Network Address Translation (NAT) entry in the NAT table, these entries are persistent across object, connection and reboot lifetimes. To remove an entry it needs a explicit call to removeStaticNatEntry() API, it supports both IPv4 and IPv6
[in] | profileId | Profile identifier to which static entry will be mapped to. |
[in] | snatConfig | snatConfiguration telux::net::NatConfig |
[in] | callback | optional callback to get the response addStaticNatEntry |
|
pure virtual |
Removes a static Network Address Translation (NAT) entry in the NAT table, it supports both IPv4 and IPv6
[in] | profileId | Profile identifier to which static entry will be removed from. |
[in] | snatConfig | snatConfiguration telux::net::NatConfig |
[in] | callback | optional callback to get the response removeStaticNatEntry |
|
pure virtual |
Request list of static nat entries available in the NAT table
[in] | profileId | Profile identifier to which static entries will be retrieved. |
[in] | snatEntriesCb | Asynchronous callback to get the list of static Network Address Translation (NAT) entries |
|
pure virtual |
Get the associated operation type for this instance.
class telux::data::net::IVlanManager |
VlanManager is a primary interface for configuring VLAN (Virtual Local Area Network). it provide APIs for create, query, remove VLAN interfaces and associate or disassociate with profile IDs.
Public Member Functions | |
virtual bool | isSubsystemReady ()=0 |
virtual std::future< bool > | onSubsystemReady ()=0 |
virtual telux::common::Status | createVlan (const VlanConfig &vlanConfig, CreateVlanCb callback=nullptr)=0 |
virtual telux::common::Status | removeVlan (int16_t vlanId, InterfaceType ifaceType, telux::common::ResponseCallback callback=nullptr)=0 |
virtual telux::common::Status | queryVlanInfo (QueryVlanResponseCb callback)=0 |
virtual telux::common::Status | bindWithProfile (int profileId, int vlanId, telux::common::ResponseCallback callback)=0 |
virtual telux::common::Status | unbindFromProfile (int profileId, int vlanId, telux::common::ResponseCallback callback)=0 |
virtual telux::common::Status | queryVlanMappingList (VlanMappingResponseCb callback)=0 |
virtual telux::data::OperationType | getOperationType ()=0 |
virtual | ~IVlanManager () |
|
virtual |
Destructor for IVlanManager
|
pure virtual |
Checks if the data subsystem is ready.
|
pure virtual |
Wait for data subsystem to be ready.
|
pure virtual |
Create a VLAN associated with multiple interfaces
[in] | vlanConfig | vlan configuration |
[out] | callback | optional callback to get the response createVlan |
|
pure virtual |
Remove VLAN configuration
[in] | vlanId | VLAN ID |
[in] | ifaceType | telux::net::InterfaceType |
[out] | callback | optional callback to get the response removeVlan |
|
pure virtual |
Query information about all the VLANs in the system
[out] | callback | Response callback with list of configured VLANs |
|
pure virtual |
Bind a Vlan with a particular profile ID. When a WWAN network interface is brought up using IDataConnectionManager::startDataCall on that profile ID, that interface will be accessible from this Vlan
[in] | profileId | profile id for vlan association |
[in] | vlanId | sets vlan id |
[out] | callback | callback to get the response of associateWithProfileId API |
|
pure virtual |
Unbind VLAN id with given profile id
[in] | profileId | profile id for vlan association |
[in] | vlanId | vlan id |
[in] | callback | callback to get the response of associateWithProfileId API |
|
pure virtual |
Query VLAN mapping list with associated profile id and vlan id
[in] | callback | callback to get the response of queryVlanMappingList API |
|
pure virtual |
Get the associated operation type for this instance.