Commit Graph

108 Commits

Author SHA1 Message Date
David Čermák
d2fe8bfd15 Merge branch 'experimental/mdns_with_sockets' into 'master'
mdns: Add optional networking layer on BSD socket

Closes IDF-1849

See merge request espressif/esp-idf!9857
2021-08-17 14:12:30 +00:00
David Cermak
9f17f586f4 esp_netif: Set default netif with lwip_netif
Make use of lwip_netif pointer for setting the default interface in lwip,
since the  is a generic pointer used in I/O functions wheras the former is always the  type.
More importantly the netif_handle could be set to another context ptr
used in I/O functions, as as for the SLIP netif.

This change fixes the issue of incorrect settings of a default interface
if any SLIP netif is involved.

Closes https://github.com/espressif/esp-idf/issues/7246
2021-08-17 19:10:49 +08:00
David Cermak
09f10f326a esp_netif: Add support for linux target as header only library 2021-08-17 18:39:40 +08:00
David Čermák
cd47ba03bc Merge branch 'bugfix/mdns_lwip_agnostic' into 'master'
mdns: Clean the main mdns module from lwip dependencies

See merge request espressif/esp-idf!14187
2021-07-07 11:58:18 +00:00
David Cermak
7cab3d48e6 esp_netif: IP Address: Add esp-ip addr copy API, IP init macros 2021-07-01 15:01:39 +02:00
David Cermak
d542edbb3d esp_netif: Fix dhcps state transitions
When the DHCP server is stopped before starting the netif,
it should remain stopped -- as per compatibility with previous tcpip_adapter behavior
2021-07-01 10:17:19 +02:00
yuanjm
56b9bebe41 esp_netif: Correct spelling mistakes 2021-06-25 14:52:34 +08:00
yuanjm
d93b3d304e slip: Fix the definition of cplusplus in the code 2021-06-25 14:51:24 +08:00
yuanjm
bda8cf0c14 esp_netif: Add CONFIG_PPP_SUPPORT and CONFIG_LWIP_SLIP_SUPPORT to sperate the code 2021-06-25 14:51:24 +08:00
liuhan
7d5ae1ee26 esp_netif: Add CONFIG_LWIP_DHCPS to sperate the code 2021-06-24 09:49:45 +08:00
Shu Chen
e470e7c4c3 Merge branch 'feature/ot-lwip-interface' into 'master'
openthread: add lwIP network interface

See merge request espressif/esp-idf!13188
2021-06-03 01:46:17 +00:00
Jiacheng Guo
52a68cb7fe openthread: integrate OpenThread network interface with esp_netif 2021-06-02 17:03:54 +08:00
David Čermák
4b7a7e559a Merge branch 'bugfix/esp_netif_list_match_improvement' into 'master'
esp-netif: Improve netif list operations (GitHub PR)

Closes IDFGH-5289

See merge request espressif/esp-idf!13636
2021-06-01 12:47:18 +00:00
David Cermak
8ae19ed332 esp_netif: Fix failing ppp_set_auth() due to wrong arg check
Closes https://github.com/espressif/esp-idf/issues/7047
2021-06-01 05:32:39 +00:00
David Cermak
c991af7ac5 esp_netif: Update the test to exercise netif list matching APIs 2021-05-21 09:44:08 +02:00
yuanjm
7256cfe5a4 ppp: Fix disable IPv6 will make esp_netif_lwip_ppp build fail
Closes https://github.com/espressif/esp-idf/issues/6935
2021-05-20 09:45:17 +00:00
Axel Lin
5209af379a esp-netif: Improve esp_netif_is_netif_listed and esp_netif_get_handle_from_ifkey
Each esp_netif_next_unsafe() call needs to iterate the s_head list.
It is inefficient with a do-while loop + esp_netif_next_unsafe() call.
Use SLIST_FOREACH instead to simplify the code and speed-up the matching.

While at it, also fix returning NULL from esp_netif_is_netif_listed().

Signed-off-by: Axel Lin <axel.lin@gmail.com>
2021-05-20 13:51:22 +08:00
David Čermák
2e4d5d8765 Merge branch 'feature/add_eth_lost_ip_event' into 'master'
event: Add IP_EVENT_ETH_LOST_IP event

Closes IDFGH-5198

See merge request espressif/esp-idf!13466
2021-05-10 07:27:16 +00:00
David Cermak
c4870f4d9e esp_netif/wifi: Add API to destroy default wifi-netif for sta/ap
Partially addresses https://github.com/espressif/esp-idf/issues/6950
2021-05-07 11:56:41 +00:00
yuanjm
922992b519 event: Add IP_EVENT_ETH_LOST_IP event
Closes https://github.com/espressif/esp-idf/issues/6971
2021-05-07 11:36:13 +08:00
Ivan Grokhotkov
4e73cff729 esp_netif: enable UBSAN in component test app 2021-04-22 23:33:47 +02:00
yuanjm
dd30222c46 esp_netif: Add CONFIG_LWIP_SLIP_SUPPORT to sperate slip component 2021-04-01 17:10:50 +08:00
yuanjm
da58235a0e components: Use CONFIG_LWIP_IPV6 to strip IPv6 function in components 2021-02-23 18:26:03 +08:00
David Cermak
cab1b3507a esp_netif: Add unit test to exercise default wifi setup/teardown cycle 2021-02-10 13:28:36 +00:00
Jiri Schiebel
d1356bca68 esp-netif: Added methods for conversion IP4/IP6 addresses from their string interpretation
Closes https://github.com/espressif/esp-idf/issues/5545
2021-02-02 16:07:32 +01:00
Marius Vikhammer
9c8e4fd4c5 C3: build and run unit tests
Enable building and running of unit tests in CI for C3 as well as fix
related compile errors

Also enables building of C3 test apps
2021-01-11 11:34:37 +08:00
Paweł pidpawel Kozubal
cf60ec0ffc lwip: Added support for configurable LwIP hooks
Added lwIP hooks which could be optionally overwritten in the
application code. These three options are provided in Kconfig:
* NONE: No hook support
* DEFAULT: Default implementation is provided. If IDF doesn't
have a specific hook implementation, an empty stub is provided, which
could be overwritten by strong implementation in application code.
* CUSTOM: Hooks are declared only to be implemented in application code.

Merges https://github.com/espressif/esp-idf/pull/6034
2020-11-26 12:02:00 +00:00
David Cermak
916d2f6f4c esp_netif: Added test for failing to set hostname 2020-11-20 10:06:53 +00:00
David Cermak
7c4d3fbf8b esp_netif: Fixed possible use of hostname pointer after its freed
When setting hostname using esp_netif_set_hostname_api() failed for some reason, the netif pointer might be freed while lwip pointer stil point to that location and could be used. Fixed by moving the freeing and string duplication to the block where lwip hostname is set.

Closes https://github.com/espressif/esp-idf/issues/6048
2020-11-20 10:06:53 +00:00
Fu Hanxi
ed6a30a9de CI: component_ut: fix esp_netif test path unmatch issue 2020-11-12 15:12:56 +08:00
Angus Gratton
66fb5a29bb Whitespace: Automated whitespace fixes (large commit)
Apply the pre-commit hook whitespace fixes to all files in the repo.

(Line endings, blank lines at end of file, trailing whitespace)
2020-11-11 07:36:35 +00:00
David Čermák
97ac37378f Merge branch 'bugfix/esp_netif_ppp_event_data' into 'master'
esp-netif: Fix PPP netif event posting to include esp_netif data

Closes IDFGH-4147

See merge request espressif/esp-idf!10958
2020-10-27 05:27:24 +08:00
David Čermák
25530d2247 Merge branch 'bugfix/slip_input_longer_u8' into 'master'
esp_netif: Fixed SLIP input to support size longer than 256

Closes IDFGH-4057

See merge request espressif/esp-idf!10959
2020-10-27 04:03:06 +08:00
Rob Connolly
a92ae03b1e esp_netif: Fixed SLIP input to support size longer than 256
Implement batch processing of incoming slip data.

Merges https://github.com/espressif/esp-idf/pull/5928
2020-10-26 17:53:17 +01:00
David Cermak
8a143fcf40 esp-netif: Fix PPP netif event posting to include esp_netif data
Closes https://github.com/espressif/esp-idf/issues/6009
2020-10-26 16:00:42 +00:00
Mahavir Jain
0fc4249dd5 esp_netif: initialize TCP ISN hook if enabled in configuration 2020-10-23 05:11:33 +00:00
xueyunfei
91fd587fb7 lwip/ipv6:ipv6 address get fail after wifi disconnect 2020-10-12 10:40:22 +08:00
cnlohr
507c08251e esp_netif: Enable use of the ESP-IDF with a non-LWIP (and non-BSD-style) IP stack.
Note: besides the esp-netif component, this commit also disables
net_sockets.c from mbedtls, which is one of the base components and uses BSD API (not specifically lwIP). This might be refactored to use CONFIG_SUPPORT_BSD_API instead of CONFIG_ESP_NETIF_TCPIP_LWIP
in the future.
It also disables smartconfig_ack.c and wifi_init.c from esp_wifi
component for referencing some lwIP config options (smartconfig_ack.c changes might be also
updated to check CONFIG_SUPPORT_BSD_API)

Merges https://github.com/espressif/esp-idf/pull/5856
2020-09-18 15:10:55 +02:00
Ivan Grokhotkov
00072fe2e2 Merge branch 'ci/standalone_unit_test_app' into 'master'
CI: add standalone unit test app for esp_netif

See merge request espressif/esp-idf!10102
2020-09-11 15:50:54 +08:00
Ivan Grokhotkov
b6467257b9 Merge branch 'feature/cmock_component' into 'master'
cmock as component replacing unity

See merge request espressif/esp-idf!9859
2020-09-10 16:06:20 +08:00
Fu Hanxi
edc7cc9c00 add component_ut in assign-test and target-test stage.
Add one template_test python file to get test case
2020-09-07 12:12:11 +08:00
Jakob Hasse
40d80b981a Fixed unity fixture for ESP32/S2
* Created compile switch for UNITY_MAIN
  since it was using exit() syscall leading to
  abort() on ESP
2020-09-04 17:37:47 +08:00
Ivan Grokhotkov
f789380e19 WIP/PoC: esp_netif UT as a test app 2020-09-04 17:37:47 +08:00
David Cermak
5dae28069f esp-netif: Fix SLIP interface to start with correct IPv6 addr
Merges https://github.com/espressif/esp-idf/pull/4985
2020-09-03 18:11:09 +00:00
Jakob Hasse
20c068ef3b cmock: added cmock as component
* changing dependencies from unity->cmock
* added component.mk and Makefile.projbuild
* ignore test dir in gen_esp_err_to_name.py
* added some brief introduction of CMock in IDF
2020-09-02 16:38:37 +08:00
liu zhifu
fa9a5c0be5 esp_wifi: optimize WiFi TX performance 2020-08-13 12:26:21 +08:00
David Cermak
1a0e7d81d8 esp_netif tests: Add manual DHCP state transision tests
Extended test cases for DHCP server and DHCP client state transitions to include also manual transitions using esp_netif_dhcps_start/stop() esp_netif_dhcpc_start/stop()
2020-07-29 11:50:27 +00:00
David Cermak
8cfeae15fd esp_netif: Remove restarting DHCP client and server if it has already been started
To be in line with previous behaviour in tcpip_adapter, do nothing and return appropriate error if the DHCP client/server has already been started
2020-07-29 11:50:27 +00:00
David Cermak
bb9a7356ac esp-netif: removing SLIP related events as the slip-modem set state synchronously 2020-07-15 15:46:46 +02:00
David Cermak
1a41545c3e esp-netif: SLIP interface refactor to isolate interface from drivers 2020-07-15 15:46:46 +02:00