X-Git-Url: http://git.monstr.eu/?a=blobdiff_plain;f=net%2Fdns_resolver%2Fdns_query.c;h=c32be292c7e382c4a2c600e9e3c559906ff9784b;hb=9a459f6812fc26e0eb24bbe9c388000e23f67f6b;hp=03d5255f5cf2a08cd4a1efe8d4a57638d5c15f65;hpb=26b55633a891a28bf04f42882de145eb8e9cb9ad;p=linux-2.6-microblaze.git diff --git a/net/dns_resolver/dns_query.c b/net/dns_resolver/dns_query.c index 03d5255f5cf2..c32be292c7e3 100644 --- a/net/dns_resolver/dns_query.c +++ b/net/dns_resolver/dns_query.c @@ -136,6 +136,11 @@ int dns_query(const char *type, const char *name, size_t namelen, if (ret < 0) goto put; + /* If the DNS server gave an error, return that to the caller */ + ret = rkey->type_data.x[0]; + if (ret) + goto put; + upayload = rcu_dereference_protected(rkey->payload.data, lockdep_is_held(&rkey->sem)); len = upayload->datalen;