Ivan Grokhotkov
eef0b5090a
mdns: use binary semaphore instead of mutex when searching
...
mdns_search_once_t::lock is used to synchronize tasks (taken by one
task and given by the other) so it should not be a mutex.
Convert to semaphore, and rename to indicate its purpose.
2019-03-12 09:33:06 +01:00
David Cermak
8462751f95
mdns: fix memory leak in pbuf if tcpipadapter failed to get netif
2019-02-15 15:59:11 +01:00
David Cermak
1a027734af
mdns: fix malfuctional query_txt
...
when running a query for a single txt, result entries were not created and attached to result structure. this issue was introduced when fixing memory leak in txt structure, which worked correctly for PTR queries, but caused trouble for TXT query.
2019-02-15 13:46:51 +01:00
David Cermak
206b47c03a
mdns: fix possible crash when mdns_free called while action queue not empty
2019-02-15 13:23:21 +01:00
David Cermak
9a4da97fb4
mdns: fix memory leak when query for service receives multiple ptr entries for one instance
...
fixes redmine issue 27300
2019-02-15 07:56:03 +01:00
David Cermak
a47768dc4e
mdns: fix crash after init if no memory for task
...
mdns init first starts timer task, then starts service task. if service task failed to be created, timer task needs to be stopped too.
fixed https://ezredmine.espressif.cn:8765/issues/28466
2019-01-30 08:17:37 +01:00
Angus Gratton
784fc51931
Merge branch 'bugfix/mdns_crash_free_strdup' into 'master'
...
mdns: fixed crash on free undefined ptr if strdup is skipped
See merge request idf/esp-idf!4173
2019-01-30 09:33:12 +08:00
Roland Dobai
37126d3451
Correct Kconfigs according to the coding style
2019-01-29 13:37:01 +01:00
David Cermak
e0a8044a16
mdns: fixed crash on free undefined ptr after skipped strdup
...
Shortcircuit evaluation may cause skip of _mdns_strdup_check of any further question field, which after clear_rx_packet freed undefined memory.
Fixes https://ezredmine.espressif.cn:8765/issues/28465
2019-01-29 10:10:38 +01:00
David Cermak
f7d4a4be6a
mdns: fix networking running udp_sendif from lwip thread
2019-01-03 14:28:29 +01:00
David Cermak
6bb68a5a75
mdns: fixed static memory leak
2018-12-17 12:09:23 +01:00
David Cermak
c8cb4cd3c8
mdns: check all mallocs for failure and add default hook to log error with free heap
...
solves crash about _mdns_result_txt_create when stress test
2018-12-17 12:09:11 +01:00
David Cermak
a6b2b73f03
mdns: resolve memory leak when txt record received multiple times
2018-12-11 21:59:44 +01:00
David Cermak
31163f02d5
mdns: skip sending search when finished, not properly locked timer task
2018-12-11 21:56:01 +01:00
David Cermak
d16762a036
mdns: sending search packets also in probing and announcing state
...
mdns queries did not work properly when send imeadiately after set_hostname, which cuased reinit of pcb and therefore restarted probing, so search packets were blocked until probing finished
closes #2507 , closes #2593
2018-11-16 07:22:29 +00:00
David Cermak
097282a8e3
mdns: fixed crashes on network changes
...
1) two events AP_STOP, AP_START shortly after each other may cause IGMP config on already stopped netif
2) not properly locked sending packets to queue from timer task
closes #2580
2018-10-24 12:03:41 +02:00
Ivan Grokhotkov
49125a87bb
Merge branch 'bugfix/mdns-lwip-update' into 'master'
...
Update network code for mDNS to work with newest LwIP
See merge request idf/esp-idf!3268
2018-09-17 10:42:04 +08:00
me-no-dev
3ec0e7e2d2
Update network code for mDNS to work with newest LwIP
...
- Uses one PCB that listens to all interfaces
- Manages multicast groups for each interface
2018-09-14 11:02:47 +02:00
Liu Han
3d4deb9726
feat(mdns): fix bug when clean action memory
2018-09-14 15:36:52 +08:00
Piyush Shah
e5e2702ca3
bugfix: mdns_service_txt_set() wasn't allocating memory for TXT records
...
Allocation was happening later, causing possible use of stack variables
of caller function, which could be invalid.
Signed-off-by: Piyush Shah <piyush@espressif.com>
2018-09-11 16:23:56 +05:30
Renz Christian Bagaporo
d9939cedd9
cmake: make main a component again
2018-09-11 09:44:12 +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
ff2404a272
Merge branch 'master' into feature/cmake
2018-08-16 17:14:17 +10:00
Liu Han
f3f0445f4d
mdns: Fix a portion of the queries are issued with the wildcard query type
2018-08-14 07:25:08 +00:00
David Cermak
0c147648f7
added CI job for AFL fuzzer tests
2018-07-20 10:28:12 +02:00
Angus Gratton
fe1ffb3d1c
Merge branch 'bugfix/mdns_remove' into 'master'
...
mdns: Minor fix for mdns_service_remove()
See merge request idf/esp-idf!2760
2018-07-16 16:29:20 +08:00
Piyush Shah
5c7eb7e27b
mdns: Minor fix for mdns_service_remove()
...
Send the Goodbye packet while removing an mDNS service as an "Authoritative" packet so
that the listeners remove the service from their records immediately.
2018-07-12 19:18:54 +05:30
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
Liu Han
ba458c69cf
fix(mdns): add the maximum number of services
2018-06-21 10:31:09 +08:00
Liu Han
696d733eb0
fix(mdns): fix the exception when remove one of multiple service
2018-06-03 17:29:49 +08:00
Angus Gratton
6b9784cc45
Merge branch 'master' into feature/cmake_update
2018-05-31 14:46:23 +10:00
Ivan Grokhotkov
cb649e452f
remove executable permission from source files
2018-05-29 20:07:45 +08:00
David Cermak
fffbf7b750
Fixed nullptr dereference in MDNS.c
2018-05-22 11:23:12 +02:00
David Cermak
e983230be9
MDNS-Fuzzer: AFL fuzzer tests for mdsn packet parser
2018-05-22 11:23:12 +02: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
4f1a856dbf
cmake: Remove defaults for COMPONENT_SRCDIRS, COMPONENT_SRCS, COMPONENT_ADD_INCLUDEDIRS
...
* Philosophical: "explicit is better than implicit".
* Practical: Allows useful errors if invalid directories given in components as the defaults aren't
always used. Also trims the -I path from a number of components that have no actual include
directory.
* Simplifies knowing which components will be header-only and which won't
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
jack
81e4cad615
fix the bug that in mdns test code redefine esp_err_t to uint32_t, which should be int32_t
2018-04-25 21:05:21 +08:00
me-no-dev
421c6f154b
Fix exception when service is removed while there are pending packets that depend on it
2018-04-09 09:40:08 +03:00
me-no-dev
4fa130ae4f
mdns: Fix case where service is NULL and that will cause exception
2018-01-22 13:56:53 +01:00
me-no-dev
51dde19a76
mdns: Fix issue with some mDNS parsers
...
Some mDNS parser have issue with zero terminated TXT lists. This fix targets to overcome this issue. Found and tested with jmdns.
2018-01-22 13:56:34 +01:00
me-no-dev
4bddbc031c
Import mDNS changes
2018-01-16 10:58:34 +02:00
Roman Valls Guimera
519edc332d
Fix compilation errors when using gcc-7.2.0 for the crosstool-ng toolchain
...
* Change snprintf for strlcat does not complain w/gcc7.2.0 and it is safer, thanks @projectgus
* Use proper quotes for character literals
Merges https://github.com/espressif/esp-idf/pull/1163
2017-12-04 10:18:40 +11:00
Siarhei Volkau
6e24566186
components/mdns: wrong Message compression detect
...
Old behavior assumes message compressed when any of 2 most significant bits are set,
But in fact Message compressed only when both those bits are set to 1.
Also maximal label length should be 63 bytes.
2017-11-03 16:52:22 +08:00
Ivan Grokhotkov
b4857fc159
Merge branch 'bugfix/memory_issues_pr838' into 'master'
...
vfat, i2s, mdns: Fix two memory leaks, one double free (github #838 )
See merge request !1173
2017-08-31 10:45:19 +08:00
Quentin Thérond
b6b36bd9dd
mdns: fix leak after _mdns_create_service if we have a malloc error.
2017-08-30 12:11:57 +10:00
Eugene Zagidullin
713964fe9e
Use LwIP IPC for low-level API calls
2017-06-27 00:41:41 +03:00
me-no-dev
4c2622755d
Add AFL fuzz test
2017-04-05 09:23:09 +03:00
me-no-dev
99d39909c4
implement fixes for issues found while fuzz testing
2017-04-03 16:45:59 +03:00
negativekelvin
96e8a3c725
mdns: add simple dns-sd meta query support
...
tabs to spaces
match domain
2017-03-29 11:48:19 +11:00
me-no-dev
c89e11c8fa
address security issues with mDNS
2017-03-14 10:08:38 +02:00
me-no-dev
dd3f18d2d8
Initial mDNS component and example
2017-01-13 12:12:43 +02:00