Get interface's IP address information If the interface is up, IP information is read directly from the TCP/IP stack. If the interface is down, IP information is read from a copy kept in the ESP-NETIF instance
Get interface link-local IPv6 address If the specified interface is up and a preferred link-local IPv6 address has been created for the interface, return a copy of it.
Returns network stack specific implementation handle
Returns configured interface type for this esp-netif instance
Attaches esp_netif instance to the io driver handle Calling this function enables connecting specific esp_netif object with already initialized io driver to update esp_netif object with driver specific configuration (i.e. calls post_attach callback, which typically sets io driver callbacks to esp_netif instance and starts the driver)
Test if supplied interface is up or down
Gets media driver handle for this esp-netif instance
Get net interface index from network stack implementation
Destroys the esp_netif object
This function sets default routing netif based on priorities of all interfaces which are up
Passes the raw packets from communication media to the appropriate TCP/IP stack This function is called from the configured (peripheral) driver layer. The data are then forwarded as frames to the TCP/IP stack.
Iterates over list of interfaces without list locking. Returns first netif if NULL given as parameter Used for bulk search loops within TCPIP context, e.g. using esp_netif_tcpip_exec(), or if we're sure that the iteration is safe from our application perspective (e.g. no interface is removed between iterations)
Returns configured interface key for this esp-netif instance
Get all IPv6 addresses of the specified interface
Get net interface name from network stack implementation
Stop DHCP client (only if enabled in interface object)
Manual configuration of the default netif This API overrides the automatic configuration of the default interface based on the route_prio If the selected netif is set default using this API, no other interface could be set-default disregarding its route_prio number (unless the selected netif gets destroyed)
Set the mac address for the interface instance
Configures driver related options of esp_netif object
Start DHCP server (only if enabled in interface object)
Stop DHCP server (only if enabled in interface object)
Checks the netif description if it contains specified prefix. All netifs created within common connect component are prefixed with the module TAG, so it returns true if the specified netif is owned by this module
Set DNS Server information This function behaves differently if DHCP server or client is enabled If DHCP client is enabled, main and backup DNS servers will be updated automatically from the DHCP lease if the relevant DHCP options are set. Fallback DNS Server is never updated from the DHCP lease and is designed to be set via this API. If DHCP client is disabled, all DNS server types can be set via this API only. Note that LWIP stores DNS server information globally, not per interface, so the first parameter is unused in the default LWIP configuration. If CONFIG_ESP_NETIF_SET_DNS_PER_DEFAULT_NETIF=1 this API sets internal DNS server information per netif. It's also possible to set the global DNS server info by supplying esp_netif=NULL If DHCP server is enabled, the Main DNS Server setting is used by the DHCP server to provide a DNS Server option to DHCP clients (Wi-Fi stations). - The default Main DNS server is typically the IP of the DHCP server itself. - This function can override it by setting server type ESP_NETIF_DNS_MAIN. - Other DNS Server types are not supported for the DHCP server. - To propagate the DNS info to client, please stop the DHCP server before using this API.
Set interface's IP address information This function is mainly used to set a static IP on an interface. If the interface is up, the new IP information is set directly in the TCP/IP stack. The copy of IP information kept in the ESP-NETIF instance is also updated (this copy is returned if the IP is queried while the interface is still down.)
Outputs packets from the TCP/IP stack to the media to be transmitted This function gets called from network stack to output packets to IO driver.
Start DHCP client (only if enabled in interface object)
Get DNS Server information Return the currently configured DNS Server address for the specified interface and Server type. This may be result of a previous call to esp_netif_set_dns_info(). If the interface's DHCP client is enabled, the Main or Backup DNS Server may be set by the current DHCP lease. Note that LWIP stores DNS server information globally, not per interface, so the first parameter is unused in the default LWIP configuration. If CONFIG_ESP_NETIF_SET_DNS_PER_DEFAULT_NETIF=1 this API returns internally saved DNS server information per netif. It's also possible to ask for the global DNS server info by supplying esp_netif=NULL
Create interface link-local IPv6 address Cause the TCP/IP stack to create a link-local IPv6 address for the specified interface. This function also registers a callback for the specified interface, so that if the link-local address becomes verified as the preferred address then a SYSTEM_EVENT_GOT_IP6 event will be sent.
Get the mac address for the interface instance
Attaches wifi station interface to supplied netif
This function sets default netif no matter which implementation used @note: This function must be called from lwip thread
Enable NAPT on an interface
Creates mesh network interfaces based on default STA and AP, but without DHCP, this is to be enabled separately only on root node
Returns configured flags for this interface
Returns configured event for this esp-netif instance and supplied event type
Attaches wifi soft AP interface to supplied netif
Outputs packets from the TCP/IP stack to the media to be transmitted This function gets called from network stack to output packets to IO driver.
Check if supplied esp_netif handle is active, i.e. available within registered interfaces as it might have already been destroyed. Returns the supplied handle if active, nullptr otherwise
Allocate custom pbuf for supplied sp_netif
Set interface old IP information This function is called from the DHCP client (if enabled), before a new IP is set. It is also called from the default handlers for the SYSTEM_EVENT_STA_CONNECTED and SYSTEM_EVENT_ETH_CONNECTED events. Calling this function stores the previously configured IP, which can be used to determine if the IP changes in the future. If the interface is disconnected or down for too long, the "IP lost timer" will expire (after the configured interval) and set the old IP information to zero.
Populate IP addresses of clients connected to DHCP server listed by their MAC addresses
Cause the TCP/IP stack to add an IPv6 address to the interface
Cause the TCP/IP stack to remove an IPv6 address from the interface
Cause the TCP/IP stack to join a IPv6 multicast group
Cause the TCP/IP stack to leave a IPv6 multicast group
Get interface's old IP information Returns an "old" IP address previously stored for the interface when the valid IP changed. If the IP lost timer has expired (meaning the interface was down for longer than the configured interval) then the old IP information will be zero.
Set link-speed for the specified network interface
Cause the TCP/IP stack to start the ESP-NETIF instance interface
Cause the TCP/IP stack to stop a network interface defined as ESP-NETIF instance Causes TCP/IP stack to clean up this interface. This includes stopping the DHCP server or client, if they are started.
Cause the TCP/IP stack to bring up an interface This function is called automatically by default called from event handlers/actions
Cause the TCP/IP stack to shutdown an interface This function is called automatically by default called from event handlers/actions
Adds created interface to the list of netifs. This function doesn't lock the list, so you need to call esp_netif_list_lock/unlock manually before and after the call.
Removes interface to be destroyed from the list of netifs This function doesn't lock the list, so you need to call esp_netif_list_lock/unlock manually before and after the call.
Iterates over list of registered interfaces to check if supplied netif is listed
Create and destroy objects
Add a static entry to bridge forwarding database
Remove a static entry from bridge forwarding database
Add Ethernet port to the bridge netif glue
NAN App action handler for NAN Started event. Sets up other event handlers and initializes NAN App context @attention This API should be called in WIFI_EVENT_NAN_STARTED event handler
Disable NAPT on an interface.
Set or Get DHCP client option Get operations: * ESP_NETIF_IP_REQUEST_RETRY_TIME * ESP_NETIF_VENDOR_SPECIFIC_INFO -- only available if ESP_DHCP_DISABLE_VENDOR_CLASS_IDENTIFIER=n Set operations: * ESP_NETIF_IP_REQUEST_RETRY_TIME * ESP_NETIF_VENDOR_SPECIFIC_INFO -- only available if ESP_DHCP_DISABLE_VENDOR_CLASS_IDENTIFIER=n lwip layer creates its own copy of the supplied identifier. (the internal copy could be feed by calling dhcp_free_vendor_class_identifier())
Get interface global IPv6 address If the specified interface is up and a preferred global IPv6 address has been created for the interface, return a copy of it.
Get all preferred IPv6 addresses of the specified interface
Enables transmit/receive event reporting for a network interface. These functions enables transmit and receive events reporting for a given esp-netif instance. Event reporting can be used to track data transfer activity and trigger application-specific actions.
Disables transmit/receive event reporting for a network interface. These functions disables transmit and receive events reporting for a given esp-netif instance.
Set the hostname of an interface The configured hostname overrides the default configuration value CONFIG_LWIP_LOCAL_HOSTNAME. Please note that when the hostname is altered after interface started/connected the changes would only be reflected once the interface restarts/reconnects
Returns configured routing priority number
Iterates over list of interfaces. Returns first netif if NULL given as parameter
Sets the auth parameters for the supplied esp-netif.
Set PPP auth internal version (TCPIP context must be locked) This needs to be called withing lwIP context For params/return value description, please @refitem esp_netif_ppp_set_auth()
Add WiFi port to the bridge netif glue
Sets the backbone interface used for border routing.
Creates new PPP related structure This needs to be called withing lwIP context
Creates new PPP related structure This needs to be called withing lwIP context
Sets common parameters for the supplied esp-netif.
Gets parameters configured in the supplied esp-netif.