class MyV6Resolver : public Resolver
{
+ bool fw;
public:
- MyV6Resolver(const std::string &source) : Resolver(source, DNS_QUERY_AAAA) { }
+ MyV6Resolver(const std::string &source, bool forward) : Resolver(source, forward ? DNS_QUERY_AAAA : DNS_QUERY_PTR6)
+ {
+ fw = forward;
+ }
virtual void OnLookupComplete(const std::string &result)
{
- log(DEBUG,"*** RESOLVER COMPLETED LOOKUP, IP IS: '%s'",result.c_str());
+ log(DEBUG,"*** RESOLVER COMPLETED %s LOOKUP, IP IS: '%s'",fw ? "FORWARD" : "REVERSE", result.c_str());
}
virtual void OnError(ResolverError e, const std::string &errormessage)
try
{
- MyV6Resolver* r = new MyV6Resolver("shake.stacken.kth.se");
+ MyV6Resolver* r = new MyV6Resolver("shake.stacken.kth.se", true);
+ Srv->AddResolver(r);
+ r = new MyV6Resolver("2001:6b0:1:ea:202:a5ff:fecd:13a6", false);
Srv->AddResolver(r);
}
catch (ModuleException& e)