DRILL-7484: Malware found in the Drill test folder

closes #1934
diff --git a/exec/java-exec/src/test/java/org/apache/drill/exec/store/pcap/TestSessionizePCAP.java b/exec/java-exec/src/test/java/org/apache/drill/exec/store/pcap/TestSessionizePCAP.java
index 8c2818d..fe1c3d5 100644
--- a/exec/java-exec/src/test/java/org/apache/drill/exec/store/pcap/TestSessionizePCAP.java
+++ b/exec/java-exec/src/test/java/org/apache/drill/exec/store/pcap/TestSessionizePCAP.java
@@ -18,12 +18,20 @@
 
 package org.apache.drill.exec.store.pcap;
 
-
+import org.apache.drill.common.types.TypeProtos;
+import org.apache.drill.exec.physical.rowSet.RowSet;
+import org.apache.drill.exec.physical.rowSet.RowSetBuilder;
+import org.apache.drill.exec.record.metadata.SchemaBuilder;
+import org.apache.drill.exec.record.metadata.TupleMetadata;
 import org.apache.drill.test.ClusterFixture;
 import org.apache.drill.test.ClusterTest;
+import org.apache.drill.test.QueryBuilder;
+import org.apache.drill.test.rowSet.RowSetComparison;
 import org.joda.time.Period;
+
+import java.io.IOException;
+import java.nio.file.Files;
 import java.nio.file.Paths;
-import java.time.LocalDateTime;
 import org.junit.BeforeClass;
 import org.junit.Test;
 import java.time.format.DateTimeFormatter;
@@ -47,61 +55,125 @@
 
   @Test
   public void testSessionizedStarQuery() throws Exception {
-    String sql = "SELECT * FROM cp.`/store/pcap/attack-trace.pcap` WHERE src_port=1821 AND dst_port=445";
+    String sql = "SELECT * FROM cp.`/store/pcap/http.pcap`";
+    String dataFromRemote = readAFileIntoString(dirTestWatcher.getRootDir().getAbsolutePath() + "/store/pcap/dataFromRemote.txt");
 
-    testBuilder()
-      .sqlQuery(sql)
-      .ordered()
-      .baselineColumns("session_start_time", "session_end_time", "session_duration", "total_packet_count", "connection_time", "src_ip", "dst_ip", "src_port", "dst_port",
-        "src_mac_address", "dst_mac_address", "tcp_session", "is_corrupt", "data_from_originator", "data_from_remote", "data_volume_from_origin",
-        "data_volume_from_remote", "packet_count_from_origin", "packet_count_from_remote")
-      .baselineValues(LocalDateTime.parse("2009-04-20T03:28:28.374", formatter),
-        LocalDateTime.parse("2009-04-20T03:28:28.508", formatter),
-        Period.parse("PT0.134S"), 4,
-        Period.parse("PT0.119S"),
-        "98.114.205.102",
-        "192.150.11.111",
-        1821, 445,
-        "00:08:E2:3B:56:01",
-        "00:30:48:62:4E:4A",
-        -8791568836279708938L,
-        false,
-        "........I....>...>..........Ib...<...<..........I....>...>", "", 62,0, 3, 1)
-      .go();
+    QueryBuilder q = client.queryBuilder().sql(sql);
+    RowSet results = q.rowSet();
+
+    TupleMetadata expectedSchema = new SchemaBuilder()
+      .addNullable("src_ip", TypeProtos.MinorType.VARCHAR)
+      .addNullable("dst_ip", TypeProtos.MinorType.VARCHAR)
+      .addNullable("src_port", TypeProtos.MinorType.INT)
+      .addNullable("dst_port", TypeProtos.MinorType.INT)
+      .addNullable("src_mac_address", TypeProtos.MinorType.VARCHAR)
+      .addNullable("dst_mac_address", TypeProtos.MinorType.VARCHAR)
+      .addNullable("session_start_time", TypeProtos.MinorType.TIMESTAMP)
+      .addNullable("session_end_time", TypeProtos.MinorType.TIMESTAMP)
+      .addNullable("session_duration", TypeProtos.MinorType.INTERVAL)
+      .addNullable("total_packet_count", TypeProtos.MinorType.INT)
+      .addNullable("data_volume_from_origin", TypeProtos.MinorType.INT)
+      .addNullable("data_volume_from_remote", TypeProtos.MinorType.INT)
+      .addNullable("packet_count_from_origin", TypeProtos.MinorType.INT)
+      .addNullable("packet_count_from_remote", TypeProtos.MinorType.INT)
+      .addNullable("connection_time", TypeProtos.MinorType.INTERVAL)
+      .addNullable("tcp_session", TypeProtos.MinorType.BIGINT)
+      .addNullable("is_corrupt", TypeProtos.MinorType.BIT)
+      .addNullable("data_from_originator", TypeProtos.MinorType.VARCHAR)
+      .addNullable("data_from_remote", TypeProtos.MinorType.VARCHAR)
+      .buildSchema();
+
+    RowSet expected = new RowSetBuilder(client.allocator(), expectedSchema)
+      .addRow(
+        "145.254.160.237",
+        "65.208.228.223",
+        3372, 80,
+        "00:00:01:00:00:00",
+        "FE:FF:20:00:01:00",
+        1084443427311L,
+        1084443445216L,
+        Period.parse("PT17.905S"), 31,
+        437,18000,14, 17,
+        Period.parse("PT0.911S"),
+        -789689725566200012L, false,
+        "r-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.6) Gecko/20040113..Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,image/jpeg,image/gif;q=0.2,*/*;q=0.1..Accept-Language: en-us,en;q=0.5..Accept-Encoding: gzip,deflate..Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7..Keep-Alive: 300..Connection: keep-alive..Referer: http://www.ethereal.com/development.html....$K.@....6...6",
+        dataFromRemote
+        )
+      .build();
+
+    new RowSetComparison(expected).verifyAndClearAll(results);
   }
 
   @Test
   public void testSessionizedSpecificQuery() throws Exception {
-    String sql = "SELECT session_start_time, session_end_time,session_duration, total_packet_count, connection_time, src_ip, dst_ip, src_port, dst_port, src_mac_address, dst_mac_address, tcp_session, " +
-      "is_corrupt, data_from_originator, data_from_remote, data_volume_from_origin, data_volume_from_remote, packet_count_from_origin, packet_count_from_remote " +
-      "FROM cp.`/store/pcap/attack-trace.pcap` WHERE src_port=1821 AND dst_port=445";
+    String sql = "SELECT src_ip, dst_ip, src_port, dst_port, src_mac_address, dst_mac_address," +
+      "session_start_time, session_end_time, session_duration, total_packet_count, data_volume_from_origin, data_volume_from_remote," +
+      "packet_count_from_origin, packet_count_from_remote, connection_time, tcp_session, is_corrupt, data_from_originator, data_from_remote " +
+      "FROM cp.`/store/pcap/http.pcap`";
 
-    testBuilder()
-      .sqlQuery(sql)
-      .ordered()
-      .baselineColumns("session_start_time", "session_end_time", "session_duration", "total_packet_count", "connection_time", "src_ip", "dst_ip", "src_port", "dst_port",
-        "src_mac_address", "dst_mac_address", "tcp_session", "is_corrupt", "data_from_originator", "data_from_remote", "data_volume_from_origin",
-        "data_volume_from_remote", "packet_count_from_origin", "packet_count_from_remote")
-      .baselineValues(LocalDateTime.parse("2009-04-20T03:28:28.374", formatter),
-        LocalDateTime.parse("2009-04-20T03:28:28.508", formatter),
-        Period.parse("PT0.134S"), 4,
-        Period.parse("PT0.119S"),
-        "98.114.205.102",
-        "192.150.11.111",
-        1821, 445,
-        "00:08:E2:3B:56:01",
-        "00:30:48:62:4E:4A",
-        -8791568836279708938L,
-        false,
-        "........I....>...>..........Ib...<...<..........I....>...>", "", 62,0, 3, 1)
-      .go();
+    String dataFromRemote = readAFileIntoString(dirTestWatcher.getRootDir().getAbsolutePath() + "/store/pcap/dataFromRemote.txt");
+
+    QueryBuilder q = client.queryBuilder().sql(sql);
+    RowSet results = q.rowSet();
+
+    TupleMetadata expectedSchema = new SchemaBuilder()
+      .addNullable("src_ip", TypeProtos.MinorType.VARCHAR)
+      .addNullable("dst_ip", TypeProtos.MinorType.VARCHAR)
+      .addNullable("src_port", TypeProtos.MinorType.INT)
+      .addNullable("dst_port", TypeProtos.MinorType.INT)
+      .addNullable("src_mac_address", TypeProtos.MinorType.VARCHAR)
+      .addNullable("dst_mac_address", TypeProtos.MinorType.VARCHAR)
+      .addNullable("session_start_time", TypeProtos.MinorType.TIMESTAMP)
+      .addNullable("session_end_time", TypeProtos.MinorType.TIMESTAMP)
+      .addNullable("session_duration", TypeProtos.MinorType.INTERVAL)
+      .addNullable("total_packet_count", TypeProtos.MinorType.INT)
+      .addNullable("data_volume_from_origin", TypeProtos.MinorType.INT)
+      .addNullable("data_volume_from_remote", TypeProtos.MinorType.INT)
+      .addNullable("packet_count_from_origin", TypeProtos.MinorType.INT)
+      .addNullable("packet_count_from_remote", TypeProtos.MinorType.INT)
+      .addNullable("connection_time", TypeProtos.MinorType.INTERVAL)
+      .addNullable("tcp_session", TypeProtos.MinorType.BIGINT)
+      .addNullable("is_corrupt", TypeProtos.MinorType.BIT)
+      .addNullable("data_from_originator", TypeProtos.MinorType.VARCHAR)
+      .addNullable("data_from_remote", TypeProtos.MinorType.VARCHAR)
+      .buildSchema();
+
+    RowSet expected = new RowSetBuilder(client.allocator(), expectedSchema)
+      .addRow(
+        "145.254.160.237",
+        "65.208.228.223",
+        3372, 80,
+        "00:00:01:00:00:00",
+        "FE:FF:20:00:01:00",
+        1084443427311L,
+        1084443445216L,
+        Period.parse("PT17.905S"), 31,
+        437,18000,14, 17,
+        Period.parse("PT0.911S"),
+        -789689725566200012L, false,
+        "r-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.6) Gecko/20040113..Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,image/jpeg,image/gif;q=0.2,*/*;q=0.1..Accept-Language: en-us,en;q=0.5..Accept-Encoding: gzip,deflate..Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7..Keep-Alive: 300..Connection: keep-alive..Referer: http://www.ethereal.com/development.html....$K.@....6...6",
+        dataFromRemote
+      )
+      .build();
+
+    new RowSetComparison(expected).verifyAndClearAll(results);
   }
 
   @Test
   public void testSerDe() throws Exception {
-    String sql = "SELECT COUNT(*) FROM cp.`/store/pcap/attack-trace.pcap`";
+    String sql = "SELECT COUNT(*) FROM cp.`/store/pcap/http.pcap`";
     String plan = queryBuilder().sql(sql).explainJson();
     long cnt = queryBuilder().physical(plan).singletonLong();
-    assertEquals("Counts should match", 5L, cnt);
+    assertEquals("Counts should match", 1L, cnt);
+  }
+
+  /**
+   * Helper function to read a file into a String.
+   * @param filePath Input file which is to be read into a String
+   * @return String The text content of the file.
+   * @throws IOException If the file is unreachable or unreadable, throw IOException.
+   */
+  private static String readAFileIntoString(String filePath) throws IOException {
+    return new String(Files.readAllBytes(Paths.get(filePath)));
   }
 }
diff --git a/exec/java-exec/src/test/resources/store/pcap/attack-trace.pcap b/exec/java-exec/src/test/resources/store/pcap/attack-trace.pcap
deleted file mode 100644
index 68e1fff..0000000
--- a/exec/java-exec/src/test/resources/store/pcap/attack-trace.pcap
+++ /dev/null
Binary files differ
diff --git a/exec/java-exec/src/test/resources/store/pcap/dataFromRemote.txt b/exec/java-exec/src/test/resources/store/pcap/dataFromRemote.txt
new file mode 100644
index 0000000..cde5c69
--- /dev/null
+++ b/exec/java-exec/src/test/resources/store/pcap/dataFromRemote.txt
@@ -0,0 +1 @@
+10:17:12 GMT..Server: Apache..Last-Modified: Tue, 20 Apr 2004 13:17:00 GMT..ETag: "9a01a-4696-7e354b00"..Accept-Ranges: bytes..Content-Length: 18070..Keep-Alive: timeout=15, max=100..Connection: Keep-Alive..Content-Type: text/html; charset=ISO-8859-1....<?xml version="1.0" encoding="UTF-8"?>.<!DOCTYPE html.  PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN".  "DTD/xhtml1-strict.dtd">.<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">.  <head>.    <title>Ethereal: Download</title>.    <style type="text/css" media="all">..@import url("mm/css/ethereal-3-0.css");.    </style>.</head>.  <body>.    <div class="top">.    <table width="100%" cellspacing="0" cellpadding="0" border="0" summary="">.      <tr>.        <td valign="middle" width="1">..  <a href="/"><img class="logo" title="Ethereal home" src="mm/image/elogo-64-trans.gif" alt="" width="64" height="64"></img></a>.        </td>.        <td align="left" valign="middle">.          <h2>Ethereal</h2>.          <h5 style="white-space: nowrap;">Download</h5>.        </td>.        <td align="right">..    <table style="margin-right: 10px;" cellspacing="0" cellpadding="0" border="0" summary="">.              <form name="search" method="post" action="http://www.ethereal.com/cgi-bin/htsearch">.              <tr>..        <td>..          <div class="topformtext">.        %K.@....6...6./a>...  </div>..        </td>..        <td>..          <div class="topformtext">.                  <input type="text" size="12" name="words">...  <input type="hidden" name="config" value="ethereal">...  </div>..        </td>...<td valign="bottom">...  <input type="image" class="gobutton" src="mm/image/go-button.gif">...</td>.              </tr>.              </form>.</table>..  </div>.        </td>.      </tr>.    </table>.    </div>.<div class="sitebar">.<p>.  <a href="/">Home</a>.  <span class="sitebarsep">|</span>.  <a href="introduction.html">Introduction</a>.  <span class="sitebarsep">|</span>.  Download.  <span class="sitebarsep">|</span>.  <a href="docs/">Documentation</a>.  <span class="sitebarsep">|</span>.  <a href="lists/">Lists</a>.  <span class="sitebarsep">|</span>.  <a href="faq.html">FAQ</a>.  <span class="sitebarsep">|</span>.  <a href="development.html">Development</a>.</p>.</div>.<div class="navbar">.<p>.  <a href="#releases">Official Releases</a>.  <span class="navbarsep">|</span>.  <a href="#otherplat">Other Platforms</a>.  <span class="navbarsep">|</span>.  <a href="#otherdown">Other Downloads</a>.  <span class="navbarsep">|</span>.  <a href="#legal">Legal Notices</a>.</p>.</div>.<!-- Begin Ad 468x60 -->.<div class="adblock">.<script type="text/javascript"><!--.google_ad_client = "pub-230919194867%K.@....6...6.height = 60;.google_ad_format = "468x60_as";.google_color_border = "666633";.google_color_bg = "FFFFFF";.google_color_link = "000000";.google_color_url = "666633";.google_color_text = "333333";.//--></script>.<script type="text/javascript".  src="http://pagead2.googlesyndication.com/pagead/show_ads.js">.</script>.</div>.<!-- End Ad -->.<div class="block">.  <h2 class="headerline" id="releases">Official Releases</h2>.<p>.  The Official source code release and installers for Windows, Red Hat.  Linux/Fedora, and Solaris can be found on the main Ethereal web site and.  its mirrors..</p>.<h4>Source Code</h4>.<p>.HTTP:.<a href="http://www.ethereal.com/distribution/">Main site</a>.<a href="http://ethereal.planetmirror.com/distribution/">Australia</a>.<a href="http://www.mirrors.wiretapped.net/security/packet-capture/ethereal/">Australia</a>.<a href="http://netmirror.org/mirror/ftp.ethereal.com/">Germany</a>.<a href="http://ethereal.netarc.jp/distribution/">Japan</a>.<a href="http://ethereal.secuwiz.com/distribution/">Korea</a>.<a href="http://ethereal.0ni0n.org/distribution/">Malaysia</a>.<a href="http://ftp.sunet.se/pub/network/monitoring/ethereal/">Sweden</a>.<a href="http://sourceforge.net/project/showfiles.php?group_id=255">SourceForge</a>.</p>.<p>.FTP:.<a href="ftp://ftp.ethereal.com/pub/ethereal/">Main site</a>.<a href=%K.@.2......../">Australia</a>.<a href="ftp://ftp.mirrors.wiretapped.net/pub/security/packet-capture/ethereal/">Australia</a>.<a href="ftp://gd.tuwien.ac.at/infosys/security/ethereal/">Austria</a>.<a href="ftp://netmirror.org/ftp.ethereal.com/">Germany</a>.<a href="ftp://ftp.ayamura.org/pub/ethereal/">Japan</a>.<a href="ftp://ftp.azc.uam.mx/mirrors/ethereal/">Mexico</a>.<a href="ftp://ftp.sunet.se/pub/network/monitoring/ethereal/">Sweden</a>.</p>.<p>.The latest development sources are available via.<a href="development.html#anoncvs">anonymous CVS</a>..</p>.<h4>Windows 98/ME/2000/XP/2003 Installers</h4>.<p>.HTTP:.<a href="http://www.ethereal.com/distribution/win32/">Main site</a>.<a href="http://ethereal.planetmirror.com/distribution/win32/">Australia</a>.<a href="http://www.mirrors.wiretapped.net/security/packet-capture/ethereal/win32/">Australia</a>.<a href="http://netmirror.org/mirror/ftp.ethereal.com/win32/">Germany</a>.<a href="http://ethereal.netarc.jp/distribution/win32/">Japan</a>.<a href="http://ethereal.secuwiz.com/distribution/win32/">Korea</a>.<a href="http://ethereal.0ni0n.org/distribution/win32/">Malaysia</a>.<a href="http://ftp.sunet.se/pub/network/monitoring/ethereal/win32/">Sweden</a>.<a href="http://sourceforge.net/project/showfiles.php?group_id=255">SourceForge</a>.</p>.<p>.FTP:.<a href="ftp://ftp.ethereal.com/pub/%K.@.2..6...6.ftp://ftp.planetmirror.com/pub/ethereal/win32/">Australia</a>.<a href="ftp://ftp.mirrors.wiretapped.net/pub/security/packet-capture/ethereal/win32/">Australia</a>.<a href="ftp://gd.tuwien.ac.at/infosys/security/ethereal/win32/">Austria</a>.<a href="ftp://netmirror.org/ftp.ethereal.com/win32/">Germany</a>.<a href="ftp://ftp.ayamura.org/pub/ethereal/win32/">Japan</a>.<a href="ftp://ftp.azc.uam.mx/mirrors/ethereal/win32/">Mexico</a>.<a href="ftp://ftp.sunet.se/pub/network/monitoring/ethereal/win32/">Sweden</a>.</p>.<h4>Red Hat Linux / Fedora Packages</h4>.<p>.HTTP:.<a href="http://www.ethereal.com/distribution/rpms/">Main site</a>.<a href="http://ethereal.planetmirror.com/distribution/rpms/">Australia</a>.<a href="http://www.mirrors.wiretapped.net/security/packet-capture/ethereal/rpms/">Australia</a>.<a href="http://netmirror.org/mirror/ftp.ethereal.com/rpms/">Germany</a>.<a href="http://ethereal.netarc.jp/distribution/rpms/">Japan</a>.<a href="http://ethereal.secuwiz.com/distribution/rpms/">Korea</a>.<a href="http://ethereal.0ni0n.org/distribution/rpms/">Malaysia</a>.<a href="http://ftp.sunet.se/pub/network/monitoring/ethereal/rpms/">Sweden</a>.</p>.<p>.FTP:.<a href="ftp://ftp.ethereal.com/pub/ethereal/rpms/">Main site</a>.<a href="ftp://ftp.planetmirror.com/pub/ethereal/rpms/">Australia</a>.<a href="ftp://ftp.mirrors.wi&K.@V...6...6./ethereal/rpms/">Australia</a>.<a href="ftp://gd.tuwien.ac.at/infosys/security/ethereal/rpms/">Austria</a>.<a href="ftp://netmirror.org/ftp.ethereal.com/rpms/">Germany</a>.<a href="ftp://ftp.ayamura.org/pub/ethereal/rpms/">Japan</a>.<a href="ftp://ftp.azc.uam.mx/mirrors/ethereal/rpms/">Mexico</a>.<a href="ftp://ftp.sunet.se/pub/network/monitoring/ethereal/rpms/">Sweden</a>.</p>.<h4>Solaris Packages</h4>.<p>.HTTP:.<a href="http://www.ethereal.com/distribution/solaris/">Main site</a>.<a href="http://ethereal.planetmirror.com/distribution/solaris/">Australia</a>.<a href="http://www.mirrors.wiretapped.net/security/packet-capture/ethereal/solaris/">Australia</a>.<a href="http://netmirror.org/mirror/ftp.ethereal.com/solaris/">Germany</a>.<a href="http://ethereal.netarc.jp/distribution/solaris/">Japan</a>.<a href="http://ethereal.secuwiz.com/distribution/solaris/">Korea</a>.<a href="http://ethereal.0ni0n.org/distribution/solaris/">Malaysia</a>.<a href="http://ftp.sunet.se/pub/network/monitoring/ethereal/solaris/">Sweden</a>.<a href="http://sourceforge.net/project/showfiles.php?group_id=255">SourceForge</a>.</p>.<p>.FTP:.<a href="ftp://ftp.ethereal.com/pub/ethereal/solaris/">Main site</a>.<a href="ftp://ftp.planetmirror.com/pub/ethereal/solaris/">Australia</a>.<a href="ftp://ftp.mirrors.wiretapped.net/pub/security/packet-captu&K.@.p........ref="ftp://gd.tuwien.ac.at/infosys/security/ethereal/solaris/">Austria</a>.<a href="ftp://netmirror.org/ftp.ethereal.com/solaris/">Germany</a>.<a href="ftp://ftp.ayamura.org/pub/ethereal/solaris/">Japan</a>.<a href="ftp://ftp.azc.uam.mx/mirrors/ethereal/solaris/">Mexico</a>.<a href="ftp://ftp.sunet.se/pub/network/monitoring/ethereal/solaris/">Sweden</a>.</p>.</div>.<div class="block">.  <h2 class="headerline" id="otherplat">Other Platforms</h2>.<p>.  Binary distributions and ready-to-compile packages are available for.  most platforms. Please note these packages may depend on external.  libraries including GLib/GTK+, libpcap, Net-SNMP, PCRE, and GNU ADNS..  You may have to download and install them before installing Ethereal..</p>.<table cellspacing="1" cellpadding="2" border="0" summary="">.<tr bgcolor="#cccc99">.  <th>Platform</th>.  <th>Location(s)</th>.</tr>.<tr>.  <td valign="top">Apple Computer:<br>Mac OS X</td>.  <td valign="top">.    <a href="http://fink.sourceforge.net/pdb/package.php/ethereal">Fink Project</a>.    <a href="http://darwinports.opendarwin.org">DarwinPorts</a>.</td>.</tr>.<tr class="even">.  <td valign="top">Be (Palm?):<br>BeOS</td>.  <td valign="top">.    <a href="http://www.bebits.com/app/2979">BeBits</a>.</td>.</tr>.<tr>.  <td valign="top">Debian:<br>Debian GNU/Linux</td>.  <td valign="top">. &K.@iM........table/net/ethereal">stable</a>,.    <a href="http://packages.debian.org/testing/net/ethereal">testing</a>,.    <a href="http://packages.debian.org/unstable/net/ethereal">unstable</a>.</td>.</tr>.<tr class="even">.  <td valign="top">The FreeBSD Project:<br>FreeBSD</td>.  <td valign="top">.    <a href="http://www.freebsd.org/cgi/ports.cgi?query=ethereal&stype=all">ports</a>.</td>.</tr>.<tr>.  <td valign="top">Gentoo Technologies:<br>Gentoo Linux</td>.  <td valign="top">.    <a href="http://www.gentoo.org/packages/net-analyzer/ethereal.html">portage</a>.</td>.</tr>.<tr class="even">.  <td valign="top">HP:<br>Tru64 Unix</td>.  <td valign="top">.    <a href="ftp://ftp.thewrittenword.com/packages/by-name/ethereal-0.9.16/">The Written Word (4.0d, 5.1)</a><super><small>1</small></super>.</td>.</tr>.<tr>.  <td valign="top">HP:<br>HP-UX</td>.  <td valign="top">.    <a href="http://hpux.connect.org.uk/hppd/hpux/Gtk/Applications/">UK</a>,.    <a href="http://hpux.asknet.de/hppd/hpux/Gtk/Applications/">Germany</a>,.    <a href="http://hpux.tn.tudelft.nl/hppd/hpux/Gtk/Applications/">Netherlands</a>,.    <a href="http://hpux.cs.utah.edu/hppd/hpux/Gtk/Applications/">US</a>,.    <a href="http://hpux.ee.ualberta.ca/hppd/hpux/Gtk/Applications/">Canada</a>,.    <a href="http://hpux.petech.ac.za//hppd/hpux/Gtk/Applications/">South&nbsp;Afr&K.@iM..6...6. on each site's home page),<br>.    <a href="ftp://ftp.thewrittenword.com/packages/by-name/ethereal-0.9.16/">The Written Word (10.20, 11.00, 11.11)</a><super><small>1</small></super>.</td>.</tr>.<tr class="even">.  <td valign="top">IBM:<br>AIX</td>.  <td valign="top">.    <a href="http://www.bullfreeware.com/">Bull archive</a><br>.    <a href="http://ftp.univie.ac.at/aix/">Vienna University mirror</a><br>.    <a href="http://aixpdslib.seas.ucla.edu/bull.html">UCLA mirror</a>.</td>.</tr>.  <!-- Ashley G Chaloner <csuwf [at] dcs.warwick.ac.uk> -->.<tr>.  <td valign="top">IBM:<br>S/390 Linux (Red Hat 7.2)</td>.  <td valign="top">.    <a href="http://www.dcs.warwick.ac.uk/~csuwf/RPMs/">Ashley Chaloner</a><br>.</td>.</tr>.<tr class="even">.  <td valign="top">MandrakeSoft:<br>Mandrake Linux</td>.  <td valign="top">.    <a href="http://www.linux-mandrake.com/en/cookerdevel.php3">Cooker</a>.    (in the contrib section).</td>.</tr>.<tr>.  <td valign="top">Microsoft:<br>Windows (Intel, 32-bit)</td>.  <td valign="top">.    <a href="http://www.ethereal.com/distribution/win32">local archive</a><br>.    <a href="http://www.openxtra.com/products/ethereal_xtra.htm">OPENEXTRA</a>.</td>.</tr>.<tr class="even">.  <td valign="top">NetBSD Foundation:<br>NetBSD</td>.  <td valign="top">.    <a href="ftp://ftp.netbsd.org/pub/NetBSD/packages/p&K.@1...6...6.</a>.</td>.</tr>.<tr>.  <td valign="top">OpenBSD:<br>OpenBSD</td>.  <td valign="top">.    <a href="http://www.openbsd.org/cgi-bin/cvsweb/ports/net/ethereal/">ports</a>.</td>.</tr>.<tr class="even">.  <td valign="top">PLD Team:<br>PLD Linux</td>.  <td valign="top">.    <a href="ftp://ftp.pld-linux.org/dists/ra">FTP site</a>.</td>.</tr>.<tr>.  <td valign="top">Red Hat:<br>Red Hat Linux</td>.  <td valign="top">.    <a href="http://rpmfind.net/linux/RPM/EByName.html">RPMFind</a> (requires glibc)<br>.    <a href="ftp://ftp.falsehope.com/home/gomez/ethereal/">Henri Gomez</a><br>.    <a href="ftp://ftp.thewrittenword.com/packages/by-name/ethereal-0.9.16/">The Written Word (7.1)</a><super><small>1</small></super><br>.    <a href="ftp://ftp.ethereal.com/pub/ethereal/rpms/">local archive</a><br>.</td>.</tr>.<tr class="even">.  <td valign="top">ROCK Linux:<br>ROCK Linux</td>.  <td valign="top">.    <a href="http://www.rocklinux.org/sources/package/tsa/ethereal/">package</a><br>.</td>.</tr>.<tr>.  <td valign="top">SCO (formerly Caldera):<br>UnixWare/OpenUnix</td>.  <td valign="top">.    <a href="http://www.sco.com/skunkware/">Skunkware</a>:.    <a href="ftp://ftp2.caldera.com/pub/skunkware/uw7/net/ethereal/">UnixWare 7</a>.    <a href="ftp://ftp2.caldera.com/pub/skunkware/ou8/net/ethereal/">Open UNIX 8</a>.</td>.</tr>.<tr class="e'K.@....6...6.d>.  <td valign="top">.    <a href="ftp://ftp.thewrittenword.com/packages/by-name/ethereal-0.9.16/">The Written Word (6.5)</a><super><small>1</small></super><br>.    <a href="http://freeware.sgi.com/index-by-alpha.html">SGI Freeware</a>.</td>.</tr>.<tr>.  <td valign="top">Slackware Linux:<br>Slackware Linux</td>.  <td valign="top">.    <a href="http://www.linuxpackages.net/search_view.php?by=name&name=ethereal&ver=">Linux Packages</a>.</td>.</tr>.<tr class="even">.  <td valign="top">Sun Microsystems:<br>Solaris/Intel</td>.  <td valign="top">.    <a href="http://www.sun.com/solaris/freeware.html">Solaris 01/01 update</a> (unsupported).</td>.</tr>.<tr>.  <td valign="top">Sun Microsystems:<br>Solaris/SPARC</td>.  <td valign="top">.    <a href="http://www.ethereal.com/distribution/solaris/">local archive (8, 9)</a><br>.    <a href="ftp://ftp.thewrittenword.com/packages/by-name/ethereal-0.9.16/">The Written Word (2.5.1 - 9)</a><super><small>1</small></super><br>.    <a href="http://www.sunfreeware.com/">Sunfreeware.com (7, 8)</a><br>.    <a href="http://www.sun.com/solaris/freeware/index.html">Solaris 8 and 9 Companion Software CDs</a> (unsupported).</td>.</tr>.<tr class="even">.  <td valign="top">SuSE:<br>SuSE Linux</td>.  <td valign="top">.    <a href="ftp://ftp.suse.com/pub/suse/">SuSE FTP site</a>..    <a href="http://w'K.@`/........mirrors.html">Mirrors</a> are also available..</td>.</tr>.</table>.<p>.  If you know of any binary distribution not listed here, please send mail.  to.  <a href="mailto:ethereal-web[AT]ethereal.com">ethereal-web[AT]ethereal.com</a>...</p>.<p class="footnote">.  [1] Each Ethereal package produced by.  <a href="http://www.thewrittenword.com">The Written Word</a> depends on the.  <a href="ftp://ftp.thewrittenword.com/packages/by-name/zlib-1.1.4/">zlib</a>,.  <a href="ftp://ftp.thewrittenword.com/packages/by-name/glib-1.2.10/">Glib</a>,.  <a href="ftp://ftp.thewrittenword.com/packages/by-name/gtk+-1.2.10/">GTK+</a>,.  <a href="ftp://ftp.thewrittenword.com/packages/by-name/perl-5.6.1/">Perl</a>, and.  <a href="ftp://ftp.thewrittenword.com/packages/by-name/net-snmp-5.0.9/">Net-SNMP</a>.  packages..  Please refer to The Written Word's.  <a href="ftp://ftp.thewrittenword.com/packages/INSTALL.pdf">documentation</a>.  for installation instructions..  Please do not call The Written Word for support. Email.  <a href="mailto:free-support[AT]thewrittenword.com">free-support[AT]thewrittenword.com</a>.  with questions..</p>.</div>.<div class="block">.  <h2 class="headerline" id="otherdown">Other Downloads</h2>.<h4>Sample Captures</h4>.<p>.  A menagerie of capture files is available on our.  <a href="../sample/">sample captures</a> pag'K.@`/..6...6.DF version of the Ethereal User's Guide is available in the.  <a href="../docs/#resources">documentation</a> page..</div>.<div class="block">.  <h2 class="headerline" id="legal">Legal Notices</h2>.<p>.AIX is a registered trademark of International Business Machines, Inc..Tru64 is a registered trademark of Compaq Computer Corporation..Debian is a registered trademark of Software In The Public Interest, Inc..FreeBSD is a registered trademark of Walnut Creek CDROM, Inc..HP-UX is a registered trademark of Hewlett-Packard Company..Irix is a registered trademark of Silicon Graphics, Inc..LinuxPPC is a trademark of Jeff Carr..Mac OS is a registered trademark of Apple Computer, Inc..NetBSD is a registered trademark of the NetBSD Foundation..Red Hat is a registered trademark of Red Hat, Inc..Linux is a registered trademark of Linus Torvalds..SCO and Unixware are registered trademarks of Santa Cruz Operation, Inc..Slackware is a registered trademark of Patrick Volkerding..Solaris is a registered trademark of Sun Microsystems, Inc..SuSE is a registered trademark of SuSE AG..Microsoft, Windows, Windows 95, Windows 98, Windows ME, Windows NT,.Windows 2000, and Windows XP are registered trademarks of Microsoft,.Inc..All other trademarks on this site are property of their respective owners..</p>.</div>.<div class="footer">.  Please s'K.@.S..6...6.the.  <a href="mailto:ethereal-users[AT]ethereal.com">ethereal-users[AT]ethereal.com</a>.    mailing list.<br>.  For corrections/additions/suggestions for this web page (and <b>not</b> Ethereal.  support questions), please send email to.  <a href="mailto:ethereal-web[AT]ethereal.com">ethereal-web[AT]ethereal.com</a>..<br>.  Last modified: Tue, April 20 2004..</div>.</body>.</html>.(K.@....6...6
\ No newline at end of file
diff --git a/exec/java-exec/src/test/resources/store/pcap/http.pcap b/exec/java-exec/src/test/resources/store/pcap/http.pcap
new file mode 100644
index 0000000..54f6f29
--- /dev/null
+++ b/exec/java-exec/src/test/resources/store/pcap/http.pcap
Binary files differ