+ {$ifdef ipv6}\r
+ if (numsockused = 1) or (states[socketno xor 1].resultaction=action_done) then\r
+ //if using two sockets we need to wait until both sockets are in the done\r
+ //state before firing the event\r
+ {$endif}\r
+ begin\r
+ fresultlist := biniplist_new;\r
+ if (numsockused = 1) then begin\r
+ //writeln('processing for one state');\r
+ biniplist_addlist(fresultlist,states[0].resultlist);\r
+ {$ifdef ipv6}\r
+ end else if (requestaf = useaf_preferv6) then begin\r
+ //writeln('processing for two states, ipv6 preference');\r
+ //writeln('merging lists '+biniplist_tostr(states[1].resultlist)+' and '+biniplist_tostr(states[0].resultlist));\r
+ biniplist_addlist(fresultlist,states[1].resultlist);\r
+ biniplist_addlist(fresultlist,states[0].resultlist);\r
+ end else begin\r
+ //writeln('processing for two states, ipv4 preference');\r
+ biniplist_addlist(fresultlist,states[0].resultlist);\r
+ biniplist_addlist(fresultlist,states[1].resultlist);\r
+ {$endif}\r
+ end;\r
+ //writeln(biniplist_tostr(fresultlist));\r
+ onrequestdone(self,0);\r
+ end;\r