Representation of a stack's view of an interface. More...
#include <OnboardNetworkStack.h>
Public Member Functions | |
virtual nsapi_error_t | set_ip_address (const char *ip, const char *netmask, const char *gw, uint8_t ipv6_flag) |
Set IP address. More... | |
virtual nsapi_error_t | bringup (bool dhcp, const char *ip, const char *netmask, const char *gw, nsapi_ip_stack_t stack=DEFAULT_STACK, bool blocking=true)=0 |
Connect the interface to the network. More... | |
virtual nsapi_error_t | bringdown ()=0 |
Disconnect interface from the network. More... | |
virtual void | attach (mbed::Callback< void(nsapi_event_t, intptr_t)> status_cb)=0 |
Register callback for status reporting. More... | |
virtual nsapi_connection_status_t | get_connection_status () const =0 |
Get the connection status. More... | |
virtual char * | get_interface_name (char *buf) |
Returns interface name. More... | |
virtual char * | get_mac_address (char *buf, nsapi_size_t buflen)=0 |
Return MAC address of the network interface. More... | |
virtual nsapi_error_t | get_ip_address (SocketAddress *address)=0 |
Get the local IP address. More... | |
virtual nsapi_error_t | get_ipv6_link_local_address (SocketAddress *address) |
Get the IPv6 link local address. More... | |
virtual nsapi_error_t | get_netmask (SocketAddress *address)=0 |
virtual nsapi_error_t | get_gateway (SocketAddress *address)=0 |
Representation of a stack's view of an interface.
Provides facilities required by a driver to implement the application NetworkInterface API.
Definition at line 50 of file OnboardNetworkStack.h.
|
pure virtual |
Register callback for status reporting.
The specified status callback function will be called on status changes on the network. The parameters on the callback are the event type and event-type dependent reason parameter.
status_cb | The callback for status changes |
Implemented in LWIP::Interface, EmacTestNetworkStack::Interface, and Nanostack::Interface.
|
pure virtual |
Disconnect interface from the network.
After this call the network interface is inactive, to use it again user needs to call
bringup again.
Implemented in LWIP::Interface, EmacTestNetworkStack::Interface, Nanostack::EthernetInterface, and Nanostack::PPPInterface.
|
pure virtual |
Connect the interface to the network.
Sets up a connection on specified network interface, using DHCP or provided network details. If the dhcp is set to true all the remaining parameters are ignored.
dhcp | true if the network details should be acquired using DHCP |
ip | IP address to be used for the interface as "W:X:Y:Z" or NULL |
netmask | Net mask to be used for the interface as "W:X:Y:Z" or NULL |
gw | Gateway address to be used for the interface as "W:X:Y:Z" or NULL |
stack | Allow manual selection of IPv4 and/or IPv6. |
blocking | Specify whether bringup blocks for connection completion. |
Implemented in LWIP::Interface, EmacTestNetworkStack::Interface, Nanostack::EthernetInterface, and Nanostack::PPPInterface.
|
pure virtual |
Get the connection status.
Implemented in LWIP::Interface, EmacTestNetworkStack::Interface, and Nanostack::Interface.
|
pure virtual |
Implemented in LWIP::Interface, EmacTestNetworkStack::Interface, and Nanostack::Interface.
|
virtual |
Returns interface name.
Reimplemented in LWIP::Interface, Nanostack::MeshInterface, Nanostack::PPPInterface, and Nanostack::EthernetInterface.
Definition at line 125 of file OnboardNetworkStack.h.
|
pure virtual |
Get the local IP address.
address | SocketAddress representation of the local IP address |
NSAPI_ERROR_OK | on success |
NSAPI_ERROR_UNSUPPORTED | if this feature is not supported |
NSAPI_ERROR_PARAMETER | if the provided pointer is invalid |
NSAPI_ERROR_NO_ADDRESS | if the address cannot be obtained from stack |
Implemented in LWIP::Interface, EmacTestNetworkStack::Interface, and Nanostack::Interface.
|
virtual |
Get the IPv6 link local address.
address | SocketAddress representation of the link local IPv6 address |
NSAPI_ERROR_OK | on success |
NSAPI_ERROR_UNSUPPORTED | if this feature is not supported |
NSAPI_ERROR_PARAMETER | if the provided pointer is invalid |
Reimplemented in LWIP::Interface.
Definition at line 140 of file OnboardNetworkStack.h.
|
pure virtual |
Return MAC address of the network interface.
Implemented in LWIP::Interface, EmacTestNetworkStack::Interface, Nanostack::EthernetInterface, and Nanostack::Interface.
|
pure virtual |
Implemented in LWIP::Interface, EmacTestNetworkStack::Interface, and Nanostack::Interface.
|
virtual |
Set IP address.
bringup() can only take one IP address and in dual stack case another IP address can be set using this function.
Must be called before bringup().
ip | IP address to be used for the interface as "W:X:Y:Z" or NULL |
netmask | Net mask to be used for the interface as "W:X:Y:Z" or NULL |
gw | Gateway address to be used for the interface as "W:X:Y:Z" or NULL |
ipv6_flag | Provide this flag for IPv6 state flag override. For example, you can set IP6_ADDR_PREFERRED. For IPv4, this value will be ignored. |
Reimplemented in LWIP::Interface.
Definition at line 69 of file OnboardNetworkStack.h.