Commit Graph

162 Commits

Author SHA1 Message Date
David Cermak
619235c2ee mdns: Fix fuzzer IDF-mock layer
Removed lwip dependencies
Simplified the mocks for esp32 and esp-netif
2021-07-01 15:45:05 +02:00
David Cermak
54e329444a mdns: Clean the main mdns module from lwip dependencies
* Reduced number of include paths
* Abstract the internals of mdns packet (specifics defined in
mdns_networking.c)
* Use ESP_IP addresses instead of lwip addresses
2021-07-01 15:01:39 +02:00
David Čermák
6661d01a64 Merge branch 'feature/mdns_query_async' into 'master'
mdns: Add asynchronous query API

See merge request espressif/esp-idf!13988
2021-07-01 12:28:54 +00:00
David Čermák
68f33b75de Merge branch 'bugfix/mdns_fuzzer_crashes' into 'master'
mdns: Fix null dereferences reported by fuzzer tests

See merge request espressif/esp-idf!14153
2021-07-01 10:46:55 +00:00
David Cermak
d81482d699 mdns: Add asynchronous query API
Closes https://github.com/espressif/esp-idf/issues/7090
2021-06-30 17:20:30 +04:00
Jiacheng Guo
2386113972 mdns: return ESP_OK rather than ERR_OK in API functions 2021-06-29 17:35:45 +08:00
Jiacheng Guo
0baee93211 mdns: fix memory leak in mdns_free when adding delegated hostnames 2021-06-29 17:35:45 +08:00
David Cermak
4a2e72677c mdns: Fix crashes reported by the fuzzer tests 2021-06-25 08:34:39 +02:00
David Cermak
dae803335e mdns/fuzzer: Fix non-instrumentation test to reproduce fuzzer issues
Regression from 7d76245173 skipped reading the packet causing issues when locally reproducing crashed found by the fuzzer
2021-06-25 08:33:38 +02:00
David Cermak
f167238fac mdns: Support for One-Shot mDNS queries 2021-06-24 07:05:00 +02:00
David Čermák
3452c5f194 Merge branch 'feature/mdns-value-len' into 'master'
mdns: allow explicit txt value length

See merge request espressif/esp-idf!13981
2021-06-23 14:53:48 +00:00
David Čermák
4d604ee6d2 Merge branch 'bugfix/remove_unstable_network_tests' into 'master'
CI: Move mqtt publish tests from regular pipeline to weekend tests

Closes IDFCI-653

See merge request espressif/esp-idf!13891
2021-06-17 07:04:51 +00:00
Jiacheng Guo
b4e0088b68 mdns: allow explicit txt value length 2021-06-16 17:47:07 +08:00
David Cermak
79ba738626 mdns: Fix crashes reported by the fuzzer 2021-06-11 16:53:06 +02:00
David Cermak
7d76245173 mdns: Minor correction of the test code 2021-06-11 16:53:06 +02:00
David Cermak
14099fe15e mdns: Fix fuzzer from miss-interpreting adding services as timeouts 2021-06-11 16:53:06 +02:00
Jiacheng Guo
a4f263948c mdns: fix test script delayed response 2021-06-04 10:44:36 +08:00
Jiacheng Guo
e6135552d2 mdns: fix wrong SRV/PTR record handling 2021-06-04 10:44:36 +08:00
Jiacheng Guo
439b31d065 mdns: fix wrong service hostname after mangling 2021-06-04 10:44:36 +08:00
Jiacheng Guo
7bbb72d865 mdns: fix empty address change announce packets 2021-06-04 10:44:36 +08:00
Jiacheng Guo
d2a5d25984 mdns: fix mdns probe/reply behavior
* send correct hostnames when probing.
* add test for mdns host delegation.
2021-06-04 10:44:36 +08:00
Jiacheng Guo
2d34352f3d mdns: make delegate host address a list
Also adds unit test and doc string for new apis.
2021-06-04 10:44:36 +08:00
Jiacheng Guo
2174693096 mdns: add remove delegate host api 2021-06-04 10:44:36 +08:00
Jiacheng Guo
401ff56cc1 mdns: add mdns delegation
This allows publishing mdns services for other devices.
2021-06-04 10:44:36 +08:00
Jiacheng Guo
5f244c86f2 mdns: fix memory free issue when repeating the query in reply
The repeated query will be copied in the next event loop while the
memory is freed instantly. Delay the free to fix this issue.
2021-06-04 10:44:36 +08:00
Suren Gabrielyan
03de74a728 mdns: Fix of crash when wifi interface get deleted and mdns receives the packets
Closes https://github.com/espressif/esp-idf/issues/6973
2021-06-02 13:43:54 +00:00
Suren Gabrielyan
53c18a85db Docs: Added README.md for lwip fuzzer tests
Closes IDFCI-540
2021-05-18 17:52:07 +04:00
David Cermak
5cce919cbe mdns: Fixed the ip header TTL to be correctly set to 255
Defined in https://tools.ietf.org/html/rfc6762#section-11: All Multicast DNS responses (including responses sent via unicast)
   SHOULD be sent with IP TTL set to 255
2021-04-12 13:24:19 +00:00
David Cermak
34049454df mdns: Fix parsing answers with questions when instance name not set
mdns resolver didn't correctly resolved queries when host name wasn't
assigned. Fixed by allowing processing also if some answer present
(non-strict mode)

Closes https://github.com/espressif/esp-idf/issues/6598
2021-04-12 13:24:19 +00:00
David Cermak
b649603a0d mdns: Fix the resolver to correctly parse it's own non-strict answers
The resolver was able to respond correctly, but would also resolve its
own queries and cause issues with BCT 1.5.2, specifically
* MULTIPLE QUESTIONS - DUPLICATE SUPPRESSION
* MULTIPLE QUESTIONS - DISTRIBUTED DUPLICATE SUPPRESSION
tests failed.
2021-04-12 13:24:19 +00:00
suren.gabrielyan
0eee31546d mdns: Add MDNS_STRICT_MODE config option
Strict mode was hardcoded in private header file, but it's useful for
users to enable/disable it depending on the mdns library they are using.
e.g. Avahi might not resolve the non-strict answers.
2021-04-12 13:24:19 +00:00
Renz Bagaporo
39cf818838 freertos: common config header 2021-03-22 12:19:03 +08:00
suren.gabrielyan
55716945a9 mdns: Removed freeRTOS dependancies from fuzzer tests 2021-03-11 08:57:36 +00:00
suren.gabrielyan
9f8d2b944d mDNS: Updated APIs description and shows the warning when hostname contains domain name during the query
Closes https://github.com/espressif/esp-idf/issues/6590
2021-03-10 13:38:13 +00:00
yuanjm
da58235a0e components: Use CONFIG_LWIP_IPV6 to strip IPv6 function in components 2021-02-23 18:26:03 +08:00
suren.gabrielyan
2b9d2c06f5 mdns: add bound check when setting interface as duplicate
Closes IDF-2787

Partially addresses https://github.com/espressif/esp-idf/issues/6440
2021-02-15 06:43:51 +00:00
suren.gabrielyan
be0ae1ebbb mDNS: Fix of text length calculation when detecting a collision 2021-01-18 12:54:27 +00:00
Angus Gratton
9769be3fde Merge branch 'bugfix/fix_sign_compare' into 'master'
global: fix sign-compare warnings for system level components

See merge request espressif/esp-idf!11252
2021-01-13 12:45:05 +08:00
David Čermák
76f6dd6214 lwip: Moved default SNTP API to esp_sntp.h
and make sntp.h in port folders of lwip component obsoleted
2021-01-13 10:28:34 +08:00
morris
753a929525 global: fix sign-compare warnings 2021-01-12 14:05:08 +08:00
David Cermak
0693e172de mdns: Allow resolve its own non-strict answers
the mDNS responder should not repeat questions when replying, however resolvers
must ignore these questions field if they are present. esp-idf mDNS
library does include questions in answering packets (thus not strictly
following the RFC6762) so the resolver did not correctly resolved
another instance host name.

Closes https://github.com/espressif/esp-idf/issues/6190
2020-12-29 13:18:00 +00:00
suren.gabrielyan
f33772c960 mDNS: Fix of collision detection during txt length calculation
Closes https://github.com/espressif/esp-idf/issues/6114
2020-12-18 15:38:30 +00:00
Angus Gratton
5228d9f9ce esp32c3: Apply one-liner/small changes for ESP32-C3 2020-12-01 10:58:50 +11:00
morris
b7ecccd901 test: fix several test build error 2020-11-16 13:30:49 +08:00
Angus Gratton
87e13baaf1 freertos: Add RISC-V port
Changes come from internal branch commit a6723fc
2020-11-13 07:49:11 +11:00
David Cermak
7ac97616c1 mdns: Fix wrong mdns source address if lwIP IPv6 zones disabled
The struct definition of ip6_addr_t in lwip and esp_ip6_addr_t
differs since zone could be possibly disabled in lwip. Using memcpy to copy the
address will cause wrong source address. Copy the entries manually
instead.

Merges https://github.com/espressif/esp-idf/pull/6055
2020-11-11 11:56:44 +00: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
Angus Gratton
98a0cc783f test_compile_fuzzers: Fix include paths for host build
Regression in 988be69466, need to add
esp_hw_support component include dir here.
2020-11-05 16:30:07 +11:00
Anton Maklakov
b5b2738644 Merge branch 'test/ci_fuzzer_precheck' into 'master'
CI: Add a test to pre-check fuzzer tests compilation before weekly run

See merge request espressif/esp-idf!10332
2020-11-04 12:22:53 +08:00
Renz Bagaporo
79887fdc6c soc: descriptive part occupy whole component 2020-10-28 07:21:29 +08:00