- my $protocol='';
- my $expires='';
- my $status='';
- my $orgsip='';
- my $orgdip='';
- my $orgsp='';
- my $orgdp='';
- my $exsip='';
- my $exdip='';
- my $exsp='';
- my $exdp='';
- my $marked='';
- my $use='';
-
- chomp($line);
- my @temp = split(' ',$line);
-
- if ($temp[0] eq 'icmp') {
- $protocol = $temp[0];
- $status = $Lang::tr{'all'};
- $orgsip = substr $temp[3], 4;
- $orgdip = substr $temp[4], 4;
- $marked = $temp[8] eq '[UNREPLIED]' ? '[UNREPLIED]' : ' ';
- }
- if ($temp[0] eq 'udp') {
- $protocol = $temp[0];
- $status = $Lang::tr{'all'};
- $orgsip = substr $temp[3], 4;
- $orgdip = substr $temp[4], 4;
- $marked = $temp[7] eq '[UNREPLIED]' ? '[UNREPLIED]' : defined ($temp[12]) ? $temp[11] : ' ';
- }
- if ($temp[0] eq 'tcp') {
- $protocol = $temp[0];
- $status = $temp[3];
- $orgsip = substr $temp[4], 4;
- $orgdip = substr $temp[5], 4;
- $marked = $temp[8] eq '[UNREPLIED]' ? '[UNREPLIED]' : defined ($temp[13]) ? $temp[12] : ' ';
- }
-
- # filter the line if we found a known proto
- next if( !(
- (($cgiparams{'SEE_PROTO'} eq $Lang::tr{'all'}) || ($protocol eq $cgiparams{'SEE_PROTO'} ))
- && (($cgiparams{'SEE_STATE'} eq $Lang::tr{'all'}) || ($status eq $cgiparams{'SEE_STATE'} ))
- && (($cgiparams{'SEE_MARK'} eq $Lang::tr{'all'}) || ($marked eq $cgiparams{'SEE_MARK'} ))
- && (($cgiparams{'SEE_SRC'} eq "*.*.*.*") || ($orgsip eq $cgiparams{'SEE_SRC'} ))
- && (($cgiparams{'SEE_DEST'} eq "*.*.*.*") || ($orgdip eq $cgiparams{'SEE_DEST'} ))
- ));
-
- if ($temp[0] eq 'icmp') {
- my $offset = 0;
- $protocol = $temp[0] . " (" . $temp[1] . ")";
- $expires = $temp[2];
- $status = ' ';
- if ($temp[8] eq '[UNREPLIED]' ) {
- $offset = +1;
- }
- $orgsip = substr $temp[3], 4;
- $orgdip = substr $temp[4], 4;
- $orgsp = &General::GetIcmpDescription(substr( $temp[5], 5)) . "/" . substr( $temp[6], 5);;
- $orgdp = 'id=' . substr( $temp[7], 3);
- $exsip = substr $temp[8 + $offset], 4;
- $exdip = substr $temp[9 + $offset], 4;
- $exsp = &General::GetIcmpDescription(substr( $temp[10 + $offset], 5)). "/" . substr( $temp[11 + $offset], 5);
- $exdp = 'id=' . substr( $temp[11 + $offset], 5);
- $marked = $temp[8] eq '[UNREPLIED]' ? '[UNREPLIED]' : ' ';
- $use = substr( $temp[13 + $offset], 4 );
- }
- if ($temp[0] eq 'udp') {
- my $offset = 0;
- $marked = '';
- $protocol = $temp[0] . " (" . $temp[1] . ")";
- $expires = $temp[2];
- $status = ' ';
- $orgsip = substr $temp[3], 4;
- $orgdip = substr $temp[4], 4;
- $orgsp = substr $temp[5], 6;
- $orgdp = substr $temp[6], 6;
- if ($temp[7] eq '[UNREPLIED]') {
+ my $protocol='';
+ my $expires='';
+ my $status='';
+ my $orgsip='';
+ my $orgdip='';
+ my $orgsp='';
+ my $orgdp='';
+ my $exsip='';
+ my $exdip='';
+ my $exsp='';
+ my $exdp='';
+ my $marked='';
+ my $use='';
+
+ chomp($line);
+ my @temp = split(' ',$line);
+
+ if ($temp[0] eq 'icmp') {
+ $protocol = $temp[0];
+ $status = $Lang::tr{'all'};
+ $orgsip = substr $temp[3], 4;
+ $orgdip = substr $temp[4], 4;
+ $marked = $temp[8] eq '[UNREPLIED]' ? '[UNREPLIED]' : ' ';
+ }
+ if ($temp[0] eq 'udp') {
+ $protocol = $temp[0];
+ $status = $Lang::tr{'all'};
+ $orgsip = substr $temp[3], 4;
+ $orgdip = substr $temp[4], 4;
+ $marked = $temp[7] eq '[UNREPLIED]' ? '[UNREPLIED]' : defined ($temp[12]) ? $temp[11] : ' ';
+ }
+ if ($temp[0] eq 'tcp') {
+ $protocol = $temp[0];
+ $status = $temp[3];
+ $orgsip = substr $temp[4], 4;
+ $orgdip = substr $temp[5], 4;
+ $marked = $temp[8] eq '[UNREPLIED]' ? '[UNREPLIED]' : defined ($temp[13]) ? $temp[12] : ' ';
+ }
+
+ # filter the line if we found a known proto
+ next if( !(
+ (($cgiparams{'SEE_PROTO'} eq $Lang::tr{'all'}) || ($protocol eq $cgiparams{'SEE_PROTO'} ))
+ && (($cgiparams{'SEE_STATE'} eq $Lang::tr{'all'}) || ($status eq $cgiparams{'SEE_STATE'} ))
+ && (($cgiparams{'SEE_MARK'} eq $Lang::tr{'all'}) || ($marked eq $cgiparams{'SEE_MARK'} ))
+ && (($cgiparams{'SEE_SRC'} eq "*.*.*.*") || ($orgsip eq $cgiparams{'SEE_SRC'} ))
+ && (($cgiparams{'SEE_DEST'} eq "*.*.*.*") || ($orgdip eq $cgiparams{'SEE_DEST'} ))
+ ));
+
+ if ($temp[0] eq 'icmp') {
+ my $offset = 0;
+ $protocol = $temp[0] . " (" . $temp[1] . ")";
+ $expires = $temp[2];
+ $status = ' ';
+ if ($temp[8] eq '[UNREPLIED]' ) {
+ $offset = +1;
+ }
+ $orgsip = substr $temp[3], 4;
+ $orgdip = substr $temp[4], 4;
+ $orgsp = &General::GetIcmpDescription(substr( $temp[5], 5)) . "/" . substr( $temp[6], 5);;
+ $orgdp = 'id=' . substr( $temp[7], 3);
+ $exsip = substr $temp[8 + $offset], 4;
+ $exdip = substr $temp[9 + $offset], 4;
+ $exsp = &General::GetIcmpDescription(substr( $temp[10 + $offset], 5)). "/" . substr( $temp[11 + $offset], 5);
+ $exdp = 'id=' . substr( $temp[11 + $offset], 5);
+ $marked = $temp[8] eq '[UNREPLIED]' ? '[UNREPLIED]' : ' ';
+ $use = substr( $temp[13 + $offset], 4 );
+ }
+ if ($temp[0] eq 'udp') {
+ my $offset = 0;
+ $marked = '';
+ $protocol = $temp[0] . " (" . $temp[1] . ")";
+ $expires = $temp[2];
+ $status = ' ';
+ $orgsip = substr $temp[3], 4;
+ $orgdip = substr $temp[4], 4;
+ $orgsp = substr $temp[5], 6;
+ $orgdp = substr $temp[6], 6;
+ if ($temp[7] eq '[UNREPLIED]') {