diff --git a/features/netsocket/nsapi_dns.cpp b/features/netsocket/nsapi_dns.cpp index 8ca94de563b..de498660210 100644 --- a/features/netsocket/nsapi_dns.cpp +++ b/features/netsocket/nsapi_dns.cpp @@ -217,7 +217,7 @@ static int nsapi_dns_query_multiple(NetworkStack *stack, const char *host, return NSAPI_ERROR_NO_MEMORY; } - int result = NSAPI_ERROR_DNS_FAILURE; + int result = NSAPI_ERROR_OK; // check against each dns server for (unsigned i = 0; i < DNS_SERVERS_SIZE; i++) { @@ -243,8 +243,11 @@ static int nsapi_dns_query_multiple(NetworkStack *stack, const char *host, } const uint8_t *response = packet; - dns_scan_response(&response, addr, addr_count); - break; + if (!dns_scan_response(&response, addr, addr_count)) { + result = NSAPI_ERROR_DNS_FAILURE; + } else { + break; + } } // clean up packet