wuyuanyi135
97c44ee95d
Fix incorrect invocation of the hook LWIP_HOOK_DHCPS_POST_APPEND_OPTS
...
Fix https://github.com/espressif/esp-idf/issues/11373
2023-05-10 19:52:40 +08:00
Jiang Jiang Jian
df6b33712f
Merge branch 'Bugfix/softap_support_CIDR' into 'master'
...
Bugfix for softap support CIDR
Closes IDFGH-8574
See merge request espressif/esp-idf!22471
2023-03-02 14:03:00 +08:00
David Čermák
956e62c461
Merge branch 'feature/lwip_ipv6_only' into 'master'
...
lwip: Support IPv6 only mode
Closes IDF-6023
See merge request espressif/esp-idf!20468
2023-03-01 21:38:10 +08:00
David Cermak
5f6cb31105
lwip: Support IPv6 only mode
2023-02-27 08:53:34 +01:00
xueyunfei
4f0732cf05
Fixed bug for dhcp server support CIDR
...
Closes https://github.com/espressif/esp-idf/issues/10024
Closes https://github.com/espressif/esp-idf/issues/10559
2023-02-24 14:24:49 +08:00
David Cermak
708641204e
lwip: Add missing esp_sntp_enabled()
2023-02-24 07:23:55 +01:00
David Cermak
e8ee09d817
lwip/sntp: Fix esp_sntp_ API races
...
Some of the esp_sntp_...() APIs that wrap lwip's SNTP
module use tcpip_callback() to execute the lwip functionality
in the correct state (either with locked TCP/IP core,
or within the TCP/IP thread).
tcpip_callback() however doesn't wait for completion of the callback,
which doesn't prevent from using the stack variables after destroy
if used as a parameter.
Introduced in a71fa82
.
Fixed by using of tcpip_api_call() instead of the tcpip_callback().
Closes https://github.com/espressif/esp-idf/issues/10611
2023-01-31 18:25:35 +01:00
David Cermak
fa97004faf
lwip: Support for linux target
...
Implement linux port layer and reuse the original FreeRTOS layer
that's compiled and used on linux target as well, by means of FreeRTOS
simulator.
2023-01-31 08:43:45 +01:00
David Cermak
a71fa82177
esp_netif/lwip: Fix core-locking config
...
* Fix thread safety issues in non-core locking
* Add option to verify thread safety issues in lwip (core-lock assertion)
* Make esp_sntp.h thread safe API
* Fix sntp examples
* Fix openthread libs
Closes https://github.com/espressif/esp-idf/issues/9908
Closes https://github.com/espressif/esp-idf/issues/10502
Closes https://github.com/espressif/esp-idf/issues/10466
2023-01-17 16:15:58 +01:00
xueyunfei
1ae1723d23
dhcp server:bugfix softap excedes the range of subnet
2022-12-16 14:25:04 +08:00
David Cermak
9e31c5077d
lwip: Document 32 bit NTP timestamp converstion to 64b time_t
2022-09-21 17:38:37 +02:00
David Cermak
b5d13b9837
lwip/dhcpserver: Support for adding extra opts
...
This enables users appending an extra, user defined options in dhcp
server messages. Example of adding captive_portal option (160) to dhcp
offer message is provided:
* Add idf-lwip hook file (project makefile):
idf_component_get_property(lwip lwip COMPONENT_LIB)
target_compile_options(${lwip} PRIVATE "-I${PROJECT_DIR}/main")
target_compile_definitions(${lwip} PRIVATE "-DESP_IDF_LWIP_HOOK_FILENAME=\"add_captive_portal.h\"")
* Implement appending (add_captive_portal.h):
#pragma once
#define LWIP_HOOK_DHCPS_POST_APPEND_OPTS(netif, dhcp, state, pp_opts) \
if ((state)==DHCPOFFER) { *(pp_opts) = append_captive_portal_uri(*(pp_opts)); }
static inline uint8_t *append_captive_portal_uri(uint8_t *optptr)
{
const static uint8_t DHCP_OPTION_CAPTIVE_PORTAL=160;
const static char CAPTIVE_PORTAL_URI[]="my_uri";
int size = sizeof(CAPTIVE_PORTAL_URI) - 1;
*optptr++ = DHCP_OPTION_CAPTIVE_PORTAL;
*optptr++ = size;
for(int i = 0; i < size; ++i) {
*optptr++ = CAPTIVE_PORTAL_URI[i];
}
return optptr;
}
Merges https://github.com/espressif/esp-idf/pull/3308
2022-07-26 07:09:22 +00:00
xueyunfei
45ad770c37
Icmp: get tos parameter in icmp reply
2022-07-05 11:37:41 +08:00
xueyunfei
b569f4069a
bugfix for add ttl for ping socket
2022-07-05 11:37:41 +08:00
David Cermak
5aa3be11fd
dhcpserver: Minor #idfef fix
2022-05-18 17:11:35 +02:00
David Cermak
27375c7917
esp_netif: Cleanup dhcp-server allocations
2022-03-13 19:40:00 +01:00
David Cermak
1b49cf373f
lwip/dhcps: Fix fuzzer compilation
2022-03-13 19:40:00 +01:00
David Cermak
3d1c05aefb
lwip/dhcps: Add dhcps callback argument for associated netif
2022-03-13 19:40:00 +01:00
David Cermak
5f135741a1
lwip/dhcpserver: Add return value to API that could fail
2022-03-13 19:40:00 +01:00
David Cermak
afe6bc0c88
lwip/dhcp_server: Fix mem-leaks caught by UT's
2022-03-13 19:40:00 +01:00
David Cermak
c005b04d1c
lwip/dhcps: Support for dynamic dhcp server instances
2022-03-13 19:39:21 +01:00
David Cermak
bab051f450
lwip/dhcps: Cleanup internal lwip and esp-netif dependency
2022-03-13 19:38:15 +01:00
David Cermak
05911fd4a1
lwip: Add dhcp servers post processing hook
...
In order to access DHCP messages from clients in different states
and possibly to implement custom handlers that alter the current state,
e.g. reject a client with specific hostname using NAK.
2022-01-26 07:18:48 +01:00
David Cermak
e3d71c984a
lwip: Add client's MAC addr to dhcp server cb
...
* Extended storage for staipassigned events to pass client's MAC address.
* Added client's MAC to dhcp server callback
* Posting the staipassigned events with clients IP and MAC address
2022-01-25 13:08:43 +01:00
AndriiFilippov
f42d1f48c6
unified replace PING_CHECK by ESP_GOTO_ON_FALSE
...
unified replace PING_CHECK by ESP_GOTO_ON_FALSE
replace PING_CHECK macro by ESP_GOTO_ON_FALSE
Include header
grammar fix
2021-11-30 10:12:09 +01:00
David Cermak
7b91343ca7
lwip: Fix ping socket create to allow for fd=0
...
0 is a valid socket description, so should be accepted after we create a
socket. In IDF, though, it's just a theoretical issue, as customers have
to configure:
* FD_SETSIZE = CONFIG_LWIP_MAX_SOCKETS (from makefiles)
* CONFIG_VFS_SUPPORT_IO = n (from menuconfig)
(this configuration is currently broken, but if we adjust the IDF here
and there we could reproduce the issue)
2021-10-26 08:19:26 +02:00
David Čermák
756cc4f8dc
Merge branch 'bugfix/esp_sntp_declare' into 'master'
...
lw-ip: Fix sntp custom options if sntp_get_system_time used
Closes FCS-710
See merge request espressif/esp-idf!14556
2021-08-23 15:11:26 +00:00
David Cermak
457d837b40
lwip: Fix sntp custom options if sntp_get_system_time used
2021-08-23 11:47:44 +02:00
ivmarkov
ee531c748a
lwip: Fix ICMP Ping on specific iface
...
Fix broken parentheses in setsockopt call
Merges https://github.com/espressif/esp-idf/pull/7397
2021-08-19 09:55:26 +02:00
yuanjm
e9dab3203e
ping_sock: Fix esp_ping_new_session may return ESP_OK when the error occured
...
Closes https://github.com/espressif/esp-idf/issues/7363
2021-08-05 10:38:38 +08:00
David Cermak
96911fb7ea
lwip: Fix DHCP Server to remove clients record if request not acked
...
When client's request refused by sending NAK, its record still resided
in the linked list of pooled addresses. It is okay from the spec
perspective (RFC2131.p16: Server MAY mark the offered address
unavailable), but would consume some memory if the client didn't retry.
Closes https://github.com/espressif/esp-idf/issues/6410
2021-06-24 15:10:24 +08:00
yuanjm
d80db218da
lwip: Add LWIP_IPV6 macro to strip IPv6 function in LWIP component
2021-02-23 18:26:03 +08:00
Chen Wu
8207f6ac32
lwip: Fixed ping assert reset when ping interval is 0
2021-01-26 10:48:56 +00:00
morris
753a929525
global: fix sign-compare warnings
2021-01-12 14:05:08 +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
xueyunfei
79fc027830
lwip:add feature for ipv6 ping
2020-10-22 15:01:59 +08:00
ronghulin
9230e0d26d
bugfix: fix ICMP specify length issue
2020-06-28 10:46:43 +08:00
David Cermak
fa57bdbdbe
dhcpserver: make subnet mask configurable
...
Closes https://github.com/espressif/esp-idf/issues/4988
2020-04-30 14:04:22 +00:00
David Cermak
72d54b68a6
lwip: dhcp-server fix static analysis warnings
...
1) kill_oldest_dhcps_pool() is only called when list has at least two members (assured with kconfig value limit), added assertion to ensure this function is used only when prerequisities are met
2) use after free reported in two places, since the analyzer checks also the scenario when the linked list has loops, added ignore tags
2020-03-27 18:46:39 +01:00
Konstantin Kondrashov
98495e5939
sntp: Add API to set update interval
...
Closes: https://github.com/espressif/esp-idf/issues/4437
Closes: IDFGH-2298
2019-12-20 18:26:23 +08: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
suda-morris
dc6acf0033
icmp: add example and unitest
2019-10-22 04:38:09 +00:00
suda-morris
fa32a4bd93
ping: refactor with new esp_ping_xxx APIs
...
This refactor is only for backwards compatible.
2019-10-22 04:38:09 +00:00
Andro Nooh
a77e69c408
lwip: add icmp echo example
...
It piggybacks on the console example to add ping support and CLI.
Merges https://github.com/espressif/esp-idf/pull/4093
2019-10-22 04:38:09 +00:00
Anton Maklakov
afbaf74007
tools: Mass fixing of empty prototypes (for -Wstrict-prototypes)
2019-08-01 16:28:56 +07: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
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
zhangyanjiao
32f3972284
add ping length and QoS
2018-10-17 09:39:27 +00: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