Renz Christian Bagaporo
ffec9d4947
components: update with build system changes
2019-05-13 19:59:17 +08:00
xiehang
403f588fd0
Change the default value of TCP_MSS to 1440 and TCP_MSS Range : [536 1460]
2019-05-09 19:49:59 +08:00
xiehang
67dd55eae8
Change the default value of TCP_MSS to 1440 and TCP_MSS Range : [576 1460]
2019-05-09 17:59:25 +08:00
Ivan Grokhotkov
89798b328b
Merge branch 'bugfix/select_init_sem' into 'master'
...
VFS: Allocate socket select semaphore outside ISR
See merge request idf/esp-idf!4591
2019-04-25 19:10:08 +08:00
Michael (XIAO Xufeng)
562af8f65e
global: move the soc component out of the common list
...
This MR removes the common dependency from every IDF components to the SOC component.
Currently, in the ``idf_functions.cmake`` script, we include the header path of SOC component by default for all components.
But for better code organization (or maybe also benifits to the compiling speed), we may remove the dependency to SOC components for most components except the driver and kernel related components.
In CMAKE, we have two kinds of header visibilities (set by include path visibility):
(Assume component A --(depends on)--> B, B is the current component)
1. public (``COMPONENT_ADD_INCLUDEDIRS``): means this path is visible to other depending components (A) (visible to A and B)
2. private (``COMPONENT_PRIV_INCLUDEDIRS``): means this path is only visible to source files inside the component (visible to B only)
and we have two kinds of depending ways:
(Assume component A --(depends on)--> B --(depends on)--> C, B is the current component)
1. public (```COMPONENT_REQUIRES```): means B can access to public include path of C. All other components rely on you (A) will also be available for the public headers. (visible to A, B)
2. private (``COMPONENT_PRIV_REQUIRES``): means B can access to public include path of C, but don't propagate this relation to other components (A). (visible to B)
1. remove the common requirement in ``idf_functions.cmake``, this makes the SOC components invisible to all other components by default.
2. if a component (for example, DRIVER) really needs the dependency to SOC, add a private dependency to SOC for it.
3. some other components that don't really depends on the SOC may still meet some errors saying "can't find header soc/...", this is because it's depended component (DRIVER) incorrectly include the header of SOC in its public headers. Moving all this kind of #include into source files, or private headers
4. Fix the include requirements for some file which miss sufficient #include directives. (Previously they include some headers by the long long long header include link)
This is a breaking change. Previous code may depends on the long include chain.
You may need to include the following headers for some files after this commit:
- soc/soc.h
- soc/soc_memory_layout.h
- driver/gpio.h
- esp_sleep.h
The major broken include chain includes:
1. esp_system.h no longer includes esp_sleep.h. The latter includes driver/gpio.h and driver/touch_pad.h.
2. ets_sys.h no longer includes soc/soc.h
3. freertos/portmacro.h no longer includes soc/soc_memory_layout.h
some peripheral headers no longer includes their hw related headers, e.g. rom/gpio.h no longer includes soc/gpio_pins.h and soc/gpio_reg.h
BREAKING CHANGE
2019-04-16 13:21:15 +08:00
Konstantin Kondrashov
7e5be1b58c
sntp/lwip: Add some modes for time synchronization
...
Closes: IDF-236
Closes: https://github.com/espressif/esp-idf/pull/1668
2019-04-15 18:11:47 +08:00
Renz Christian Bagaporo
90ee405afd
ldgen: update component linker fragment files
2019-04-04 15:57:34 +08:00
morris
79bb5de426
derive esp_wifi from esp32 component
2019-04-01 20:04:52 +08:00
morris
dbdb299bb1
create xtensa component
...
1. move xtensa specific files out of esp32 component
2. merge xtensa-debug-module component into xtensa
2019-03-27 20:24:28 +08:00
Roland Dobai
2df9fb057d
VFS: Allocate socket select semaphore outside ISR
2019-03-22 13:47:32 +00:00
David Cermak
bc60bbbeaf
fuzzer tests: update of mdns and lwip host compilation for fuzzer testing
...
Closes IDF-540
2019-03-22 11:37:26 +01:00
Ivan Grokhotkov
57e1b5dad8
Merge branch 'bugfix/newlib_fcntl_r_signature' into 'master'
...
vfs: change fcntl argument to int (instead of va_list), add weak fcntl
See merge request idf/esp-idf!4549
2019-03-21 18:30:34 +08:00
Ivan Grokhotkov
1d0bffb20a
lwip, wpa_supplicant: use endianness macros from libc if possible
2019-03-19 22:15:32 +08:00
Ivan Grokhotkov
48b1433772
vfs: change fcntl argument to int (instead of va_list), add weak fcntl
2019-03-19 21:44:17 +08:00
zhangyanjiao
fa2998d70b
dhcpserver: suppress send_nak debug output
...
Closes https://github.com/espressif/esp-idf/issues/2924
2019-03-14 14:00:35 +08:00
zhangyanjiao
27cc0d1f91
modify the behavior for dhcpserver and tcpip_adapter:
...
1. dhcp_server: suppress send_offer debug output
2. tcpip_adapter: zero-initialize system_event_t structures
3. tcpip_adapter: pass client IP address along with SYSTEM_EVENT_AP_STAIPASSIGNED
Closes https://github.com/espressif/esp-idf/issues/2924
Closes https://github.com/espressif/esp-idf/issues/2949
2019-03-11 12:11:05 +08:00
xiehang
b88b9f4e03
fix the bug in auto Ip memory leak
...
Closes https://jira.espressif.com:8443/browse/WIFI-266
2019-03-06 14:44:06 +08:00
morris
302ca0022f
lwip: add linker fragment
...
Add linker fragment file for lwip component.
2019-02-14 12:42:06 +08:00
Roland Dobai
37126d3451
Correct Kconfigs according to the coding style
2019-01-29 13:37:01 +01:00
morris
2e1f98f8f5
modem: support modem facility and PPPoS
...
1. add support for ESP32 DTE
2. add support for SIM800/BG96 DCE
3. add PPPoS setup procedure
4. add support for SMS
5. add mqtt example after PPP connection established
2019-01-23 18:53:32 +08:00
MartinValik
e3428adf87
Added Cmake support for dhcp_state
2019-01-10 07:51:54 +00:00
Liu Zhi Fu
6933c103e5
lwip: fix mbox thread-safe issue
...
Fix a mbox free thread-safe issue that can lead to crash in sys_arch_mbox_fetch.
2019-01-07 13:38:11 +08:00
Xia Xiaotian
c03f84cecf
add hostname option in dhcp discover
...
Hostname option has been removed from dhcp discover since IDFv3.2.
But it remains in dhcp request due to which ESP32 can not get IPv4 address
from some APs. Re-add hostname option to dhcp discover to solve this issue.
2018-12-13 07:05:46 +00:00
Jiang Jiang Jian
bbdcff1f45
Merge branch 'bugfix/tw27096_fix_lwip_mbox_free_crash' into 'master'
...
fix the crash bug caused by sys_mbox_free
See merge request idf/esp-idf!3654
2018-11-15 10:31:35 +08:00
morris
5fccb73f86
ethernetif: fix potential memory leak
...
1. If L2_TO_L3_RX_BUF_MODE is not selected, we must assign l2_owner explictly before we call pbuf_free.
2. free intr resource in esp_eth_deinit
Closes https://github.com/espressif/esp-idf/issues/2670
2018-11-13 10:11:48 +08:00
Liu Zhi Fu
4fe3673f35
lwip: fix crash caused by sys_mbox_free
...
Fix lwip crashed bug caused by sys_mbox_free()
2018-11-11 12:15:51 +08:00
Peter Meerwald-Stadler
6a197d305f
Fix some typos related to ethernet documentation and Kconfig. Closes https://github.com/espressif/esp-idf/pull/2642
2018-10-28 21:12:09 +01:00
Jiang Jiang Jian
129d32772e
Merge branch 'feature/add_ping_packet_len_and_QoS' into 'master'
...
ping: add length and QoS
See merge request idf/esp-idf!3379
2018-10-19 15:29:58 +08:00
zhangyanjiao
32f3972284
add ping length and QoS
2018-10-17 09:39:27 +00:00
zhangyanjiao
e3322bde6f
fix the compile bug for autoip
2018-10-17 09:32:08 +00:00
David Cermak
67153be14f
lwip: updated fuzzer tests to be compatible with new lwip module
2018-10-11 08:05:14 +02:00
Jiang Jiang Jian
83d4081fba
Merge branch 'bugfix/fix_close_socket_crash_bug' into 'master'
...
lwip: fix the crash when close socket
See merge request idf/esp-idf!3384
2018-10-08 21:23:57 +08:00
zhangyanjiao
54b431f2a8
lwip: fix the crash when close socket
2018-09-27 17:35:40 +08:00
Ivan Grokhotkov
6baf743212
Merge branch 'bugfix/lwip_compat_headers' into 'master'
...
lwip: add compatibility headers for sntp.h and esp_ping.h
See merge request idf/esp-idf!3231
2018-09-27 11:21:37 +08:00
Jiang Jiang Jian
da3c6220a5
Merge branch 'bugfix/IPv6_TCP_connection_fail' into 'master'
...
lwip: fix the bug that IPv6 TCP connection fail
See merge request idf/esp-idf!3331
2018-09-23 08:39:34 +08:00
Roland Dobai
bf443a763f
tools: Support overwrite of includes for gen_esp_err_to_name.py
...
gen_esp_err_to_name.py includes files like
components/lwip/include/apps/esp_ping.h as "apps/esp_ping.h" because all
subdirectories of "include" are used. If "components/lwip/include/apps"
is in the path of the compiler instead of "components/lwip/include" then
include "apps/esp_ping.h" will fail. This fix allows to process lines
like:
'// gen_esp_err_to_name.py: some text "esp_ping.h" some text'
in header files for overwriting the include.
2018-09-21 14:09:37 +08:00
Ivan Grokhotkov
f8750eb58d
lwip: add compatibility headers for sntp.h and esp_ping.h
...
Before LwIP was moved into a submodule, sntp and esp_ping were
available as the following includes:
#include "apps/sntp/sntp.h"
#include "esp_ping.h"
This commit makes header files available at the old location, and adds
a deprecation warning for sntp.h.
Closes https://github.com/espressif/esp-idf/issues/2392
2018-09-21 14:09:37 +08:00
Ivan Grokhotkov
2e6e87816c
Merge branch 'feature/crosstool_backport' into 'master'
...
Backport of work of gcc8 toolchain to v3
See merge request idf/esp-idf!3154
2018-09-21 14:07:41 +08:00
zhangyanjiao
e7d6c861b5
lwip: fix the bug that IPv6 TCP connection fail
...
The lwip code didn't create an new mld group when netif is up,
this will lead to the server can't find the matching netif when
receiving NS(neighbor solicitation) packet
2018-09-21 10:17:20 +08:00
Anton Maklakov
d4cbfd34cc
cmake: silence some warnings in coap, bt, expat, libsodium, lwip and examples/bluetooth
2018-09-20 18:53:15 +08:00
Anton Maklakov
3471d369f9
lwip: silence uninitialized and fallthrough warnings
2018-09-20 18:53:15 +08:00
Anton Maklakov
9a55557ad8
build system: Add a compatible old GCC flag
2018-09-20 18:53:14 +08:00
Jiang Jiang Jian
d68df94d2b
Merge branch 'bugfix/fix_the_bug_create_socket_fail' into 'master'
...
LWIP: fix the bug that failed to create socket
See merge request idf/esp-idf!3300
2018-09-20 18:43:58 +08:00
morris
20b7f0ec87
ethernet: fix infinite loop when init phy or reset mac
...
1. fix infinite loop problem when init phy device
2. fix infinite loop problem when reset mac
3. fix little bugs in ethernetif_init
4. fix incompatible return value between lwip and esp-idf
Closes https://github.com/espressif/esp-idf/issues/2331
Closes https://github.com/espressif/esp-idf/issues/2141
2018-09-20 10:09:38 +08:00
zhangyanjiao
f2d3efd875
lwip: fix the bug that failed to create socket
...
Closes: https://github.com/espressif/esp-idf/issues/2403
https://github.com/espressif/esp-idf/issues/2414
2018-09-19 09:44:28 +00:00
Ivan Grokhotkov
5d1ccb9501
lwip: allow setting LwIP tasks affinity via sdkconfig
...
In some cases applications need to ensure that WiFi/BT related tasks
run on CPU1. This option can be used to set task affinity in such case.
https://github.com/espressif/esp-idf/issues/2233#issuecomment-409220381
2018-09-17 18:17:52 +08:00
Ivan Grokhotkov
eea49d250a
Merge branch 'feature/dhcp_skip_discovery' into 'master'
...
DHCP restore last ip and skip discovery
See merge request idf/esp-idf!3132
2018-09-17 12:27:56 +08:00
MartinValik
2e79baa1db
lwip: DHCP restore last IP
...
Closes https://github.com/espressif/esp-idf/issues/799
2018-09-17 11:11:25 +08:00
morris
3063a62e3e
ethernet: fix some bugs in ethernet driver
...
1. create a new pbuf to squash linked pbuf
2. optimize emac driver by adding ESP_IRAM_ATTR
3. remove duplicated function declare in esp_eth.h
4. remove duplicated code in emac_setup_tx_desc
5. disable Promiscuous mode
2018-09-17 10:12:46 +08:00
Jiang Jiang Jian
518942ec61
Merge branch 'bugfix/tw24694_dns_request_no_reply' into 'master'
...
lwip: add code for sending gratuitous ARP periodically
See merge request idf/esp-idf!3241
2018-09-16 15:18:32 +08:00
Angus Gratton
61835faed1
Merge branch 'bugfix/tcpip_stack_size_default' into 'master'
...
Default stack size for TCPIP task increased to avoid stack overflow.
See merge request idf/esp-idf!3258
2018-09-14 12:23:35 +08:00
Dmitry
2ff3f8b0c8
Stack size for TCPIP task increased from 2048 to 3072.
2018-09-13 12:38:56 +03:00
Renz Christian Bagaporo
944014f9f2
cmake: fix source list issues
2018-09-13 08:56:59 +08:00
zhangyanjiao
237cc88b9f
lwip: add code for sending gratuitous ARP periodically
2018-09-11 14:36:42 +08:00
Renz Christian Bagaporo
d9939cedd9
cmake: make main a component again
2018-09-11 09:44:12 +08:00
Angus Gratton
deb46b415f
lwip: Re-add CONFIG_PPP_SUPPORT check, remove redundant CFLAGS
2018-09-06 20:23:20 +08:00
Angus Gratton
cff2ef695a
Merge branch 'master' into feature/cmake
2018-09-06 20:23:04 +08:00
Zhang Yan Jiao
3578fe39e0
Feature/sync lwip as submodule
2018-09-06 19:43:08 +08:00
Angus Gratton
a9c4ed7139
Merge branch 'master' into feature/cmake
2018-08-30 18:51:01 +08:00
Angus Gratton
414b84c041
Merge branch 'feature/ci_fuzzer_tests_lwip' into 'master'
...
ci jobs running fuzz tests on dns, dhcp, dhcps + removed unnecessary references (libexpat)
See merge request idf/esp-idf!2866
2018-08-27 16:25:21 +08:00
David Cermak
882ca87442
lwip: removed ASSERT in dhcp as the error might occur in runtime if packet is altered
2018-08-22 12:13:34 +02:00
David Cermak
ebebda9604
lwip: supported ci jobs running fuzz tests on dns, dhcp, dhcps
2018-08-22 12:13:20 +02:00
Angus Gratton
ff2404a272
Merge branch 'master' into feature/cmake
2018-08-16 17:14:17 +10:00
David Cermak
1ef13c524c
asio: initial idf port of asio library without ssl
2018-07-30 06:28:43 +00:00
David Cermak
eee34ddd91
lwip fix for udp receivefrom
2018-07-30 06:28:43 +00:00
zhangyanjiao
d90f8c06c2
changes for timers
2018-07-17 16:46:53 +08:00
Jiang Jiang Jian
70f3933db1
Merge branch 'bugfix/tw23835_add_source_ip_route_for_unicast' into 'master'
...
lwip: add source ip based route for unicast packet
See merge request idf/esp-idf!2757
2018-07-16 17:01:16 +08:00
Jiang Jiang Jian
a22d6607f8
Merge branch 'bugfix/autoip_compilation' into 'master'
...
LWIP AutoIP Compilation Fixed by defining IP_IS_V4_VAL()
See merge request idf/esp-idf!2758
2018-07-15 15:19:11 +08:00
Piyush Shah
fd8a7666c8
LWIP AutoIP Compilation Fixed by defining IP_IS_V4_VAL()
2018-07-13 15:04:39 +05:30
Liu Zhi Fu
2e1427a239
lwip: add source ip based route for unicast packet
...
Add source IP based route for unicast packets forwarding.
2018-07-13 12:35:17 +08:00
Angus Gratton
a67d5d89e0
Replace all DOS line endings with Unix
...
Command run was:
git ls-tree -r HEAD --name-only | xargs dos2unix
2018-07-12 19:10:37 +08:00
Jiang Jiang Jian
9d830a6f7c
Merge branch 'bugfix/tw23667_tcp_pcb_purge_assert' into 'master'
...
lwip: fix the assertion in tcp_pcb_purge()
See merge request idf/esp-idf!2657
2018-07-10 10:16:47 +08:00
Jiang Jiang Jian
6bf435217e
Merge branch 'bugfix/disable_lwip_trust_ip_by_default' into 'master'
...
lwip: disable ETHARP_TRUST_IP_MAC by default
See merge request idf/esp-idf!2652
2018-07-09 10:03:30 +08:00
Liu Zhi Fu
49c236d613
lwip: fix the assertion in tcp_pcb_purge()
...
Fix the assertion in tcp_pcb_purge().
2018-07-05 14:29:03 +08:00
Liu Zhi Fu
c84a2b9027
lwip: disable ETHARP_TRUST_IP_MAC by default
...
Disable ETHARP_TRUST_IP_MAC by default because:
1. The LAN peer may not be trustful
2. The LAN peer may has problem to update its ARP entry
2018-07-02 13:38:29 +08:00
Angus Gratton
df816f4940
lwip: Fix leak when accept() fails due to max socket limit
...
As reported https://esp32.com/viewtopic.php?f=14&t=6171
event_callback() in sockets.c calls conn->socket-- to register
activity on a netconn which may not have any socket yet,
so any socket value < 0 indicates "no controlling socket"
for the netconn.
2018-06-21 15:22:48 +10:00
zhangyanjiao
b5f4bf922f
fix the bug that TCP connections don't abort when IP changed
2018-06-14 16:56:39 +08:00
zhangyanjiao
1bab62a6d6
modify dhcp offer MTU to 1500
2018-06-07 10:03:26 +08:00
Liu Zhi Fu
6cc95809fb
lwip: fix tcp_pcb_purge assert
...
Remove the assert in tcp_pcb_purge()
2018-06-06 10:25:01 +08:00
Angus Gratton
6b9784cc45
Merge branch 'master' into feature/cmake_update
2018-05-31 14:46:23 +10:00
Ivan Grokhotkov
ddff375bab
Merge branch 'feature/ci_fail_on_executable_files' into 'master'
...
CI: check source files for executable flag
See merge request idf/esp-idf!2463
2018-05-30 11:41:06 +08:00
Ivan Grokhotkov
4ea2cab208
Merge branch 'cermak_dhcpserver_fuzzer_test' into 'master'
...
LWIP_Fuzzer: Added AFL tests for lwip dhcpserver, client and dns
See merge request idf/esp-idf!2399
2018-05-29 22:28:43 +08:00
Ivan Grokhotkov
cb649e452f
remove executable permission from source files
2018-05-29 20:07:45 +08:00
Nicola Lunghi
2f433e4342
netif require vfs
2018-05-29 16:34:45 +10:00
Roland Dobai
e86738205d
Fix redefinition of select() on platforms where ESP_PLATFORM is discarded
...
Ref: https://github.com/espressif/esp-idf/issues/1987
2018-05-25 13:37:43 +00:00
Roland Dobai
004bf84d8c
VFS: Optionally disable the VFS implementation of select()
...
This allows to temporarily resolve issues like
https://github.com/espressif/esp-idf/issues/1987
while bugs are fixed in the VFS implementation of select().
2018-05-23 10:14:16 +02:00
zhangyanjiao
3f031cdd9d
add event SYSTEM_EVENT_AP_STAIPASSIGNED
2018-05-19 13:14:12 +08:00
David Cermak
bb25d0a348
DnsFuzzer: Added fuzzer test for exercising lwip/dns receiving DNS responses
2018-05-18 15:54:08 +02:00
Roland Dobai
18e83bcd53
Allow VFS file descriptors in select()
2018-05-18 08:06:33 +02:00
David Cermak
5ecf717e40
DhcpFuzzer: dhcp client addded
2018-05-16 14:52:42 +02:00
David Cermak
3a6d256d3e
DhcpFuzzer: Added AFL test for dhcpserver with sample packets
2018-05-14 15:03:37 +02:00
Jiang Jiang Jian
41228c83c7
Merge branch 'bugfix/dhcp_server_max_limit' into 'master'
...
dhcp/dhcpserver Fix max station limit check in dhcp server
See merge request idf/esp-idf!2298
2018-05-11 15:50:38 +08:00
Roland Dobai
5129bca67c
VFS: Use smaller numbers as file descriptors
2018-05-07 09:01:56 +02:00
Angus Gratton
381be65472
cmake: Build all examples in CI
...
Includes some fixes for compile errors/warnings in examples.
2018-04-30 10:18:33 +10:00
Angus Gratton
1cb5712463
cmake: Add component dependency support
...
Components should set the COMPONENT_REQUIRES & COMPONENT_PRIVATE_REQUIRES variables to define their
requirements.
2018-04-30 09:59:20 +10:00
Angus Gratton
88df8fd293
cmake: Use cmake_lint project, tidy up all CMake source files
2018-04-30 09:59:20 +10:00
Angus Gratton
9f8cdd3572
cmake: Add "Preview release" getting start guide & build system documentation
2018-04-30 09:59:20 +10:00
Angus Gratton
c671a0c3eb
build system: Initial cmake support, work in progress
2018-04-30 09:59:20 +10:00
Sagar Bijwe
21584827b3
dhcp/dhcpserver Fix max station limit check in dhcp server
...
Currently when MAX_STATION limit in DHCP config is set to N, dhcp server
issues only N-1 IP addresses. This is problematic from customer
perspective if both SoftAP MAX_STATION and DHCP MAX_STATION limit is set
to same value. With this change DHCP server can issue N addresses that
is inline with the set limit.
Closes TW<20556>
2018-04-24 17:36:55 +05:30
Ivan Grokhotkov
6185e722c3
Revert "Merge branch 'feature/vfs_select' into 'master'"
...
This reverts merge request !2074
2018-04-20 11:51:41 +08:00
Roland Dobai
6852d653bd
Allow VFS file descriptors in select()
2018-04-17 11:25:30 +02:00
Xia Xiaotian
e727582180
Fix two WiFi and LWIP typos
...
1. close github issue: https://github.com/espressif/esp-idf/issues/1792
2. close github issue: https://github.com/espressif/esp-idf/issues/1781
2018-04-05 11:46:42 +08:00
Roland Dobai
7c4b3d50f8
Make error codes globally unique
2018-03-27 08:12:54 +02:00
Jiang Jiang Jian
1d49c0953e
Merge branch 'bugfix/close_socket_when_tcp_connecting' into 'master'
...
Close socket request will abort tcp write/connect
See merge request idf/esp-idf!1687
2018-03-08 20:34:40 +08:00
Angus Gratton
aedb807a02
Merge branch 'bugfix/esp_ping_ms_pr1638' into 'master'
...
esp_ping - Document that timeout units are in milliseconds
See merge request idf/esp-idf!1968
2018-02-26 08:00:44 +08:00
Piyush Shah
6dbb040890
FD_ZERO: Fix a compilation warning
...
Definition of memset is not found if string.h is not included anywhere
Signed-off-by: Piyush Shah <piyush@espressif.com>
2018-02-22 14:10:04 +05:30
Chris Morgan
86bf8798b2
esp_ping - Document that timeout units are in milliseconds
...
Remove 1000 multiplier from esp_ping_set_target() parameters that define time
2018-02-18 18:47:46 -05:00
Roland Dobai
f44cbe9033
Change ESP_ERR_PING_BASE because of collision with ESP_ERR_TCPIP_ADAPTER_BASE
2018-02-06 12:34:12 +01:00
Liu Zhi Fu
2242bf9b37
lwip/esp32/examples: wifi throughput optimizations
...
1. Put some lwip udp rx/tx relating functions to IRAM
2. Put some wifi rx/tx relating functions to IRAMa
3. Reduce wifi dynamic malloc from 4 to 1 for each ebuf
4. Update iperf example accordingly
5. Update libphy.a to v383
2018-01-30 16:27:49 +08:00
Chen Wu
ffc2db0a35
fix(ping): fix crash when multi-ping
...
1. "lwip_socket" should close by "lwip_close_r" other than "lwip_close"
2. for generally compatible, fix all lwip interface to normally socket interface
3. call vTaskDelete when new socket failed in case of task crash
close #https://github.com/espressif/esp32-at/issues/58
2018-01-12 15:54:07 +08:00
XiaXiaotian
32c0d74cc5
Close socket request will abort tcp write/connect
...
When tcp write/connect is running, close socket request will abort
it and continue to delete netconn and close tcp. Do not immediately
return after aborting tcp write/connect. Otherwise, tcp close
requeset will block and tcp write/connect will crash.
2017-12-19 15:20:50 +08:00
zhangyanjiao
210d349fbd
when netconn created directly,netconn_delete() will not call netconn_free(),
...
which will lead to memory leak
Closes https://github.com/espressif/esp-idf/issues/784
2017-12-05 10:42:37 +08:00
Jiang Jiang Jian
aece22f763
Merge branch 'bugfix/tw16581_dhcps_default_behaviour_changed' into 'master'
...
fix the dhcps default behaviour chenged by dns
See merge request !1612
2017-12-01 19:21:26 +08:00
Ivan Grokhotkov
cc600bd517
Merge branch 'bugfix/fix_lwip_macros' into 'master'
...
lwip: Change socket API macros to static-inline
See merge request !1614
2017-11-30 10:28:20 +08:00
Kedar Sovani
1c0543fb17
lwip: Change socket API macros to static-inline
2017-11-29 11:42:14 +05:30
Angus Gratton
1d5389668b
Merge branch 'feature/dhcp_server_options_menuconfig' into 'master'
...
dhcpserver: Option to change lease time multiplier and number of max
See merge request !1595
2017-11-29 07:07:09 +08:00
zhangyanjiao
e315d7ca08
fix the dhcps default behaviour chenged by dns
...
Closes https://github.com/espressif/esp-idf/issues/1285
2017-11-28 16:39:00 +08:00
Krzysztof Bociurko
626ad5f577
dhcpserver: Option to change lease time multiplier and number of max
...
stations connected to it.
Merges: https://github.com/espressif/esp-idf/pull/1206
2017-11-28 15:58:03 +11:00
Jiang Jiang Jian
a83fbd3364
Merge branch 'bugfix/tw16287_tcp_send_succeed_after_station_disconnect' into 'master'
...
In STA mode, tcp_send cannot catch err after disconnect station
See merge request !1540
2017-11-27 21:30:46 +08:00
zhangyanjiao
0b644ee515
fix tcp connect/disconnect carsh
2017-11-27 10:18:58 +08:00
Angus Gratton
4ce68f6163
lwip: Expose number of active socket limits in menuconfig
2017-11-22 14:10:08 +11:00
zhangyanjiao
9fbcc6f922
In STA mode, tcp_send cannot catch err after disconnect station
2017-11-20 15:19:19 +08:00
Liu Zhi Fu
095d163050
lwip: rebind UDP/TCP pcb to valid ip address when ip is changed
...
This change fix the issue UDP/TCP pcb failed to rebind to correct ip address when ip is changed
2017-11-15 16:15:24 +08:00
Liu Zhi Fu
48ca949fd4
lwip: fix socket close crash issue
...
When lwip_close free the socket resource (netconn etc), any work
related to these resource (netconn etc) must be aborted.
2017-11-13 06:00:52 +00:00
Jiang Jiang Jian
004c391591
Merge branch 'feature/adjust_task_stack_size_according_to_nano' into 'master'
...
esp32/lwip: adjust task stack size according 'nano' print
See merge request !1510
2017-11-13 11:18:20 +08:00
Liu Zhi Fu
710055025e
esp32/lwip: adjust task stack size according 'nano' print
...
1. Adjust tcpip/main/event/timer task stack size according 'nano' print
2. If 'nano' print is disabled the task stack size reduces 512 bytes
2017-11-09 10:09:42 +08:00
Dmitry4Bh
a0cedb1f44
Fix type conversion error in components/lwip/api/pppapi.c
...
Pointer tcpip_api_call *m should be converted to pppapi_msg* instead of pppapi_msg_msg*
in pppapi_do_ppp_set_default(), pppapi_do_ppp_free() and so on.
It solve this issue https://github.com/espressif/esp-idf/pull/1028
so there is no need to patch ip4.c because now netif_defauilt is setted correctly.
Also it prevents memory corruption when pppapi_free() is called.
2017-11-03 16:42:56 +08:00
Angus Gratton
696dfbcfee
Merge branch 'bugfix/fix_tcp_crash' into 'master'
...
fix tcp crash
See merge request !1444
2017-10-31 06:18:49 +08:00
Angus Gratton
5c5d5f0acb
Merge branch 'bugfix/tcpip_stack_overflow_logging_printf' into 'master'
...
lwip: Increase minimum TCP/IP task stack size if log level is Debug or Verbose
See merge request !1396
2017-10-26 15:09:22 +08:00
zhangyanjiao
18dcbfa1e2
fix tcp crash
2017-10-24 09:44:44 +08:00
Ivan Grokhotkov
552ba35da5
add missing ioctl declaration
...
Previously ioctl was declared as a macro in lwip/sockets.h.
Disabling LWIP_POSIX_SOCKETS_IO_NAMES removed that declaration.
This adds sys/ioctl.h file and the missing declaration.
Also adds missing includes in vfs.c.
2017-10-23 19:47:33 +08:00
Angus Gratton
e5ae0f5927
lwip: Make LWIP_SOCKET_OFFSET signed, remove need for underflow check
...
This reverts commit 541493d877
.
2017-10-20 18:04:28 +08:00
Liu Zhi Fu
cf7ae8135b
tcpip_adapter/lwip: make dhcp domain name server option configurable
...
Add api to configure dhcp option: domain name server
1.closes https://github.com/espressif/esp-idf/issues/162
2.closes https://github.com/espressif/esp-idf/issues/705
2017-10-19 19:28:00 +08:00
Angus Gratton
86c89ff169
pthread: Add support for pthread thread local storage
...
Refactors LWIP to use this for the LWIP thread local semaphore
2017-10-17 14:46:08 +08:00
Angus Gratton
90bf40587e
Merge branch 'feature/sockets_files_shared_fd_space' into 'master'
...
lwip & vfs: POSIX I/O functions operate on sockets and files (first stage, no select() yet)
See merge request !1352
2017-10-17 14:17:09 +08:00
Jiang Jiang Jian
50c993a1b2
Merge branch 'feature/some_refactor_for_esp_ping' into 'master'
...
lwip: refactor to socket ping
See merge request !875
2017-10-16 17:30:00 +08:00
Angus Gratton
539262b5c2
vfs: Remove fd_offset member
...
This was intended for integrating LWIP, but a different approach was used.
2017-10-16 09:45:50 +08:00
Angus Gratton
541493d877
lwip: Check for underflow in FD_SET()/FD_GET()
...
select() only works with LWIP sockets which have a high LWIP_SOCKET_OFFSET,
so chance of accidental underflow is high.
2017-10-16 09:45:50 +08:00
Angus Gratton
3f83914f7a
lwip: Fix bug with LWIP_SOCKET_OFFSET & IGMP group support
2017-10-16 09:45:50 +08:00
Angus Gratton
3ebf7923d3
lwip: Route LWIP socket POSIX I/O functions via IDF VFS layer
...
No more conflicts between LWIP & newlib read(), write(), fcntl(), etc.
select() still only works if all of the fds are sockets.
Closes https://github.com/espressif/esp-idf/issues/273
2017-10-16 09:45:49 +08:00
Angus Gratton
0c50b65a34
lwip: Increase minimum TCP/IP task stack size if log level is Debug or Verbose
...
... unless nano formatting is enabled.
Fixes stack overflow in tcpip_adapter at the default level, as reported on forum:
https://esp32.com/viewtopic.php?f=2&t=3250&p=15538#p15447
2017-10-16 09:43:23 +08:00
Liu Zhi Fu
3bcaa592ee
lwip: refactor to socket ping
...
Do some refactor to socket ping:
1. Add ping_deinit to kill ping thread
2. Apply configuration set by esp_ping_set_target to socket ping
3. Limit only one ping thread
2017-10-13 16:37:09 +08:00
Liu Zhi Fu
e2d077cea1
lwip: init lwip error code
...
Init the error code to ERR_OK when call tcpip_apimsg
2017-10-13 15:59:04 +08:00
XiaXiaotian
5df39cd4b6
Allocate some memories in SPIRAM first.
...
Try to allocate some WiFi and LWIP memories in SPIRAM first. If
failed, try to allocate in internal RAM then.
2017-10-13 10:11:24 +08:00
XiaXiaotian
ad1350f0ac
Release DHCP structure memory when netif is down.
2017-10-12 17:03:44 +08:00
Angus Gratton
3fdb1944d3
lwip: Disable IPV4 Link-Local addressing by default
...
Keeps existing IDF behaviour the same. Can still be enabled via menuconfig.
2017-10-02 10:50:27 +11:00
Angus Gratton
2cc8c91ad8
lwip: Remove undocumented CONFIG_MDNS macro flag
...
All options that were enabled via CONFIG_MDNS are now in menuconfig, with
the default values set the same as with CONFIG_MDNS enabled (meaning existing
projects that were using CONFIG_MDNS do not need to change).
2017-10-02 10:50:27 +11:00
Angus Gratton
04a2cefb26
lwip: Enable IPV6_ONLY option for UDP sockets (BSD & netconn)
...
* setsockopt(s, IPV6_ONLY, &one, sizeof(int)) will disable IPV6-only
mode. Incoming/outgoing IPV4 packets are dropped.
* Otherwise, sockets bound to IPV6_ANY_ADDR can receive unicast packets
for IPV4 or IPV6.
* sendto() a IPV6-mapped-IPV4 address on a UDP socket works correctly
(not supported for RAW or TCP sockets.)
* getaddrinfo() option AI_V4MAPPED is implemented.
As well as extending support to TCP & RAW, there is some potential improvement
to dropping incoming packets - the drop happens a bit late in the process and
there is no "ICMP port unreachable" response sent.
2017-10-02 10:50:27 +11:00
Angus Gratton
961180617e
lwip: Add IPV6 multicast group membership socket options
...
As described in RFC2133: IPV6_MULTICAST_IF, IPV6_MULTICAST_HOPS,
IPV6_MULTICAST_LOOP, IPV6_MULTICAST_LOOP, IPV6_DROP_MEMBERSHIP.
2017-10-02 10:50:27 +11:00
Ivan Grokhotkov
b7a79ab67e
Merge branch 'bugfix/bind_dhcp_server_udp_to_ip_of_ap' into 'master'
...
Fix the bug that if one device is in station+softap mode, other device can not get IP address after connecting to the softap.
See merge request !1314
2017-09-26 16:06:55 +08:00
Liu Zhi Fu
05b0d567e5
example: add iperf example
...
Support iperf
2017-09-26 09:19:01 +08:00
XiaXiaotian
20064978ba
Fix the bug that if one device is in station+softap mode, other device can not
...
get IP address after connecting to the softap.
Now the default netif is station in station+softap mode. The UDP pcb of
DHCP server is binded to IP 0.0.0.0. When other device connects to softap, the
DHCP offer will be sent by softap.But because the destination IP of DHCP offer
is broadcast IP and the source IP of it is 0.0.0.0, it will be sent from default
netif, that is station interface. Other device can not receive the DHCP offer
sent from station interface. As a result, other device can not get IP address.
The resolution is that bind UDP pcb to the IP address of softap. So, the source
IP of DHCP offer is that of softap. DHCP offer can be sent from softap interface
by source IP route method.
2017-09-23 20:18:50 +08:00
zhangyanjiao
336c4b4a55
fix lwip tcp_oversize_dbgcheck assert
2017-09-15 10:28:51 +08:00
zhangyanjiao
164006509f
optimize lwip route when loopback open and in "APSTA" mode
2017-09-14 16:19:05 +08:00
Ivan Grokhotkov
868b0ce228
Merge branch 'bugfix/list_node_naming' into 'master'
...
Fix "list_node" name conflict in bluedroid & dhcp_server
See merge request !1216
2017-09-12 12:10:54 +08:00
Angus Gratton
73b3ae8a2d
lwip: Use hardware RNG for LWIP_RAND(), use LWIP_RAND() for random port assignment
2017-09-07 16:32:05 +10:00
Angus Gratton
74d5f85c53
Merge branch 'feature/build_warn_undefined_vars' into 'master'
...
Add --warn-undefined-variables to MAKEFLAGS (github #138 )
See merge request !1214
2017-09-05 15:39:48 +08:00
Angus Gratton
9471ce9135
dhcpserver: Move DHCP option names to a separate header
...
Avoids naming conflicts. Resolves TW13826.
2017-09-05 17:28:40 +10:00
Angus Gratton
1be6bf6790
dhcpserver: Move list_node to implementation not public interface
...
Was unused in the public interface.
Closes https://github.com/espressif/esp-idf/issues/948
2017-09-05 17:14:23 +10:00
Angus Gratton
f17bbff4b5
Merge branch 'feature/tcp_msl_menuconfig' into 'master'
...
components/lwip: Expose TCP_MSL in menuconfig. (github #783 )
See merge request !1175
2017-09-05 14:18:36 +08:00
Angus Gratton
8670844acf
build system: Restore ifdef/ifndef in Makefiles, clean up examples build
2017-09-05 16:11:03 +10:00
Deomid Ryabkov
9903ea1c11
Add --warn-undefined-variables to MAKEFLAGS
...
Fix warnings where undefined vars are used.
Make Kconfig emit "FOO=" for unset bool options
To ensure make variables are always defined, even if empty.
When writing auto.conf, include symbols disabled by dependency to make sure all make variables are always defined.
Fixes espressif/esp-idf#137
Cherry-picked from https://github.com/espressif/esp-idf/pull/138
2017-09-05 16:10:46 +10:00
Ivan Grokhotkov
9da1bf1a45
Merge branch 'bugfix/lwip_send_timeout' into 'master'
...
match sys tick with lwip_send_timeout
See merge request !1203
2017-09-04 18:19:59 +08:00
zhangyanjiao
547b7b0246
match sys tick with lwip_send_timeout
2017-09-04 14:52:16 +08:00
Stephen Casner
1e3dd2a4fa
Add missing debug log message for out-of-sockets case
...
Merges https://github.com/espressif/esp-idf/pull/903
2017-08-30 17:55:00 +10:00
devsaurus
92535158e7
components/lwip: Expose TCP_MSL in menuconfig.
...
Merges https://github.com/espressif/esp-idf/pull/783
2017-08-30 16:44:53 +10:00
Jiang Jiang Jian
72a6b26244
Merge branch 'bugfix/tw14823_lwip_assert_err' into 'master'
...
assert when close a connecting socket
See merge request !1136
2017-08-24 11:29:32 +08:00
zhangyanjiao
61f64e38d9
assert when close a connecting socket
2017-08-22 20:36:35 +08:00
Liu Zhi Fu
b45433110f
tcpip_adapter/lwip: optimize wifi/ip event
2017-08-21 14:36:44 +08:00
Liu Zhi Fu
4ad1f2b272
lwip: optimize TCP close
...
Optimize TCP close:
1. Not remove TCP pcb when IP address is changed since the lwip netconn still need the pcb
2. If the TCP connection is in TCP_FIN_WAIT_1 for too long time, remove it
2017-07-27 12:44:39 +08:00
Jiang Jiang Jian
460ab2e33b
Merge branch 'feature/make_tcp_udp_receive_mbox_configurable' into 'master'
...
lwip: Make UDP/TCP receive mail box configurable
See merge request !1051
2017-07-25 20:45:38 +08:00
Liu Zhi Fu
7b2f388abc
lwip: Make UDP/TCP receive mail box configurable
...
Different application may require different TCP/UDP receiv mail box size,
so make them configurable.
2017-07-25 13:56:32 +08:00
Liu Zhi Fu
9ae5c6700b
lwip/ethernet: fix emac rx buf err
...
1. Lwip not free the ethernet buf in lwip layer
2. Fix emac counter error
2017-07-25 11:19:31 +08:00
Jiang Jiang Jian
4ec2abbf23
Merge branch 'feature/some_refactor_for_tcpip_adapter' into 'master'
...
tcpip_adapter: not remove netif when tcpip adapter is stopped
See merge request !943
2017-07-13 22:16:00 +08:00
Liu Zhi Fu
d724cc23d2
tcpip_adapter: not free netif when tcpip adapter is stopped
...
When tcpip adapter is stop, don't free the netif
2017-07-13 18:42:45 +08:00
XiaXiaotian
7a64e19ba8
Broadcast IP route based on source IP address.
...
If destination IP address of the packet is broadcast address, firstly compare
source IP address with the that of each network interface. If it matches,
packet is forwarded from the interface.
2017-06-30 16:18:29 +08:00
Angus Gratton
857a7f186e
lwip: Make LWIP_ERROR behave as if assertions were off, even if they are on
2017-06-27 18:36:54 +10:00
Angus Gratton
f5e7f2bb8f
lwip: Remove port-specific sys_arch_assert(), use libc __assert_func() instead
2017-06-27 17:32:17 +10:00
Angus Gratton
0c301206cf
lwip debug: fix typo
2017-06-23 16:28:38 +10:00
Angus Gratton
8f4fc209a1
lwip: Enable LWIP assertions unless they are disabled globally
2017-06-23 16:26:11 +10:00
Angus Gratton
1c6510ed96
lwip: Allow configuring/disabling some TCP options to save RAM
...
RAM savings are small, but may add up when running large numbers of sockets.
2017-06-23 16:26:11 +10:00
Angus Gratton
1ea0ddb025
lwip: Expose broadcast/multicast ping enable options in menuconfig
2017-06-23 16:15:00 +10:00
Angus Gratton
ae05787a51
Merge branch 'bugfix/make_srcdirs_order' into 'master'
...
build system: Fix bug where component src subdirs needed listing before parent source dirs
See merge request !778
2017-06-06 14:37:21 +08:00
Liu Zhi Fu
cd58f089c2
lwip: fix dhcp server crash issue
...
Fix long dhcp request packet cause dhcp server crash issue
2017-06-02 14:02:33 +08:00
jack
fc130fba86
fix bug that files missing commit in MR 773
2017-05-31 19:37:39 +08:00
Angus Gratton
99771a255f
build system: Fix bug where component src subdirs needed listing before parent source dirs
...
Triggered on make 3.81, happens sometimes on Linux and always(?) on macOS. May depend on the order the OS' filesystem
resolves wildcards in.
Includes a revert to the LWIP component to verify this is properly fixed.
See also https://github.com/espressif/esp-idf/issues/632
2017-05-22 11:45:55 +10:00
Jiang Jiang Jian
195358ddb7
Merge branch 'bugfix/lwip_loopback' into 'master'
...
fix(lwip): fix tcp connect fail when enable LOOPIF
when enable the LOOPIF, because of use the loopnetif, the TCP connect will fail. see TW12029
See merge request !711
2017-05-05 15:45:14 +08:00
Liu Zhi Fu
5cf3b1c201
esp32/lwip: adjust some lwip options and update wifi lib
...
1. Modify TCP TX window from 2 to 4
2. Modify TCPIP task stack default size from 2048 to 2560
3. Update wifi lib for TCP performance optimization
2017-04-28 15:25:33 +08:00
Liu Han
aeecbcc7ee
fix(lwip): fix tcp connect fail when enable LOOPIF
2017-04-27 18:59:47 +08:00
Ivan Grokhotkov
8d6a03820a
lwip: fix error when building on OS X, only build ppp if enabled
...
- reorder directories listed in COMPONENT_SRCDIRS so that
subdirectories precede parent directories
- don’t include PPP source directories if PPP support is not enabled
2017-04-25 17:22:09 +08:00
Jiang Jiang Jian
3f4e917ad6
Merge branch 'feature/ppp_over_serial' into 'master'
...
Enable experimental/unsupported PPP over Serial driver
From PR #272 https://github.com/espressif/esp-idf/pull/272
See merge request !690
2017-04-25 14:02:55 +08:00
Angus Gratton
f3a567b65d
PPPoS: Rearrange config items (move TCP/IP stack size to LWIP), mark as experimental/unsupported
...
Ref #272
2017-04-21 14:23:34 +10:00
Adrian Muzyka
47c722d674
Enable lwip PPPoS support
...
* Fix some lwip api bugs
* Added PPP_SUPPORT parameter to lwip Kconfig
* Added example pppos_client
Merges #272 https://github.com/espressif/esp-idf/pull/272
2017-04-21 14:23:34 +10:00
Liu Zhi Fu
ab37f89f55
lwip: fix tcp stable test abort issue
...
1. Modify dhcp server timer to 1 seconds
2. Enable ETHARP_TRUST_IP_MAC
modify according to review
2017-04-19 17:39:32 +08:00
Ivan Grokhotkov
378884660a
Merge branch 'feature/tw11250_add_tcp_delay_statistics' into 'master'
...
lwip: refactor to esp specific counter
1. Add tcp debug counter
2. Refactor other ESP specific counter
See merge request !635
2017-04-13 15:29:36 +08:00
Edmund Huber
eab6d483a5
give the AP and STA netifs different names for ease of debugging lwip
2017-04-11 20:40:36 +08:00
Liu Zhi Fu
ece61944f4
lwip: refractor to esp specific counter
...
1. Add tcp debug counter
2. Refractor other ESP specific counter
2017-04-10 14:46:48 +08:00
Jiang Jiang Jian
fc15d72038
Merge branch 'feature/implement_lwip_critical_protect_with_mutex' into 'master'
...
lwip: implement lwip critical session with mutex
Currently lwip critical session is based on interrupt, now replace it with mutex
See merge request !595
2017-04-01 17:27:20 +08:00
Liu Zhi Fu
68e27f8188
optimize tcpip adapter layer
2017-04-01 16:41:51 +08:00
Liu Zhi Fu
778a475136
lwip: implement lwip critical session with mutex
...
Currently lwip critical session is based on interrupt, now replace it with mutex
2017-04-01 16:24:58 +08:00