fix slow send speed, new fifo allows get of entire buffer
[lcore.git] / dnssync.pas
index 7dedcca6ebf47874b0c90b90014ae6fb7c5f1ece..66d9802553dfab827edfe9e49217a340d01fe469 100644 (file)
@@ -31,9 +31,9 @@ interface
 \r
 //convert a name to an IP\r
 //will return v4 or v6 depending on what seems favorable, or manual preference setting\r
-//on error the binip will have a family of 0 (other fiels are also currently\r
+//on error the binip will have a family of 0 (other fields are also currently\r
 //zeroed out but may be used for further error information in future)\r
-//timeout is in miliseconds, it is ignored when using windows dns\r
+//timeout is in milliseconds, it is ignored when using windows dns\r
 function forwardlookup(name:ansistring;timeout:integer):tbinip;\r
 \r
 //convert a name to a list of all IP's returned\r
@@ -94,7 +94,7 @@ begin
 var\r
   temp:ttimeval;\r
 begin\r
-  gettimeofday(temp);\r
+  gettimemonotonic(temp);\r
   result := ((temp.tv_usec div 1000) + (temp.tv_sec * 1000)) and tsmask;\r
 {$endif}\r
 end;\r
@@ -256,7 +256,7 @@ begin
       selecttimeout.tv_sec := 0;\r
       selecttimeout.tv_usec := retryafter;\r
     end;\r
-    //find the highest of the used fd's\r
+    //find the highest of the used fds\r
     b := 0;\r
     for socknum := numsockused-1 downto 0 do if fd[socknum] > b then b := fd[socknum];\r
     selectresult := select(b+1,@fds,nil,nil,@selecttimeout);\r
@@ -328,7 +328,7 @@ begin
   end;\r
 \r
   {$ifdef mswindows}\r
-  if usewindns then begin\r
+  if usewindns and (overridednsserver = '') then begin\r
     if (useaf = useaf_v4) then a := af_inet else if (useaf = useaf_v6) then a := af_inet6 else a := 0;\r
     result := winforwardlookuplist(name,a,dummy);\r
     {$ifdef ipv6}\r
@@ -399,7 +399,7 @@ var
   state:tdnsstatearr;\r
 begin\r
   {$ifdef mswindows}\r
-    if usewindns then begin\r
+    if usewindns and (overridednsserver = '') then begin\r
       result := winreverselookup(ip,dummy);\r
       exit;\r
     end;\r