Commit graph

32 commits

Author SHA1 Message Date
David Cermak
94defe35cc 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-03-06 06:28:55 +00:00
David Cermak
0b48653ed0 mdns: fix possible crash when mdns_free called while action queue not empty 2019-03-06 06:28:55 +00:00
David Cermak
1ce0434373 mdns: fix memory leak when query for service receives multiple ptr entries for one instance
fixes redmine issue 27300
2019-03-06 06:28:55 +00:00
David Cermak
31716a4960 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 19:27:46 +01:00
Ivan Grokhotkov
b917fbe914 Merge branch 'bugfix/mdns_query_failed_after_init_v3.1' into 'release/v3.1'
Fixed: mdns query failed after init (Backport v3.1)

See merge request idf/esp-idf!3730
2019-01-11 11:26:28 +08:00
David Cermak
db256ed1e1 mdns: fixed static memory leak 2018-12-21 16:33:47 +01:00
David Cermak
270f105823 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-21 16:33:32 +01:00
David Cermak
44811c6896 mdns: resolve memory leak when txt record received multiple times 2018-12-21 16:33:19 +01:00
David Cermak
d8c9530d3c mdns: skip sending search when finished, not properly locked timer task 2018-12-21 16:33:08 +01:00
David Cermak
e885ff235f 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-19 04:56:34 +01:00
David Cermak
6a6fccc191 mdns: fixed crashes on network change (not properly locked sending packets to queue from timer task), backport 3.1 2018-10-30 07:37:02 +01:00
Liu Han
52a70b3418 feat(mdns): fix bug when clean action memory 2018-09-18 23:39:10 +05:30
Piyush Shah
9237110c5c 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-14 11:17:53 +05:30
Liu Han
1bbe9538ef mdns: Fix a portion of the queries are issued with the wildcard query type 2018-08-14 18:34:40 +10:00
Piyush Shah
8dbf96a471 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-16 15:07:44 +05:30
Liu Han
696d733eb0 fix(mdns): fix the exception when remove one of multiple service 2018-06-03 17:29:49 +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
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