|
NetBurner 3.5.7
PDF Version |
Network interface configuration block class for interface control and configuration. More...
#include <netinterface.h>
Inherits config_obj.
Inherited by EtherLikeInterface, MultiHomeInterface, and PPPInterface.
Public Member Functions | |
| InterfaceBlock (const char *name, const char *desc=NULL) | |
| Constructor with interface name and description. | |
| InterfaceBlock (config_obj &owner, const char *name, const char *desc=NULL) | |
| Constructor with config_obj owner, interface name and description. | |
| void | RegisterInterface () |
| Register a network interface with system. | |
| virtual void | EnableMulticast (MACADR macAddress, BOOL addAddress)=0 |
| Enable Multicast on this interface. | |
| virtual bool | LinkActive ()=0 |
| Returns the link status of the network interface. | |
| virtual int | LinkSpeed ()=0 |
| Returns the link speed of the network interface. | |
| virtual bool | LinkDuplex ()=0 |
| Returns the full or half link duplex of the network interface. | |
| void | InterfaceLinkChange (bool link) |
| Change the link status of the network interface. | |
| virtual const char * | GetInterfaceName () |
| Returns the interface name network interface. | |
| int | GetInterfaceNumber () |
| Returns the Interface Number of the network interface. | |
| bool | IsRootInterface () |
| Returns true if this is the first interface in the interface list. | |
Public Member Functions inherited from config_obj | |
| config_obj (config_obj &owner, const char *name, const char *desc) | |
| Object constructor with the parent/owner leaf parameter. | |
| config_obj (const char *name, const char *desc) | |
| Object constructor. | |
| virtual void | GetTextValue (NBString &s) override |
| Get the object value as a text string to the specified NBString object. | |
| virtual void | GetTypeValue (NBString &s) override |
| Assigns the object type value to the specified NBString object. | |
Public Attributes | |
| I4Record | ip4 {"IPv4"} |
| IPv4 configuration for "this" interface, see config_netobj.h for details. | |
| I6Record | ip6 {"IPv6"} |
| IPv6 configuration for "this" interface, see config_netobj.h for details. | |
| config_MACADR | MAC {"00:00:00:00:00:00", "MAC"} |
| Interface MAC address. May be 0 or null for interfaces such as PPP. | |
| config_string | device_name {"", "DeviceName"} |
| Name of interface. Used to register for DNS and NetBIOS. | |
| config_string | net_domain {"", "NetworkDomain"} |
| Network Domain. | |
| config_int | dhcp_discover_secs {1, "DhcpDiscoverSec"} |
| Seconds to delay after boot before sending a DHCP Discover message. | |
| config_string | discovery_server {"discover.netburner.com/DevicePost", "DiscoveryReportUrl"} |
| NetBurner discover server name. | |
| config_int | discovery_interval {(15 * 60), "DiscoveryReportInterval"} |
| How often to report to the NetBurner discover server. | |
| config_bool | obfuscate_discovery {true, "DiscoveryObfuscate", "Should discovery obfuscate data"} |
| Obfuscate data instead of plain text. | |
| config_bool | supress_default_responses {false, "SupressDefault", "Supress ping and udp Echo ports"} |
| Disable Ping and Echo (port 7) | |
| config_int | vlan_tag_value {0, "VlanTag"} |
| VLAN tag. | |
| int32_t | root_if |
| Root interface number. If multihomed, the interface would be a child of the root interface. | |
| int32_t | my_ifnum |
| This interface number. | |
| uint16_t | netMss |
| Network max segment size for this interface. | |
| uint8_t | checksumOffload |
| Non-zero if hardware interface support offloading checksum calculation. | |
| bool | bHaveSeenLink |
| True if a link has been present previously at least once. | |
| DhcpObject | dhcpClient {this} |
| DHCP client support. | |
| discover_servlet | disco_servlet {this} |
| The servlet that runs the NetBurner discovery server process. | |
| void(* | MCastLinkNotify )(InterfaceBlock *pBlock, bool bLink) |
| A funciton pointer called when link changes for multicast. | |
| IPADDR4 | previous_addr |
| Previous IPv4 address. | |
| IPADDR4 | previous_mask |
| Previous IPv4 mask. | |
| IPADDR4 | previous_gate |
| Previous IPv4 gateway. | |
| AutoIPClient | AutoClient |
| AutoIP client object for this interface. | |
Network interface configuration block class for interface control and configuration.
Network Interfaces are configured and controlled C++ InterfaceBlock objects. The InterfaceBlock contains variables and member functions for things such as:
| InterfaceBlock::InterfaceBlock | ( | const char * | name, |
| const char * | desc = NULL ) |
Constructor with interface name and description.
| name | Interface name. |
| desc | Interface description. If not used, default is null. |
| InterfaceBlock::InterfaceBlock | ( | config_obj & | owner, |
| const char * | name, | ||
| const char * | desc = NULL ) |
Constructor with config_obj owner, interface name and description.
| owner | Reference to config_obj owner of the interface |
| name | Interface name. |
| desc | Interface description. If not used, default is null. |
|
pure virtual |
Enable Multicast on this interface.
Calls registered interface multicast routine.
| macAddress | Multicast MAC address. |
| addAddress | True to add address/interface, false to remove it |
Implemented in NcmInterfaceBlock, and NcmInterfaceBlock.
|
virtual |
Returns the interface name network interface.
|
inline |
Returns the Interface Number of the network interface.
| void InterfaceBlock::InterfaceLinkChange | ( | bool | link | ) |
Change the link status of the network interface.
| link | Set link active status to true or false |
|
inline |
Returns true if this is the first interface in the interface list.
|
pure virtual |
Returns the link status of the network interface.
Implemented in NcmInterfaceBlock, and NcmInterfaceBlock.
|
pure virtual |
Returns the full or half link duplex of the network interface.
Implemented in NcmInterfaceBlock, and NcmInterfaceBlock.
|
pure virtual |
Returns the link speed of the network interface.
Implemented in NcmInterfaceBlock, and NcmInterfaceBlock.
| void InterfaceBlock::RegisterInterface | ( | ) |
Register a network interface with system.
InterfaceBlock member function to register a new network interface