* fixed NT services not working. app must now call lcoreinit() at some point before...
[lcore.git] / dnswin.pas
index ffe472ba18fe2580d0180d8f256afe4e85fbc869..19eabe46124018816564f0b71d7a575ffcc69adf 100755 (executable)
@@ -20,7 +20,6 @@ type
   //release should only be called from the main thread\r
   tdnswinasync=class(tthread)\r
   private\r
-    ipv6preffered : boolean;\r
     freverse : boolean;\r
     error : integer;\r
     freewhendone : boolean;\r
@@ -30,9 +29,9 @@ type
   public\r
     onrequestdone:tsocketevent;\r
     name : string;\r
-    ip : tbinip;\r
+    iplist : tbiniplist;\r
 \r
-    procedure forwardlookup(name:string;ipv6preffered:boolean);\r
+    procedure forwardlookup(name:string);\r
     procedure reverselookup(ip:tbinip);\r
     destructor destroy; override;\r
     procedure release;\r
@@ -281,16 +280,16 @@ begin
   end;\r
 end;\r
 \r
-procedure tdnswinasync.forwardlookup(name:string;ipv6preffered:boolean);\r
+procedure tdnswinasync.forwardlookup(name:string);\r
 begin\r
   self.name := name;\r
-  self.ipv6preffered := ipv6preffered;\r
   freverse := false;\r
   resume;\r
 end;\r
 procedure tdnswinasync.reverselookup(ip:tbinip);\r
 begin\r
-  self.ip := ip;\r
+  iplist := biniplist_new;\r
+  biniplist_add(iplist,ip);\r
   freverse := true;\r
   resume;\r
 end;\r
@@ -298,14 +297,14 @@ end;
 procedure tdnswinasync.execute;\r
 var\r
   error : integer;\r
-  l:tbiniplist;\r
+\r
 begin\r
   error := 0;\r
   if reverse then begin\r
-    name := winreverselookup(ip,error);\r
+    name := winreverselookup(biniplist_get(iplist,0),error);\r
   end else begin\r
-    l := winforwardlookuplist(name,0,error);\r
-    ip := biniplist_get(l,0);\r
+    iplist := winforwardlookuplist(name,0,error);\r
+\r
   end;\r
   postmessage(hwnddnswin,wm_user,error,taddrint(self));\r
 end;\r