diff --git a/ares/ares_gethostbyaddr.c b/ares/ares_gethostbyaddr.c index b3abc093ec121dbfc067c02b092cd0cf6095b0b2..0617c0a59aa484126dc004716db1d2eab4dac321 100644 --- a/ares/ares_gethostbyaddr.c +++ b/ares/ares_gethostbyaddr.c @@ -142,7 +142,11 @@ static void next_lookup(struct addr_query *aquery) return; case 'f': status = file_lookup(&aquery->addr, aquery->family, &host); - if (status != ARES_ENOTFOUND) + + /* this status check below previously checked for !ARES_ENOTFOUND, + but we should not assume that this single error code is the one + that can occur, as that is in fact no longer the case */ + if (status == ARES_SUCCESS) { end_aquery(aquery, status, host); return;