-  setstate_forward(name,state,0);\r
-  resolveloop(timeout);\r
-  result := state.resultbin;\r
+  begin\r
+  {$ifdef syncdnscore}\r
+    {$ifdef ipv6}initpreferredmode;{$endif}\r
+\r
+    if ((overridednsserver = '') or hostsfile_alsocustomserver) and (not hostsfile_disabled) then begin\r
+      //try a hosts file lookup\r
+      l := hostsfile_forwardlookuplist(name);\r
+      if (biniplist_getcount(l) > 0) then begin\r
+        result := l;\r
+        exit;\r
+      end;\r
+    end;\r
+\r
+    numsockused := 0;\r
+\r
+    result := biniplist_new;\r
+    if (useaf <> useaf_v6) then begin\r
+      setstate_forward(name,state[numsockused],af_inet);\r
+      inc(numsockused);\r
+    end;\r
+    {$ifdef ipv6}\r
+    if (useaf <> useaf_v4) then begin\r
+      setstate_forward(name,state[numsockused],af_inet6);\r
+      inc(numsockused);\r
+    end;\r
+    {$endif}\r
+\r
+    resolveloop(timeout,state,numsockused);\r
+\r
+    if (numsockused = 1) then begin\r
+      biniplist_addlist(result,state[0].resultlist);\r
+    {$ifdef ipv6}\r
+    end else if (useaf = useaf_preferv6) then begin\r
+      biniplist_addlist(result,state[1].resultlist);\r
+      biniplist_addlist(result,state[0].resultlist);\r
+    end else begin\r
+      biniplist_addlist(result,state[0].resultlist);\r
+      biniplist_addlist(result,state[1].resultlist);\r
+    {$endif}\r
+    end;\r
+  {$else}\r
+    result := biniplist_new;\r
+  {$endif}\r
+  end;\r