mirror of
https://github.com/espressif/esp-idf.git
synced 2025-08-04 05:04:33 +02:00
Merge branch 'bugfix/mdns_add_result_count_async' into 'master'
mdns: Added results count to async API (GitHub PR) Closes IDFGH-6340 See merge request espressif/esp-idf!16362
This commit is contained in:
@@ -546,12 +546,13 @@ esp_err_t mdns_query_async_delete(mdns_search_once_t* search);
|
||||
* @param search pointer to search object
|
||||
* @param timeout time in milliseconds to wait for answers
|
||||
* @param results pointer to the results of the query
|
||||
* @param num_results pointer to the number of the actual result items (set to NULL to ignore this return value)
|
||||
*
|
||||
* @return
|
||||
* True if search has finished before or at timeout
|
||||
* False if search timeout is over
|
||||
*/
|
||||
bool mdns_query_async_get_results(mdns_search_once_t* search, uint32_t timeout, mdns_result_t ** results);
|
||||
bool mdns_query_async_get_results(mdns_search_once_t* search, uint32_t timeout, mdns_result_t ** results, uint8_t * num_results);
|
||||
|
||||
/**
|
||||
* @brief Query mDNS for host or service asynchronousely.
|
||||
|
@@ -5573,10 +5573,15 @@ esp_err_t mdns_query_async_delete(mdns_search_once_t* search)
|
||||
return ESP_OK;
|
||||
}
|
||||
|
||||
bool mdns_query_async_get_results(mdns_search_once_t* search, uint32_t timeout, mdns_result_t ** results)
|
||||
bool mdns_query_async_get_results(mdns_search_once_t* search, uint32_t timeout, mdns_result_t ** results, uint8_t * num_results)
|
||||
{
|
||||
if (xSemaphoreTake(search->done_semaphore, pdMS_TO_TICKS(timeout)) == pdTRUE) {
|
||||
if (results) {
|
||||
*results = search->result;
|
||||
}
|
||||
if (num_results) {
|
||||
*num_results = search->num_results;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
|
@@ -146,7 +146,7 @@ static bool check_and_print_result(mdns_search_once_t *search)
|
||||
{
|
||||
// Check if any result is available
|
||||
mdns_result_t * result = NULL;
|
||||
if (!mdns_query_async_get_results(search, 0, &result)) {
|
||||
if (!mdns_query_async_get_results(search, 0, &result, NULL)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user