| 347 | | |
|---|
| 348 | | } |
|---|
| 349 | | if(!foundOne) { |
|---|
| 350 | | if(d_doRecursion && DP->recurseFor(p)) { |
|---|
| 351 | | try { |
|---|
| 352 | | Resolver resolver; |
|---|
| 353 | | resolver.resolve(arg()["recursor"],i->content.c_str(),QType::A); |
|---|
| 354 | | Resolver::res_t res=resolver.result(); |
|---|
| 355 | | for(Resolver::res_t::const_iterator j=res.begin();j!=res.end();++j) { |
|---|
| 356 | | if(j->d_place==DNSResourceRecord::ANSWER) { |
|---|
| 357 | | rr=*j; |
|---|
| 358 | | rr.d_place=DNSResourceRecord::ADDITIONAL; |
|---|
| 359 | | r->addRecord(rr); |
|---|
| 360 | | } |
|---|
| 361 | | } |
|---|
| 362 | | } |
|---|
| 363 | | catch(ResolverException& re) { |
|---|
| 364 | | // L<<Logger::Error<<"Trying to do additional processing for answer to '"<<p->qdomain<<"' query: "<<re.reason<<endl; |
|---|
| 365 | | } |
|---|
| 366 | | } |
|---|