Help for this page

Select Code to Download


  1. or download this
    $p=shift;$a=a(shift);i(shift);socket S,2,1,6;bind S,$a;listen
    S,5;undef$/;while(@ARGV&&($_="$p $a f".shift)||accept(C,S)&&($_=<C>)&&
    +close
    ...
    a{$_[0]=~/:/;pack'CxnC4x8',2,$',split'\.',$`}sub
    t{socket X,2,1,6;$w=shift;if(connect X,a($w)){print X
    "$p $_[0] $_[1]/$_[2]";close X}else{undef$k{$p}}}
    
  2. or download this
    $/=$_;$(=shift;$a=shift;i(shift);socket S,2,1,6;bind S,a($a);listen
    S,5;while(@ARGV&&($_="$( $a f".shift)||accept(C,S)&&($_=<C>)&&close
    ...
    keys%k}sub t{socket X,2,1,6;if(connect X,a($w=shift)){print X
    "$( $_[0] $_[1]/$_[2]";close X}else{undef$k{$w}}}sub
    e{open F,">$_[1]";print F $_[2];close F}