head 1.2; access; symbols pkgsrc-2013Q2:1.2.0.8 pkgsrc-2013Q2-base:1.2 pkgsrc-2012Q4:1.2.0.6 pkgsrc-2012Q4-base:1.2 pkgsrc-2011Q4:1.2.0.4 pkgsrc-2011Q4-base:1.2 pkgsrc-2011Q2:1.2.0.2 pkgsrc-2011Q2-base:1.2 pkgsrc-2010Q4:1.1.0.38 pkgsrc-2010Q4-base:1.1 pkgsrc-2010Q3:1.1.0.36 pkgsrc-2010Q3-base:1.1 pkgsrc-2010Q2:1.1.0.34 pkgsrc-2010Q2-base:1.1 pkgsrc-2010Q1:1.1.0.32 pkgsrc-2010Q1-base:1.1 pkgsrc-2009Q4:1.1.0.30 pkgsrc-2009Q4-base:1.1 pkgsrc-2009Q3:1.1.0.28 pkgsrc-2009Q3-base:1.1 pkgsrc-2009Q2:1.1.0.26 pkgsrc-2009Q2-base:1.1 pkgsrc-2009Q1:1.1.0.24 pkgsrc-2009Q1-base:1.1 pkgsrc-2008Q4:1.1.0.22 pkgsrc-2008Q4-base:1.1 pkgsrc-2008Q3:1.1.0.20 pkgsrc-2008Q3-base:1.1 cube-native-xorg:1.1.0.18 cube-native-xorg-base:1.1 pkgsrc-2008Q2:1.1.0.16 pkgsrc-2008Q2-base:1.1 cwrapper:1.1.0.14 pkgsrc-2008Q1:1.1.0.12 pkgsrc-2008Q1-base:1.1 pkgsrc-2007Q4:1.1.0.10 pkgsrc-2007Q4-base:1.1 pkgsrc-2007Q3:1.1.0.8 pkgsrc-2007Q3-base:1.1 pkgsrc-2007Q2:1.1.0.6 pkgsrc-2007Q2-base:1.1 pkgsrc-2007Q1:1.1.0.4 pkgsrc-2007Q1-base:1.1 pkgsrc-2006Q4:1.1.0.2 pkgsrc-2006Q4-base:1.1; locks; strict; comment @# @; 1.2 date 2011.03.28.19.36.30; author gdt; state dead; branches; next 1.1; 1.1 date 2006.10.14.09.20.14; author bad; state Exp; branches; next ; desc @@ 1.2 log @Add hunk: don't assume bare split writes @@_, because new perl doesn't. Rename patchfile for new convention, and add comments. @ text @$NetBSD: patch-ab,v 1.1 2006/10/14 09:20:14 bad Exp $ --- tcpdump2xplot.pl.orig 2006-07-27 21:55:59.000000000 +0200 +++ tcpdump2xplot.pl @@@@ -229,12 +229,16 @@@@ for ($lineNo = 1; <$Tcpdump>; $lineNo++) local(%opts); chop; + # strip unwanted output added by modern tcdump versions in verbose mode + s/\(tos.*?\)//; # (tos 0x0, ttl ... length: \d+) + s/ \[(?:bad )?tcp (?:ck)?sum.*?\]//; # [tcp sum ok]/[bad tcp cksum ....] $opts = $_; # save this for later - split(/ /); - if ($_[1] == "IP") { - splice @@_,1,1; - } + split(/ +/); + # Sometime after version 3.7.1 tcpdump started to print 'IP' + # as the second field in the output. Get rid of it again. + # also remove additional fields printed in verbose mode + splice @@_, 1, 1 if $_[1] eq 'IP'; $time = $_[0]; # If there is if_signal.c-style signal strength info, elide it. @@@@ -432,7 +436,7 @@@@ for ($lineNo = 1; <$Tcpdump>; $lineNo++) # print stderr "SACKS after : $sacks \n"; - @@sacks = split(/ /, $sacks); + @@sacks = split(/ +/, $sacks); for ($i = 0; $i <= $#sacks; $i++) { local($start); @ 1.1 log @Fixes to tcpdump2xplot: - Strip output added by modern tcpdump versions in verbose mode from input lines (IP options, tcp checksum status). - Split sack ranges on consecutive spaces instead of just a single space. While here use a string comparison operator to compare second filed against "IP" by copying the code from graphics/xplot patch-ab. @ text @d1 1 a1 1 $NetBSD$ @