Currently, several example dependencies rely on the fact that all
registered components are added to the build, along with components
specified in common requirements. This results in longer build times
because even unused components must be built. Switch all examples to use
idf_minimal_build to compile only the components actually required by
the example.
Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
Currently, several examples do not explicitly state their component
dependencies, relying instead on the default behavior that includes all
registered components and commonly required ones in the build.
Explicitly adding component dependencies can reduce build time when
set(COMPONENTS main) is used.
Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
Fixes a potential null pointer dereference in `esp_netif` when PPP mode is enabled.
In the Ethernet event handler, `esp_netif_dhcps_start()` and `esp_netif_dhcps_stop()`
are now only called if `netif` is non-null (in provisioning mode when
the actual TCP/IP stack from IDF is used, in work mode the `netif` is
null, since the trafic is simply forwarded between wireless and wired
networks without TCP/IP stack involved)
Closes https://github.com/espressif/esp-idf/issues/14816
fix(examples): STA-ETH add the padding if the packet length is odd while updating udp checksum
Closes IDFGH-12490
See merge request espressif/esp-idf!30266
CI: add vlan example to ethernet patterns
Included a Pytest for the vlan_support example, which focuses on testing
the NAPT module in lwip by forwarding packets between different VLAN interfaces.
* Add support for runtime update of DHCP packets that contain HW
addresses (some routers wouldn't assing IP if the MAC was spoofed
only in Ethernet and ARP frames)
* Simplify Ethernet initialization using default eth-netif glue
* adds description about that it's not a bridge, but more like an 1:1
forwarder on L2
* add and describe mac spoofing for Ethernet interface
* describe virtual networking for USB-NCM interface
Logging in series of examples has misuse of "%d" instead of type-appropriate format specifiers.
Fix by changing "%d" to PRIxx macros corresponding to type.
Remove -Wno-format compile flag in those examples that are affected.