Help for this page

Select Code to Download


  1. or download this
    use constant {
      DARWIN_SYS_getsockopt => 118, # from bsd/kern/syscalls.master
      GETSOCKOPT_MAXLEN => 512, # enough for now I guess...
    ...
      my $rv=syscall(DARWIN_SYS_getsockopt,fileno($_[0]),$_[1],$_[2],$optv
    +al,$optlen);
      return $rv < 0 ? undef : substr($optval,0,unpack('i',$optlen));
    }
    
  2. or download this
    use Socket qw'PF_INET SOCK_STREAM IPPROTO_TCP inet_aton sockaddr_in';
    
    use constant {
    ...
    }else{
      print "This system doesn't seem to be affected by the problem (TCP_I
    +NFO length: $tcpInfoLength).\n";
    }
    
  3. or download this
    sub getsockopt_darwin_gen {
      return &CORE::getsockopt if(@_ < 4);
      my $optlen = pop;
    ...
      my $rv=syscall(DARWIN_SYS_getsockopt,fileno($_[0]),$_[1],$_[2],$optv
    +al,$optlen);
      return $rv < 0 ? undef : substr($optval,0,unpack('i',$optlen));
    }