… | |
… | |
766 | |
766 | |
767 | $state{next} = sub { |
767 | $state{next} = sub { |
768 | return unless exists $state{fh}; |
768 | return unless exists $state{fh}; |
769 | |
769 | |
770 | my $target = shift @target |
770 | my $target = shift @target |
771 | or do { |
|
|
772 | %state = (); |
|
|
773 | return $connect->(); |
771 | or return (%state = (), $connect->()); |
774 | }; |
|
|
775 | |
772 | |
776 | my ($domain, $type, $proto, $sockaddr) = @$target; |
773 | my ($domain, $type, $proto, $sockaddr) = @$target; |
777 | |
774 | |
778 | # socket creation |
775 | # socket creation |
779 | socket $state{fh}, $domain, $type, $proto |
776 | socket $state{fh}, $domain, $type, $proto |