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
ryan
266be00254
esp-netif: Added esp_netif slip support, slip_modem component and example
...
Merges https://github.com/espressif/esp-idf/pull/4985
2020-07-15 15:46:46 +02:00
Anton Maklakov
a9c61dca4e
Merge branch 'bugfix/static_analysis_mem_issues' into 'master'
...
fix minor static analysis memory issues
See merge request espressif/esp-idf!8697
2020-05-22 15:08:20 +08:00
David Cermak
1183b95cc4
esp-netif: Fix compilation if ESP_GRATUITOUS_ARP not enabled
...
Closes https://github.com/espressif/esp-idf/issues/5294
2020-05-19 08:34:36 +00:00
David Cermak
8a45f074fc
esp-netif: Added API to get the underlying interface name
...
The interface name can be used in socket API, i.e. setsockopt(). The API esp_netif_get_netif_impl_name() shoudl be used to populate standard
interface structure struct ifreq.
2020-05-18 09:26:24 +02:00
David Cermak
06711c7c36
examples: common connect component to use both interfaces at once
2020-05-18 09:26:24 +02:00
David Cermak
6a47dc9275
esp-netif: fix memory allocation issues found by static analyser
2020-05-13 07:16:45 +02:00
David Cermak
c2053a8e65
esp_netif: fix default connect handler to check dhcpc return value
...
Closes https://github.com/espressif/esp-idf/issues/5184
2020-05-06 07:26:50 +02:00
David Cermak
acdadebfff
esp-netif: ppp netif to use netif_is_link_up() to update interface state
...
Closes https://github.com/espressif/esp-idf/issues/5069
2020-05-04 06:46:35 +00:00
David Cermak
2fce539d1e
esp-netif: use dhcp server netmask
...
Use the configured esp-netif netmask to update the dhcp struct when
starting the server or starting the netif itself.
Use the netmask in dhcps setters and getters.
2020-04-30 14:04:22 +00:00
Angus Gratton
d041512022
Merge branch 'feature/mesh_ip_network_example' into 'master'
...
ESP-MESH: IP internal network example
See merge request espressif/esp-idf!7724
2020-04-30 14:33:16 +08:00
David Cermak
bcee69ae06
esp-netif: Enable easier configuration of custom DHCP server address
2020-04-24 07:32:58 +02:00
xueyunfei
b2a3b2a4f4
fixbug for set dhcp time fail
2020-04-21 14:28:39 +08:00
David Cermak
6aabfd50d5
pppos_client: support for PPPAUTHTYPE_NONE
...
Closes https://github.com/espressif/esp-idf/issues/4616
Closes WIFI-1652
2020-04-14 21:46:07 +02:00
David Cermak
4fad90b0b1
esp-netif: reenabled dhcp unit tests for esp32s2
2020-04-01 07:06:13 +00:00
Angus Gratton
62426a6c90
Merge branch 'refactor/use_new_component_registration_functions' into 'master'
...
CMake: Use new component registration function
See merge request espressif/esp-idf!8068
2020-03-25 08:02:42 +08:00
David Cermak
56725fa678
esp-netif: support for ipv6 addr types and indices
2020-03-23 12:19:38 +00:00
Renz Bagaporo
3d0967a58a
test: declare requirements and include dirs private
2020-03-23 10:58:50 +08:00
Renz Bagaporo
4d9c573fb6
test, examples: use new component registration function
2020-03-23 10:58:48 +08:00
David Čermák
e7cd3b592e
Merge branch 'bugfix/esp_netif_ppp_setdefault_fix' into 'master'
...
ESP-NETIF: Set default interface for ppp netif must be called from lw_ip context
Closes IDFGH-2672
See merge request espressif/esp-idf!7555
2020-03-20 14:50:41 +08:00
xueyunfei
b1ca95ff22
bugfix for TCPv6 send ok when sta disconnect
2020-03-20 03:10:56 +00:00
David Cermak
fffdc1d789
esp-netif-ppp: support for setting ppp netif up and down
...
calling esp_netif_up() and esp_netif_down() was not supported if the
underlying netif wos of ppp type. Updated the code to enable setting
these interfaces up/down and registered actions in moden_netif glue for
connection/disconnection events to set the netif up/down.
2020-03-19 13:16:24 +00:00
David Cermak
e8ff22b5fb
esp-netif: set default interface for ppp netif must be called from lwip context
...
On update of any interface (set up/down) a routing preference is updated calling esp_netif_update_default_netif() that is called from
lwip context. But if the related netif was ppp type, the set_default api used user-mode, thus causing a dead lock.
Closes https://github.com/espressif/esp-idf/issues/4746
2020-03-19 13:16:24 +00:00
David Cermak
eae8eaa55f
esp-netif-ppp: support for posting GOT_IP event for IPv6
2020-03-05 18:46:48 +00:00
michael
2529eda907
ci: disable failed cases for s2 temporarily
2020-02-15 18:28:25 +08:00
David Cermak
3904be6b0f
ESP-NETIF: add unit test for get/set hostname API
2020-02-11 07:36:32 +01:00
David Cermak
7c8cbe02e4
ESP-NETIF: fix get/set hostname API to reflect user settings
...
On startup of the common interface (ethernet, wifi), the lwip netif hostname was assigned to confg value .
Fixed to assign to esp-netif hostname if it exists
Closes https://github.com/espressif/esp-idf/issues/4737
2020-02-11 07:35:12 +01:00
David Cermak
50588ff3f7
esp-compiler: add designated init macros to make esp configuration pattern viable under C++
2020-02-10 19:40:28 +01:00
David Cermak
d8da662dec
ESP-NETIF: Add unit test for additional API
2020-02-10 19:40:23 +01:00
David Cermak
02cdef086f
ESP-NETIF: easier creation for WiFi interfaces with custom parameters
...
Closes https://github.com/espressif/esp-idf/issues/4611
Closes IDFGH-2523
2020-02-10 14:22:07 +01:00
David Cermak
7d45bfda21
esp_netif_lwip_ppp: fix posting ip-event data
...
Closes https://github.com/espressif/esp-idf/issues/4634
2020-01-31 15:21:30 +01:00
Axel Lin
3f5d19016a
esp_netif_lwip_ppp: Allow esp_netif_ppp_set_auth set auth_type with NETIF_PPP_AUTHTYPE_NONE
...
The ppp_set_auth() is guard by #if PPP_AUTH_SUPPORT in lwIP, so
make it consistent. This also simplify the code a bit because the code
in #if PAP_SUPPORT guard and #if CHAP_SUPPORT guard are exactly the same.
Once NETIF_PPP_AUTHTYPE_NONE added to esp_netif_auth_type_t, it also allows
setting NETIF_PPP_AUTHTYPE_NONE with this change.
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Merges https://github.com/espressif/esp-idf/pull/4639
2020-01-31 15:19:09 +01:00
Axel Lin
57a56b55c0
esp_netif_ppp: Add NETIF_PPP_AUTHTYPE_NONE to esp_netif_auth_type_t
...
To allow setting auth_type to PPPAUTHTYPE_NONE, add NETIF_PPP_AUTHTYPE_NONE
to esp_netif_auth_type_t.
So even PAP/CHAP are enabled in lwIP, the application still can set
auth_type to PPPAUTHTYPE_NONE.
Signed-off-by: Axel Lin <axel.lin@gmail.com>
2020-01-31 13:41:50 +01:00
xiehang
c0148ef1e8
lwip: Enable IPv6 stateless address autoconfiguration
2020-01-14 07:15:26 +00:00
David Cermak
92087edbb8
esp_netif: fix esp_netif_get_dns_info() to copy the entire ip_addr_t
...
closes https://github.com/espressif/esp-idf/issues/4584
closes IDFGH-2472
2020-01-09 09:17:38 +01:00
David Cermak
b2c8ce8e2b
esp_netif: fixed initialization order of items in a struct
...
Closes https://github.com/espressif/esp-idf/issues/4389
Closes https://github.com/espressif/esp-idf/issues/4507
2020-01-02 17:16:47 +00:00
David Cermak
b61b927008
esp_netif: minor log message fix in dhcps cb
...
To make it more general, since the DHCP server does not necessarily runs only on softAP.
2019-12-17 09:02:51 +01:00
David Cermak
ac47c74ec4
esp_netif, docs: Added programmer's manual section
...
Also added guide for creating a custom network capable I/O driver
And added notes about default wifi interfaces and implications of using
default short-hand creation functions.
2019-12-17 09:02:51 +01:00
David Cermak
25913af2cc
pppos_client: udated example code to use esp-netif in PPP configuration
2019-12-16 17:34:10 +00:00
David Cermak
52ca3a917d
esp_netif: Support for PPPoS in esp_netif using lwip ppp client
2019-12-16 17:34:10 +00:00
morris
c3ee156df0
ethernet: move netif glue && add ref counter
...
1. move netif glue into single file
2. add reference counter for Ethernet driver
2019-11-27 10:36:32 +08:00
Jiang Jiang Jian
ddef4f9129
Merge branch 'feature/set_dhcp_timeout' into 'master'
...
Add feature for set dhcp time out
Closes WIFI-797 and IDF-1100
See merge request espressif/esp-idf!6370
2019-11-25 12:04:20 +08:00
David Cermak
c5a6bc9985
esp_netif: added missing C++ guards
...
Closes https://github.com/espressif/esp-idf/issues/4389
2019-11-22 10:31:06 +01:00
xueyunfei
2eea2dbeb4
Add feature for set dhcp time out
2019-11-22 17:24:16 +08:00
David Cermak
9f2a45f15f
esp_netif: add dhcp state transition unit tests for default wifi interfaces
2019-11-13 12:36:26 +01:00
David Cermak
f91d69efb2
esp_netif: rename DHCP flags for client and server
2019-11-13 12:36:26 +01:00
David Cermak
064bed710e
esp_netif: fix esp_netif_stop() to stop DHCP client if configured
2019-11-13 12:36:26 +01:00
David Cermak
7f5cda1b82
tcpip_adapter: updated tcpip_adapter compatablity layer to include all
...
public API and keep 100% backward compatibility
update build of tcpip adapter when ethernet disabled
2019-11-13 12:36:25 +01:00
David Cermak
7ef385963c
esp_netif: minor update of coding style based on clang-tidy
...
guidelines and fix some copyright notices
2019-11-13 12:36:25 +01:00
David Cermak
f839a1328c
esp_netif: added locking for netif list management, unit tests to use unique if_keys, updated comments
2019-11-13 12:36:25 +01:00
David Cermak
20add7da60
esp_netif: extract wifi_netif module as an abstraction to wifi universal interface defined by if handle and callback
2019-11-13 12:36:25 +01:00
David Cermak
359f6b3a21
esp_netif: add consistency checks for configs and interface key duplication
2019-11-13 12:36:25 +01:00
David Cermak
cf710a3cb1
esp_netif: include tcpip_adapter legacy header by default to provide *implicit* compatiblity
2019-11-13 12:36:25 +01:00
David Cermak
549ee87912
esp_netif: moving default netifs to wifi, moved sta_list to a separate header -- note will fail unit tests
2019-11-13 12:36:25 +01:00
David Cermak
d471266b46
esp_netif: documentation udpated and grouped the esp-netif API
...
structure. Updated rst documenentation and diagram of esp-netif
cooperation with other components.
2019-11-13 12:36:25 +01:00
David Cermak
eb94d87935
esp_netif: address failures on tcpip-task ipc call, deinit lwip netif and ip address issues
2019-11-13 12:36:25 +01:00
David Cermak
3a19bf055d
esp_netif and examples: using wifi driver handle, update examples and tests to pass the CI
2019-11-13 12:36:25 +01:00
David Cermak
ba13275c6b
esp_netif: update default DHCP IP addresses to be in line with old interface, added loopback implementation, explicit esp-netif init, sanity checks for parameters added
2019-11-13 12:36:25 +01:00
David Cermak
ffe043b1a8
esp_netif: Introduction of esp-netif component as a replacement of tcpip_adpter
...
- provides object oriented access to network intefaces
- not limited to default netifs
- more generic abstraction to network input output functions
- event handler registration removed from component responsibility
- backward compatibility layer for legacy tcpip_apapter APIs
Closes IDF-39
2019-11-13 12:36:25 +01:00