Francois PIETTE wrote: >> When new property SocketFamily is set to "sfAny" method >> DnsLookup may now return a list containing both IPv4 and IPv6 >> strings. Looks like Windows always returns IPv6 first. >> The top item is also copied to string FDnsResult. >> Should I change this order? > > An idea: Give the opportunity for the developer to select the > priority. Maybe splitting sfAny to two values: one with IPv6 priority > and one with IPv4 priority. Maybe sfAny should be kept and mapped to > Windows own default while the two new values could override Windows > default. I think the component default should be IPv4 to get best > backward compatibility.
Sounds well, though makes things a bit more comlicated. What about this naming? (It's still no problem to change it) { sfAny = Windows default preference, sfAnyIPv4 = IPv4 preference, } { sfAnyIPv6 = IPv6 preference, sfIPv4 = explicit IPv4, sfIPv6 = explicit IPv6 } TSocketFamily = (sfAny, sfAnyIPv4, sfAnyIPv6, sfIPv4, sfIPv6); Another question: Currently I made one breaking change that IMO cannot be prevented without tons of workaround code. That is type change of TCustomWSocket public field/property "sin" from TSockAddrIn to TSockAddrIn6. TSockAddrIn6 can be passed to all old functions by typ casting it to TSockAddrIn and passing the size of TSockAddrIn. However if anybody has an idea how to easily avoid this breaking change please let me know. I already adapted a few UDP demo apps. and WSocket.pas to work with "sin: TSockAddrIn6;" -- Arno Garrels -- To unsubscribe or change your settings for TWSocket mailing list please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket Visit our website at http://www.overbyte.be