net-analyzer/chaosreader: version bump (0.96), EAPI7
authorMichael Mair-Keimberger <m.mairkeimberger@gmail.com>
Thu, 21 Feb 2019 18:07:51 +0000 (19:07 +0100)
committerAaron Bauman <bman@gentoo.org>
Wed, 27 Feb 2019 04:21:25 +0000 (23:21 -0500)
Signed-off-by: Michael Mair-Keimberger <m.mairkeimberger@gmail.com>
Signed-off-by: Aaron Bauman <bman@gentoo.org>
net-analyzer/chaosreader/Manifest
net-analyzer/chaosreader/chaosreader-0.96.ebuild [new file with mode: 0644]
net-analyzer/chaosreader/files/chaosreader-0.96-chunkcheck.patch [new file with mode: 0644]
net-analyzer/chaosreader/files/chaosreader-0.96-divisionbyzero.patch [new file with mode: 0644]
net-analyzer/chaosreader/files/chaosreader-0.96-zombies.patch [new file with mode: 0644]

index abd523f211f8d085f9ecce60fb6b303763c22a2e..a52d4d09f5f7fd911fa9bd24ca28f470f773ca68 100644 (file)
@@ -1 +1,2 @@
 DIST chaosreader-0.94.bz2 41039 BLAKE2B 664ac7de3ea15dcc2942f7d9ffa4a7ffd2066a521345877127594ece197cab8d49d2f3441335c012dc09041543cda31c723d021ae86a512b4d578f958acc3afc SHA512 f2c2b31e6f7fc27c5cb59a43ce9cdea67de520c79f6354c9a0f627c098d73f4666461fb4f3c393a0a9ac36105979fe36b08035c4404371db2f573dd534e1adad
+DIST chaosreader-0.96.tar.gz 99124 BLAKE2B 04e9dd45543033bb3d15264fcc9168b7e2cec6f304f10142df36c363e841afc91659d7956bbb60b05cc6ab4e8fd519adaf9a2e69be2efc129fd2f38ca0d99f1f SHA512 46ba4a66152403e150e652bf6fa08af98cd3d709ea2cb834a32411ca5dde5f94a7e972404626787e604c1449c29ab5f335673b305ab83856c0dfff7cbf2f4de4
diff --git a/net-analyzer/chaosreader/chaosreader-0.96.ebuild b/net-analyzer/chaosreader/chaosreader-0.96.ebuild
new file mode 100644 (file)
index 0000000..ab29f71
--- /dev/null
@@ -0,0 +1,28 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="Trace TCP/UDP/... sessions and fetch application data."
+HOMEPAGE="http://chaosreader.sourceforge.net
+       https://github.com/brendangregg/Chaosreader"
+SRC_URI="https://github.com/brendangregg/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+SLOT="0"
+
+KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux ~x86-macos"
+LICENSE="GPL-2+"
+
+DEPEND=">=dev-lang/perl-5.8.0"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/Chaosreader-${PV}"
+
+PATCHES=(
+       "${FILESDIR}"/chaosreader-0.96-zombies.patch
+       "${FILESDIR}"/chaosreader-0.96-chunkcheck.patch
+       "${FILESDIR}"/chaosreader-0.96-divisionbyzero.patch
+)
+
+src_install() {
+       dobin ${PN}
+}
diff --git a/net-analyzer/chaosreader/files/chaosreader-0.96-chunkcheck.patch b/net-analyzer/chaosreader/files/chaosreader-0.96-chunkcheck.patch
new file mode 100644 (file)
index 0000000..6a394d4
--- /dev/null
@@ -0,0 +1,27 @@
+--- a/chaosreader      2011-11-10 19:17:50.000000000 +0100
++++ b/chaosreader      2012-03-09 18:15:21.096105305 +0100
+@@ -5350,6 +5353,24 @@
+               next if length($http_data) < 8;
+               $partnum++;
+               $parttext = sprintf("%02d",$partnum);
++              
++              ## from https://sourceforge.net/tracker/?func=detail&aid=2019799&group_id=107384&atid=647491 
++              ### Chunk Check
++              if ( $http_header =~ /Transfer-Encoding: chunked/ ) {
++                  my $new_http_data="";
++                  my $chunksize=-1;
++                  my $pos=0;
++                  until ($chunksize==0) {
++                    my $eolpos=index($http_data,"\r\n",$pos);
++                    $chunksize=hex(substr($http_data,$pos,$eolpos - $pos));
++                    $pos=($eolpos+2);
++                    if ($chunksize > 0) {
++                      $new_http_data.=substr($http_data,$pos,$chunksize);
++                    }
++                    $pos+=($chunksize+2);
++                  }
++                  $http_data=$new_http_data;
++              }
+ 
+               ### Part - Checks
+               $http_type = &File_Type($http_data);
diff --git a/net-analyzer/chaosreader/files/chaosreader-0.96-divisionbyzero.patch b/net-analyzer/chaosreader/files/chaosreader-0.96-divisionbyzero.patch
new file mode 100644 (file)
index 0000000..5849185
--- /dev/null
@@ -0,0 +1,18 @@
+--- a/chaosreader      2014-06-15 21:30:11.000000000 +0200
++++ b/chaosreader      2019-02-21 18:26:00.671756895 +0100
+@@ -4275,7 +4275,14 @@
+          print REPLAY "ms($timediff1);\n";
+       }
+       $duration = 0.01 if $duration == 0;     # avoid divide by 0,
+-      $speed = sprintf("%.2f",$bytes / (1024 * $duration));
++      +       # avoid division by zero
++      # from https://sourceforge.net/tracker/?func=detail&aid=2210488&group_id=107384&atid=647489
++      if ( $duration > 0 ) {
++              $speed = sprintf("%.2f",$bytes / (1024 * $duration));
++      }
++      else {
++              $speed = "unknown";
++      }
+       print REPLAY "print \"\n\n" .
+        "Summary: $duration2 seconds, $bytes bytes, $speed Kb/sec\\n\";";
+       close REPLAY;
diff --git a/net-analyzer/chaosreader/files/chaosreader-0.96-zombies.patch b/net-analyzer/chaosreader/files/chaosreader-0.96-zombies.patch
new file mode 100644 (file)
index 0000000..40fa606
--- /dev/null
@@ -0,0 +1,11 @@
+--- a/chaosreader      2006-12-24 15:12:23.000000000 +0100
++++ b/chaosreader      2006-12-24 15:11:56.000000000 +0100
+@@ -396,6 +395,8 @@ if ($Arg{normal}) {
+ 
+ elsif ($Arg{standalone}) {
+ 
++   $SIG{CHLD} = "IGNORE";
++
+    ############################################################
+    # --- STANDALONE - Create Packet Logs and Process them ---
+    #