| line | true | false | branch | 
 
| 170 | 0 | 12 | if (exists $Net::Gen::_missing{$Net::Gen::AUTOLOAD}) | 
 
| 172 | 0 | 0 | if $wh and ref $wh eq 'CODE' and $wh == $nullsub | 
 
| 176 | 0 | 12 | if (@_ and ref $_[0] and @_ < 3 and exists ${*{$_[0];};}{'Keys'}{$constname}) | 
 
| 179 | 0 | 0 | if $Net::Gen::adebug | 
 
| 186 | 0 | 12 | if $Net::Gen::adebug | 
 
| 223 | 0 | 4 | if @_ != 3 or ref $opts ne 'HASH' | 
 
| 230 | 0 | 4 | if ref $class | 
 
| 236 | 14 | 48 | if exists $Net::Gen::_missing{"${class}::$opt"} | 
 
| 238 | 0 | 48 | if $@ or not defined $oval or $oval eq '' | 
 
| 309 | 0 | 0 | if ref $this | 
 
| 312 | 0 | 0 | if defined $newval | 
 
| 320 | 347 | 0 | if defined wantarray | 
 
| 321 | 0 | 347 | if defined $newval | 
 
| 331 | 169 | 22 | unless defined $msg | 
 
| 332 | 0 | 0 | unless $aref | 
 
|  | 0 | 191 | if $level and $this->_debug >= $level | 
 
| 341 | 0 | 8 | unless defined $val | 
 
| 342 | 0 | 8 | if $val eq '' or $val =~ /\D/ | 
 
| 359 | 0 | 0 | if @_ > 3 | 
 
| 361 | 0 | 0 | if defined wantarray | 
 
| 362 | 0 | 0 | if @_ > 2 | 
 
| 370 | 0 | 19 | unless defined $newval | 
 
| 373 | 0 | 19 | unless defined ${*$self;}{'Parms'}{$what} | 
 
| 374 | 17 | 2 | if ($newval) { } | 
 
| 376 | 9 | 8 | if (defined $F_GETFL and defined $F_SETFL and defined $nonblock_flag and $self->isopen) | 
 
| 379 | 2 | 7 | if ((CORE::fcntl($self, $F_GETFL, 0) & 2048) == 2048) | 
 
| 384 | 0 | 2 | unless eval {
	do {
	CORE::fcntl $self, $F_SETFL, CORE::fcntl($self, $F_GETFL, 0) & 18446744073709549567
}
} | 
 
| 392 | 0 | 2 | unless (defined $F_GETFL and defined $F_SETFL and defined $nonblock_flag) | 
 
| 397 | 2 | 0 | if ($self->isopen) | 
 
| 398 | 2 | 0 | if ((CORE::fcntl($self, $F_GETFL, 0) & 2048) != 2048) | 
 
| 403 | 0 | 2 | unless eval {
	do {
	CORE::fcntl $self, $F_SETFL, CORE::fcntl($self, $F_GETFL, 0) | 2048
}
} | 
 
| 416 | 0 | 1 | if @_ > 2 | 
 
| 418 | 1 | 0 | if defined wantarray | 
 
| 419 | 0 | 1 | if @_ > 1 | 
 
| 427 | 0 | 3 | unless (defined $newval) | 
 
| 430 | 0 | 3 | if (not length $newval or $newval =~ /\D/) { } | 
 
| 456 | 0 | 5 | if @_ != 2 or ref $names ne 'ARRAY' | 
 
| 472 | 5 | 0 | if (ref $names eq 'HASH') { } | 
 
| 473 | 0 | 5 | if @_ != 2 | 
 
| 479 | 0 | 0 | if @_ < 3 or ref $names ne 'ARRAY' | 
 
| 482 | 0 | 0 | if @_ == 3 and ref $_[2] eq 'ARRAY' | 
 
| 484 | 0 | 5 | if @$handlers != @$names or grep((ref $_ ne 'CODE'), @$handlers) | 
 
| 498 | 0 | 3 | if ref $opts ne 'HASH' | 
 
| 538 | 1 | 6 | if $parms and ref $parms eq 'HASH' | 
 
| 539 | 7 | 0 | unless defined $parms{'debug'} | 
 
| 540 | 7 | 0 | unless defined $parms{'blocking'} | 
 
| 541 | 0 | 1 | if (@_ > 2 and $parms and ref $parms eq 'HASH') | 
 
| 549 | 5 | 2 | if (%Keys) { } | 
 
| 560 | 0 | 7 | if ($class eq 'Net::Gen') | 
 
| 561 | 0 | 0 | unless ($self->init) | 
 
| 567 | 0 | 7 | if (($self || $pack)->_debug) | 
 
| 568 | 0 | 0 | if (defined $self) { } | 
 
| 584 | 0 | 60 | unless @_ > 1 and ref $newparams eq 'HASH' | 
 
| 586 | 0 | 60 | if @_ > 4 | 
 
| 592 | 0 | 0 | defined $newval ? : | 
 
|  | 0 | 167 | if $self->debug | 
 
| 597 | 0 | 167 | unless exists ${*$self;}{'Keys'}{$parm} | 
 
| 599 | 5 | 162 | if $newonly < 0 and defined $$pslot | 
 
| 600 | 83 | 79 | unless ($check) | 
 
| 604 | 2 | 5 | if defined $$pslot eq defined $newval and !defined($newval) || $$pslot eq $newval || !($$pslot =~ /\D/ || $newval =~ /\D/) && length $newval && length $$pslot && $$pslot == $newval | 
 
| 615 | 0 | 160 | if $newonly > 0 and defined $$pslot | 
 
| 618 | 43 | 117 | if (defined ${*$self;}{'Keys'}{$parm} and ref ${*$self;}{'Keys'}{$parm} eq 'CODE') | 
 
| 622 | 0 | 43 | if $rval | 
 
| 628 | 0 | 60 | $errs ? : | 
 
| 639 | 3 | 5 | unless @k | 
 
| 641 | 0 | 5 | unless $self->setparams(\%k) | 
 
| 651 | 0 | 8 | if @_ | 
 
| 654 | 0 | 8 | unless ref $curparms eq 'HASH' | 
 
| 670 | 7 | 0 | $self->checkparams ? : | 
 
| 678 | 0 | 36 | if @_ > 4 | 
 
| 680 | 16 | 20 | if ($noundef) { } | 
 
| 681 | 1 | 15 | unless defined ${*$self;}{'Parms'}{$key} | 
 
| 684 | 4 | 16 | unless exists ${*$self;}{'Parms'}{$key} | 
 
| 694 | 0 | 17 | if @_ < 2 or not ref $self or ref $aref ne 'ARRAY' | 
 
| 696 | 0 | 17 | if @_ > 3 | 
 
| 698 | 0 | 17 | unless defined wantarray | 
 
| 699 | 2 | 15 | if (wantarray) { } | 
 
| 701 | 0 | 2 | if ($noundef) { } | 
 
| 703 | 0 | 0 | defined ${*$self;}{'Parms'}{$_} ? : | 
 
| 709 | 2 | 0 | exists ${*$self;}{'Parms'}{$_} ? : | 
 
| 716 | 15 | 0 | if ($noundef) { } | 
 
| 751 | 0 | 6 | if $self->isopen | 
 
| 753 | 0 | 6 | unless defined $$pf | 
 
| 754 | 0 | 6 | unless defined $$af | 
 
| 755 | 0 | 6 | unless defined $$type | 
 
| 756 | 4 | 2 | unless defined $$proto | 
 
| 757 | 0 | 6 | if ($$pf == 0 and $$af != 0) { } | 
 
|  | 0 | 12 | elsif ($$af == 0 and $$pf != 0) { } | 
 
| 763 | 6 | 0 | if (${*$self;}{'isopen'} = socket($self, $$pf, $$type, $$proto)) | 
 
| 783 | 0 | 0 | unless defined $timeout or ${*$self;}{'Parms'}{'blocking'} | 
 
| 788 | 0 | 0 | if $nfound | 
 
| 791 | 0 | 0 | unless ($nfound) | 
 
| 798 | 0 | 0 | if (${*$self;}{'Sockopts'}{'SOL_SOCKET'}{'SO_ERROR'}) | 
 
| 804 | 0 | 0 | unless defined $rval | 
 
| 806 | 0 | 0 | if ($rval) | 
 
| 810 | 0 | 0 | unless defined getpeername $self | 
 
| 819 | 0 | 0 | if ($type and $type == 1) | 
 
| 822 | 0 | 0 | unless defined $rval | 
 
| 826 | 0 | 0 | unless defined getpeername $self | 
 
| 828 | 0 | 0 | if $rval | 
 
| 829 | 0 | 0 | if $connok{0 + $!} | 
 
| 837 | 0 | 2 | if (${*$self;}{'isconnecting'}) | 
 
| 838 | 0 | 0 | if (${*$self;}{'Parms'}{'dstaddr'} and ${*$self;}{'Parms'}{'dstaddr'} ne $addr) | 
 
| 842 | 0 | 0 | if ${*$self;}{'Parms'}{'debug'} > 2 | 
 
| 844 | 0 | 0 | unless $self->open | 
 
| 845 | 0 | 0 | if ($self->getparam('srcaddr') || $self->getparam('srcaddrlist') and not $self->isbound) | 
 
| 848 | 0 | 0 | unless $self->bind | 
 
| 856 | 2 | 0 | unless (${*$self;}{'isconnecting'}) | 
 
| 858 | 1 | 1 | if (${*$self;}{'Parms'}{'netgen_fakeconnect'}) | 
 
| 859 | 1 | 0 | if (not $self->isbound) { } | 
 
| 868 | 1 | 0 | if $rval | 
 
| 869 | 0 | 0 | if $connok{0 + $!} | 
 
| 870 | 0 | 0 | unless $connip{0 + $!} | 
 
| 873 | 0 | 0 | unless defined $timeout | 
 
| 885 | 0 | 2 | if $$hval{'isconnected'} or not $$hval{'isconnecting'} and $$hval{'wasconnected'} | 
 
| 888 | 0 | 2 | unless $self->isopen or $self->open | 
 
| 889 | 0 | 0 | if ($$parms{'srcaddr'} || $$parms{'srcaddrlist'} and not $$hval{'isconnecting'} and not $self->isbound) | 
 
| 892 | 0 | 0 | unless $self->bind | 
 
| 898 | 1 | 1 | if (defined($timeout = $$parms{'timeout'}) and $self->blocking) | 
 
| 900 | 0 | 1 | unless $self->setparams({'blocking', 0}) | 
 
| 903 | 2 | 0 | if (defined $dlist and ref $dlist eq 'ARRAY' and not $$hval{'isconnecting'}) { } | 
 
| 910 | 2 | 0 | if $rval | 
 
| 911 | 2 | 0 | if $rval or defined $timeout and not $timeout and $connip{0 + $!} | 
 
| 919 | 0 | 2 | unless $rval | 
 
| 923 | 0 | 2 | unless ($rval) | 
 
| 938 | 2 | 5 | if defined($dad = getpeername $self) | 
 
| 939 | 7 | 0 | if defined($sad = getsockname $self) | 
 
| 941 | 2 | 0 | defined $sad || defined $dad ? : | 
 
|  | 2 | 5 | wantarray ? : | 
 
| 956 | 2 | 3 | unless $self->isconnected or $self->isconnecting | 
 
| 958 | 0 | 0 | unless defined $how and not $how =~ /\D/ and length $how | 
 
| 961 | 0 | 3 | unless $xhow | 
 
| 968 | 3 | 0 | if $was == 3 or not defined getpeername $self and ${*$self;}{'wasconnected'} = 3 | 
 
| 982 | 5 | 0 | if $self->isopen | 
 
| 997 | 1 | 5 | unless $wasopen | 
 
| 1014 | 0 | 6 | if @_ < 2 or not ref $self | 
 
| 1016 | 5 | 1 | unless defined $flags | 
 
| 1017 | 0 | 6 | if @_ > 4 | 
 
| 1019 | 2 | 4 | if (not defined $whither || $self->isconnected) { } | 
 
|  | 1 | 4 | elsif ($self->isconnected and ${*$self;}{'Parms'}{'netgen_fakeconnect'}) { } | 
 
| 1020 | 0 | 2 | if ($self->getparams(['dstaddrlist', 'dstaddr'], 1) > 0) { } | 
 
| 1021 | 0 | 0 | unless $self->connect | 
 
| 1022 | 0 | 0 | if (${*$self;}{'Parms'}{'netgen_fakeconnect'}) | 
 
| 1027 | 0 | 2 | if ($flags & 1) { } | 
 
| 1038 | 0 | 1 | if (defined $whither) | 
 
| 1045 | 0 | 6 | unless $self->isopen | 
 
| 1047 | 4 | 2 | defined $whither ? : | 
 
| 1075 | 0 | 0 | unless @_ and ref $self | 
 
| 1080 | 0 | 0 | unless unpack('I', getsockopt($self, 1, 3)) == 1 | 
 
| 1083 | 0 | 0 | $F_GETFL ? : | 
 
| 1084 | 0 | 0 | defined $flags && defined $nonblock_flag ? : | 
 
|  | 0 | 0 | if (defined $flags && defined $nonblock_flag ? $flags & 2048 : 1) | 
 
| 1100 | 0 | 5 | unless @_ and ref $self | 
 
| 1102 | 0 | 5 | if @_ > 4 | 
 
| 1104 | 0 | 5 | unless $self->isopen or $self->open | 
 
| 1106 | 2 | 3 | unless $maxlen | 
 
| 1109 | 3 | 2 | unless defined $flags | 
 
| 1110 | 0 | 5 | if (defined ${*$self;}{'sockLineBuf'} and not $flags) | 
 
| 1112 | 0 | 0 | if (length $buf > $maxlen) { } | 
 
| 1119 | 0 | 0 | if @_ > 3 | 
 
| 1125 | 2 | 3 | if defined $from and $from eq '' | 
 
| 1126 | 1 | 3 | if defined $xfrom and $from eq '' and $xfrom ne '' | 
 
| 1128 | 2 | 3 | if @_ > 3 | 
 
| 1129 | 0 | 5 | if ($flags & 1) { } | 
 
| 1136 | 0 | 5 | if not defined $from and 1 | 
 
| 1137 | 5 | 0 | if length $buf | 
 
| 1141 | 0 | 0 | unless ($self->ckeof) | 
 
| 1142 | 0 | 0 | defined $from ? : | 
 
| 1156 | 0 | 2 | if @_ > 1 | 
 
| 1159 | 0 | 2 | unless @_ and ref $self | 
 
| 1164 | 0 | 2 | unless (defined $/) | 
 
| 1169 | 0 | 0 | if (defined $buf and defined $rval) | 
 
| 1172 | 0 | 0 | if (defined $buf) | 
 
| 1178 | 0 | 2 | if $sep eq '' | 
 
| 1181 | 0 | 2 | unless defined $rval | 
 
| 1182 | 0 | 2 | if (defined $buf) { } | 
 
| 1189 | 2 | 0 | if (defined $buf and ($tbuf = index($buf, $sep)) >= 0) { } | 
 
| 1193 | 0 | 2 | if $/ eq '' | 
 
| 1194 | 0 | 2 | if length $tbuf | 
 
| 2802 | 0 | 3 | if $self->wasconnected or $self->isconnected or $self->isconnecting or $self->isbound | 
 
| 2805 | 0 | 3 | unless $self->isopen or $self->open | 
 
| 2807 | 2 | 1 | if ${*$self;}{'Parms'}{'reuseaddr'} | 
 
| 2808 | 0 | 3 | if ${*$self;}{'Parms'}{'reuseport'} | 
 
| 2810 | 3 | 0 | if (${*$self;}{'Parms'}{'srcaddrlist'}) { } | 
 
|  | 0 | 0 | elsif (defined ${*$self;}{'Parms'}{'srcaddr'} and length ${*$self;}{'Parms'}{'srcaddr'}) { } | 
 
| 2813 | 0 | 3 | unless $rval = CORE::bind($self, $tryaddr) | 
 
| 2827 | 0 | 3 | unless $rval | 
 
| 2853 | 1 | 0 | unless defined $maxq | 
 
| 2854 | 0 | 1 | if $maxq =~ /\D/ or not ref $self | 
 
| 2856 | 0 | 1 | if @_ > 2 | 
 
| 2857 | 0 | 1 | unless $self->isbound or $self->bind | 
 
| 2859 | 0 | 1 | unless CORE::listen $self, $maxq | 
 
| 2899 | 0 | 2 | if ($level =~ /^(0x[\da-f]+|0[0-7]*|[1-9]\d*)$/is) | 
 
| 2901 | 0 | 0 | substr($level, 0, 1) eq '0' ? : | 
 
| 2904 | 2 | 0 | if (not $aref) { } | 
 
|  | 0 | 0 | elsif (ref $aref eq 'HASH') { } | 
 
| 2909 | 0 | 0 | unless $realp | 
 
| 2911 | 0 | 0 | unless $what =~ /^(0x[\da-f]+|0[0-7]*|[1-9]\d*)$/is | 
 
| 2912 | 0 | 0 | substr($what, 0, 1) eq '0' ? : | 
 
| 2916 | 0 | 2 | unless $level =~ /\D/ | 
 
| 2919 | 0 | 2 | unless ref ${*$self;}{'Sockopts'}{$level} eq 'HASH' | 
 
| 2920 | 2 | 0 | if $aref = ${*$self;}{'Sockopts'}{$level}{$what} | 
 
| 2922 | 2 | 0 | if ref $aref eq 'ARRAY' | 
 
| 2926 | 0 | 0 | if ($what =~ /^(0x[\da-f]+|0[0-7]*|[1-9]\d*)$/is) | 
 
| 2927 | 0 | 0 | substr($what, 0, 1) eq '0' ? : | 
 
| 2932 | 0 | 2 | unless ref $aref eq 'ARRAY' | 
 
| 2978 | 0 | 2 | unless $aref = shift @args | 
 
| 2982 | 0 | 2 | if ($realp) { } | 
 
| 2987 | 0 | 2 | if @args > $$aref[3] | 
 
| 2989 | 0 | 0 | unless length $rval or $$aref[3] | 
 
| 2991 | 0 | 2 | if $self->debug > 3 | 
 
| 3046 | 0 | 3 | unless $self->isopen and defined CORE::fileno $self | 
 
| 3058 | 0 | 2 | unless $fhvec | 
 
| 3059 | 2 | 0 | $doread ? : | 
 
| 3060 | 0 | 2 | $dowrite ? : | 
 
| 3061 | 0 | 2 | $doxcept ? : | 
 
| 3062 | 0 | 2 | if $doread and defined ${*$self;}{'sockLineBuf'} | 
 
| 3063 | 0 | 2 | unless ($nfound, $timeleft) = CORE::select($rvec, $wvec, $xvec, $timer) | 
 
| 3065 | 0 | 0 | if (defined ${*$self;}{'sockLineBuf'} and $doread and $rvec ne $fhvec) | 
 
| 3070 | 0 | 2 | wantarray ? : | 
 
| 3174 | 0 | 1 | if @_ > 1 | 
 
| 3175 | 0 | 1 | unless $self->didlisten or $self->listen | 
 
| 3177 | 0 | 1 | unless $ns | 
 
| 3184 | 1 | 0 | if (defined $timeout and ${*$self;}{'Parms'}{'blocking'}) | 
 
| 3189 | 0 | 1 | unless (CORE::accept $ns, $self) | 
 
| 3201 | 0 | 1 | unless ($ns->isconnected) |