diff --git a/features/netsocket/nsapi_dns.cpp b/features/netsocket/nsapi_dns.cpp index 4f95771702..0c270bb17c 100644 --- a/features/netsocket/nsapi_dns.cpp +++ b/features/netsocket/nsapi_dns.cpp @@ -214,7 +214,7 @@ static nsapi_size_or_error_t nsapi_dns_query_multiple(NetworkStack *stack, const socket.set_timeout(DNS_TIMEOUT); // create network packet - uint8_t *packet = (uint8_t *)malloc(DNS_BUFFER_SIZE); + uint8_t * const packet = (uint8_t *)malloc(DNS_BUFFER_SIZE); if (!packet) { return NSAPI_ERROR_NO_MEMORY; } @@ -243,8 +243,9 @@ static nsapi_size_or_error_t nsapi_dns_query_multiple(NetworkStack *stack, const } const uint8_t *response = packet; - if (dns_scan_response(&response, addr, addr_count) > 0) { - result = NSAPI_ERROR_OK; + int count = dns_scan_response(&response, addr, addr_count); + if (count > 0) { + result = count; } /* The DNS response is final, no need to check other servers */