<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>AFFLIB</title>
	<atom:link href="http://afflib.org/feed" rel="self" type="application/rss+xml" />
	<link>http://afflib.org</link>
	<description>Open Source Computer Forensics Software</description>
	<lastBuildDate>Thu, 12 Apr 2012 02:48:09 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>fiwalk moved to github</title>
		<link>http://afflib.org/archives/175</link>
		<comments>http://afflib.org/archives/175#comments</comments>
		<pubDate>Wed, 11 Apr 2012 16:54:40 +0000</pubDate>
		<dc:creator>Simson</dc:creator>
				<category><![CDATA[fiwalk]]></category>

		<guid isPermaLink="false">http://afflib.org/?p=175</guid>
		<description><![CDATA[fiwalk has been integrated into Sleuthkit. The current development version of Sleuthkit with fiwalk embedded can be downloaded from https://github.com/kfairbanks/sleuthkit. &#160;]]></description>
			<content:encoded><![CDATA[<p>fiwalk has been integrated into Sleuthkit. The current development version of Sleuthkit with fiwalk embedded can be downloaded from <a href="https://github.com/kfairbanks/sleuthkit">https://github.com/kfairbanks/sleuthkit</a>.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://afflib.org/archives/175/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>tcpflow moved to github</title>
		<link>http://afflib.org/archives/170</link>
		<comments>http://afflib.org/archives/170#comments</comments>
		<pubDate>Mon, 02 Apr 2012 18:43:01 +0000</pubDate>
		<dc:creator>Simson</dc:creator>
				<category><![CDATA[tcpflow]]></category>

		<guid isPermaLink="false">http://afflib.org/?p=170</guid>
		<description><![CDATA[tcpflow has been moved to github. You can find it now at: https://github.com/simsong/tcpflow The current version can be downloaded from: https://github.com/simsong/tcpflow/downloads]]></description>
			<content:encoded><![CDATA[<p>tcpflow has been moved to github. You can find it now at:<br />
<a href="https://github.com/simsong/tcpflow"> https://github.com/simsong/tcpflow</a></p>
<p>The current version can be downloaded from:<br />
<a href="https://github.com/simsong/tcpflow/downloads"> https://github.com/simsong/tcpflow/downloads</a></p>
]]></content:encoded>
			<wfw:commentRss>http://afflib.org/archives/170/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>AFFLIB moves to github</title>
		<link>http://afflib.org/archives/169</link>
		<comments>http://afflib.org/archives/169#comments</comments>
		<pubDate>Sun, 01 Apr 2012 00:33:06 +0000</pubDate>
		<dc:creator>Simson</dc:creator>
				<category><![CDATA[AFF]]></category>

		<guid isPermaLink="false">http://afflib.org/?p=169</guid>
		<description><![CDATA[AFFLIBv3 can now be downloaded from github at https://github.com/simsong/AFFLIBv3. You will find pre-compiled releases. If you wish to download your own copy with git, use the command: get clone git://github.com/simsong/AFFLIBv3.git]]></description>
			<content:encoded><![CDATA[<p>AFFLIBv3 can now be downloaded from github at <a href="https://github.com/simsong/AFFLIBv3">https://github.com/simsong/AFFLIBv3</a>.  You will find pre-compiled releases. If you wish to download your own copy with git, use the command:</p>
<p><code>get clone git://github.com/simsong/AFFLIBv3.git</code></p>
]]></content:encoded>
			<wfw:commentRss>http://afflib.org/archives/169/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ATA raw has been archived</title>
		<link>http://afflib.org/archives/163</link>
		<comments>http://afflib.org/archives/163#comments</comments>
		<pubDate>Sun, 18 Mar 2012 13:08:36 +0000</pubDate>
		<dc:creator>Simson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://afflib.org/?p=163</guid>
		<description><![CDATA[ATA Raw has been archived at http://simson.net/ref/2009/ataraw-0.2.1.tar.gz.]]></description>
			<content:encoded><![CDATA[<p>ATA Raw has been archived at <a href="http://simson.net/ref/2009/ataraw-0.2.1.tar.gz">http://simson.net/ref/2009/ataraw-0.2.1.tar.gz</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://afflib.org/archives/163/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Announcing bulk_extractor 1.2.</title>
		<link>http://afflib.org/archives/157</link>
		<comments>http://afflib.org/archives/157#comments</comments>
		<pubDate>Thu, 16 Feb 2012 03:06:23 +0000</pubDate>
		<dc:creator>Simson</dc:creator>
				<category><![CDATA[bulk_extractor]]></category>
		<category><![CDATA[release]]></category>

		<guid isPermaLink="false">http://afflib.org/?p=157</guid>
		<description><![CDATA[bulk_extractor Version 1.2 has been released for Linux, MacOS and Windows. Key features of Version 1.2 include: Dramatically improved performance of the AES and IP packet scanning modules. (scan_aes runs in 15% the time of the original implementation.) As a result, scan_aes and scan_net are now enabled by default. The stop-list and context-sensitive stop-list processing [...]]]></description>
			<content:encoded><![CDATA[<p>bulk_extractor Version 1.2 has been released for Linux, MacOS and Windows.</p>
<p>Key features of Version 1.2 include:</p>
<ul>
<li>Dramatically improved performance of the AES and IP packet scanning modules. (scan_aes runs in 15% the time of the original implementation.) As a result, scan_aes and scan_net are now enabled by default.</li>
<li>The stop-list and context-sensitive stop-list processing has been rewritten:
<ul>
<li>Feature files can now be used as context-sensitive stop lists.</li>
<li>Feature files with different sized contxt windows can be freely intermixed as stop lists.</li>
<li>The program make_context_stop_list.py is no longer used.</li>
<li>Stop-list files that are not feature files may contain literals or regular expressions.</li>
</ul>
</li>
<li>In practice, this means that the -s option has been removed. You can use -w with a text file that is a list of words, a list of regular expressions, or a feature file. If it is a feature file, it should just work as a context-sensitive stop list. It turns out that it was easier to write it this way than to have different switches for the different kinds of stop lists and then to throw error messages when the wrong kind of list was given to the wrong option.</li>
<li>The find (&#8220;-f&#8221;) option now searches for regular expressions, not globs.</li>
<li>Dramatically improved defenses against compression bombs. Now bulk_extractor detects that it is decompressing a compression bomb and goes into a &#8220;safe decompress&#8221; mode in which new compressed regions are not decompressed if they have an MD5 that matches other compressed regions that have been decompressed. A notation is written into the zip.txt feature file that a compression bomb was encountered.</li>
<li>scan_net now carves both IPv4 and IPv6 packets. As in Version 1.1, the resulting packets are put into PCAP files.</li>
<li>A new -G option allows the page size to be specified.</li>
<li>The pre-compiled Windows binary now runs faster than the Linux binary, although this is because it is not running scan_exif.</li>
<li>Wordlist deduplication is significantly faster.</li>
</ul>
<pre>PERFORMANCE STATISTICS
Disk image: /corp/drives/nps/nps-2009-ubnist1/ubnist1.gen3.E01
            /corp/drives/nps/nps-2009-ubnist1/ubnist1.gen3.E02
            Media size:         1.9 GiB (2106589184 bytes)
            MD5:                49a775d8b109a469d9dd01dc92e0db9c
Hardware:   MacBook Pro 2 Ghz Intel Core i7, 8GB 1333 Mhz DDR3
OS:         MacOS 10.7.3
Compiler:   i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1
            (Based on Apple Inc. build 5658)
            (LLVM build 2336.1.00) 

bulk_extractor version 1.1.3:   468.6 seconds (4.28 MBytes/sec)
bulk_extractor version 1.2.0:   350.7 seconds (5.72 MBytes/sec)
Windows 7, same platform, scan_exiv disabled:
bulk_extractor.exe 1.2.0:       207.4 seconds (9.69 MBytes/sec) 

Current list of bulk_extractor scanners:
scan_accts   - Looks for phone numbers, credit card numbers, etc
scan_base64  - decodes BASE64 text
scan_kml     - Detects KML files
scan_gps     - Detects XML from Garmin GPS devices
scan_aes     - Detects in-memory AES keys from their key schedules
scan_json    - Detects JavaScript Object Notation files
scan_exif    - Detects EXIF structures from JPEGs
scan_zip     - Detects and decompresses ZIP files and zlib streams
scan_gzip    - Detects and decompresses GZIP files and gzip stream
scan_pdf     - Extracts text from some kinds of PDF files
scan_hiber   - Detects and decompresses Windows hibernation
               file fragments
scan_winprefetch
             - Detects and extracts fields from Windows
               prefetch files and file fragments.
Current list of bulk_extractor feature files:
aes_keys.txt - AES encryption keys
alerts.txt   - Features found on alert list (redlist)
ccn.txt      - credit card numbers
ccn_track2.txt - Track 2 information
domain.txt   - All extracted domain names and IP addresses
email.txt    - extracted email addresses
ether.txt    - extracted ethernet addresses. Currently
               overcollecting due to a failure to consider
               local context.
exif.txt     - All exif fields from JPEGs; extracted as XML.
find.txt     - Hits on find command.
gps.txt      - Extracted GPS coordinates from Garmin XML and
               GPS-enabled JPEG files
ip.txt       - Extracted IP addresses from scan_net
               cksum-bad indicates checksum test failed;
               those are less likely to actually be IP
               addresses.
json.txt     - Extracted and validated JavaScript Object
               Notation fragments.
kml.txt      - Extracted KML files
report.xml   - The DFXML file that explains what happened.
rfc822.txt   - All extracted RFC822 headers
tcp.txt      - Summaries of all extracted UDP and TCP packets.
telephone.txt- Extracted phone numbers
url.txt      - Extracted URLs
  url_facebook-id - extracted Facebook IDs
  url_microsoft-live - extracted Microsoft Live IDs
  url_searches       - extracted search terms
  url_services       - extracted services from URLs
winprefetch.txt - Windows prefetch files and fragments,
                  recoded as XML for easy processing.
wordlist.txt - All the words
zip.txt      - Information about all ZIP files and zip
               components.</pre>
<p>Feature List for 1.3:</p>
<p>We are considering the following features for 1.3:</p>
<ul>
<li>Putting a BOM at the beginning of all feature files and forcing the coding of the features to UTF-8 (The context will still be reported as ASCII with octal escaping of values outside the printable range.)</li>
<li>Replacing FTS with a new implementation for searching files.</li>
<li>Replacing exiv2 with our own EXIF processor.</li>
<li>Automatically detecting and reporting Window shortcut files and IE history.</li>
<li>Scanning for the start of bitlocker protected volumes.</li>
<li>Support for checkpointing using BLCR.</li>
<li>Improved restarting, so that each page is retried once but only once. (Frankly, the improved reliability in verson 1.2 made this request less important.)</li>
<li>Support on distributed computing arrays.</li>
</ul>
<p>We are also considering the following scanners (and need<br />
help!):</p>
<ul>
<li>LZMA decompression</li>
<li>RAR &amp; RAR2 decompression</li>
<li>BZIP2 decompression</li>
<li>MSI decompression</li>
<li>CAB decompression</li>
<li>NTFS decompression</li>
<li>VCARD detection</li>
<li>PE Header Detection</li>
<li>Better handling of MIME encoding</li>
<li>SQLite database identification</li>
<li>Processing of physical drives</li>
<li>Scanning for MD5 hash codes</li>
<li>Scanning for word lists</li>
<li>Python bridge, so scanners can be written in python</li>
</ul>
<p>As always, bulk_extractor can be downloaded from <a href="http://afflib.org/">http://afflib.org/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://afflib.org/archives/157/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>tcpflow 1.1.0 released!</title>
		<link>http://afflib.org/archives/155</link>
		<comments>http://afflib.org/archives/155#comments</comments>
		<pubDate>Sun, 29 Jan 2012 04:24:50 +0000</pubDate>
		<dc:creator>Simson</dc:creator>
				<category><![CDATA[tcpflow]]></category>

		<guid isPermaLink="false">http://afflib.org/?p=155</guid>
		<description><![CDATA[Version 1.1.0 19 January 2012 (SVN 8118) I am pleased to announce the release of tcpflow version 1.1. Version 1.1 represents a significant rewrite of tcpflow. All users are encouraged to upgrade. Significant changes include: * Entire code base migrated to C++ ; code generally improved. tcpflow's original hash table has been replaced with a [...]]]></description>
			<content:encoded><![CDATA[<pre>Version 1.1.0 19 January 2012 (SVN 8118)

I am pleased to announce the release of tcpflow version 1.1.

Version 1.1 represents a significant rewrite of tcpflow. All users are
encouraged to upgrade.

Significant changes include:

* Entire code base migrated to C++ ; code generally
  improved. tcpflow's original hash table has been replaced with a
  tr1::unordered_map which should offer significantly more
  scalability. 

* tcpflow now automatically expires out old connections. This finally
  end the program's memory-hogging problem. (You can disable this
  behavior with -P, which makes tcpflow run faster because it never
  cleans up after itself. That's fine if you are working with less
  than a million connections.)

* Multiple connections with the same (source/destination) are now
  detected and stored in different files. This is significant, as the
  previous implementation would make a single file 1-2GB in length if
  you the same host/port pairs with two different flows. Additional
  files have the same filename and a "c0001", "c0002" appended.

* Filenames may now be prefixed with either the ISO8601 time or a Unix
  timestamp  indicating the time that the connection was first seen.

* tcpflow will now save a DFXML file containing information for each
  flow that it reconstructs.

* The following new options are now implemented:

  -o outdir --- now works (previously was not implemented)
  -X xmfile --- now reports execution results in a DFXML
                file. (Version 1.1 will include complete notion in the XML file of
                every TCP connection as a DFXML
  -Fc       --- Every file has the 'cXXXX' postfix, rather than just
                the files with duplicate source/destination.
  -Ft       --- Every file has the T prefix.
  -FT       --- Every file has an ISO8601 time prefix,
                e.g. 2012-01-01T09:45:15Z
  -mNNNN    --- Specifies the minimum number of bytes that need to be
                skipped in a TCP connection before a new
  -Lname    --- use the named semaphore 'name' to prevent multiple tcpflow
                processes printing to standard output from overprinting each other.
  -P        --- do not prune the tcp connection table.

Other improvements include:

* Support for IPv6

* Support for VLANs

* The default filter which was causing problems under MacOS has been removed.

tcpflow can be downloaded from:

http://afflib.org/

http://afflib.org/software/tcpflow

Finally, because the previous maintainer had lost control of the old
tcpflow mailing list, a new one has been created at Google Groups. You
can subscribe at:

http://groups.google.com/group/tcpflow-users</pre>
]]></content:encoded>
			<wfw:commentRss>http://afflib.org/archives/155/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>docx_steg is posted</title>
		<link>http://afflib.org/archives/154</link>
		<comments>http://afflib.org/archives/154#comments</comments>
		<pubDate>Thu, 26 Jan 2012 12:58:58 +0000</pubDate>
		<dc:creator>Simson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://afflib.org/?p=154</guid>
		<description><![CDATA[I received a query about the docx stegnography tool that was developed with Jim Migletz back in 2008, so it has been posted to my private website at http://simson.net/page/Docx_steg]]></description>
			<content:encoded><![CDATA[<p>I received a query about the docx stegnography tool that was developed with Jim Migletz back in 2008, so it has been posted to my private website at <a href="http://simson.net/page/Docx_steg">http://simson.net/page/Docx_steg</a></p>
]]></content:encoded>
			<wfw:commentRss>http://afflib.org/archives/154/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New Releases!</title>
		<link>http://afflib.org/archives/151</link>
		<comments>http://afflib.org/archives/151#comments</comments>
		<pubDate>Fri, 02 Dec 2011 14:42:10 +0000</pubDate>
		<dc:creator>Simson</dc:creator>
				<category><![CDATA[AFF]]></category>
		<category><![CDATA[bulk_extractor]]></category>
		<category><![CDATA[fiwalk]]></category>

		<guid isPermaLink="false">http://afflib.org/?p=151</guid>
		<description><![CDATA[Today we are making a series of minor software releases to fix minor bugs and to address some compatibility issues with various versions of Linux. This include: AFFLIB 3.6.15 fiwalk 0.6.16. (This is the last version of fiwalk that will include the DFXML tools; they will be moved into a new release as fiwalk is [...]]]></description>
			<content:encoded><![CDATA[<p>Today we are making a series of minor software releases to fix minor bugs and to address some compatibility issues with various versions of Linux. This include:</p>
<ul>
<li>AFFLIB 3.6.15</li>
<li>fiwalk 0.6.16. (This is the last version of fiwalk that will include the DFXML tools; they will be moved into a new release as fiwalk is being folded into SleuthKit.)</li>
<li>bulk_extractor version 1.1.1. (Version 1.0 had two minor bugs, one having to do with the identify_filenames.py script, and one having to do with histogram generation.)</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://afflib.org/archives/151/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Debugging bulk_extractor Performance Problems</title>
		<link>http://afflib.org/archives/150</link>
		<comments>http://afflib.org/archives/150#comments</comments>
		<pubDate>Wed, 09 Nov 2011 14:43:45 +0000</pubDate>
		<dc:creator>Simson</dc:creator>
				<category><![CDATA[bulk_extractor]]></category>

		<guid isPermaLink="false">http://afflib.org/?p=150</guid>
		<description><![CDATA[A user reported that disk #0005.aff was taking a surprising amount of time to complete processing&#8212;more than 50 minutes. We ran bulk_extractor on the disk: $ src/bulk_extractor -o test5 0005.aff Hostname: t Input file: 0005.aff Output directory: test5 Disk Size: 130351104 Threads: 8 Phase 1. 17:18:00 Page 0 (0.00%) Completed. Done in n/a 17:18:02 Page [...]]]></description>
			<content:encoded><![CDATA[<p>A user reported that disk #0005.aff was taking a surprising amount of time to complete processing&#8212;more than 50 minutes. We ran bulk_extractor on the disk:</p>
<p><code><br />
$ src/bulk_extractor -o test5 0005.aff<br />
Hostname: t<br />
Input file: 0005.aff<br />
Output directory: test5<br />
Disk Size: 130351104<br />
Threads: 8<br />
Phase 1.<br />
17:18:00 Page 0 (0.00%) Completed. Done in n/a<br />
17:18:02 Page 1 (12.50%) Completed. Done in  0:00:46<br />
17:18:04 Page 2 (25.00%) Completed. Done in  0:00:26<br />
17:18:06 Page 3 (37.50%) Completed. Done in  0:00:18<br />
17:18:08 Page 4 (50.00%) Completed. Done in  0:00:12<br />
17:18:10 Page 5 (62.50%) Completed. Done in  0:00:09<br />
17:18:13 Page 6 (75.00%) Completed. Done in  0:00:06<br />
17:18:13 Page 7 (87.50%) Completed. Done in  0:00:02<br />
All Data is Read; waiting for threads to finish...</p>
<p>Time elapsed waiting for 1 thread to finish: 60 min 1 sec  (wait at least 50 min))</p>
<p> ... this shouldn't take more than an hour. Exiting ...<br />
 ... Please report to the bulk_extractor maintainer ...<br />
All Threads Finished!<br />
Phase 2. Shutting down scanners<br />
Phase 3. Creating Histograms<br />
0: make_histogram(,histogram) -> test5/ccn_histogram.txt<br />
0: make_histogram(,histogram) -> test5/ccn_track2_histogram.txt<br />
0: make_histogram(,histogram) -> test5/domain_histogram.txt<br />
0: make_histogram(,histogram) -> test5/email_histogram.txt<br />
0: make_histogram(([^(]+),histogram) -> test5/ether_histogram.txt<br />
0: make_histogram(([^(]+),histogram) -> test5/ip_histogram.txt<br />
0: make_histogram(,histogram) -> test5/tcp_histogram.txt<br />
0: make_histogram(,histogram) -> test5/telephone_histogram.txt<br />
0: make_histogram(,histogram) -> test5/url_histogram.txt<br />
0: make_histogram(://([^/]+),services) -> test5/url_services.txt<br />
0: make_histogram(://(cid-[0-9a-f])+[a-z.].live.com/),microsoft-live) -> test5/url_microsoft-live.txt<br />
0: make_histogram(://[-_a-z0-9.]+facebook.com/.*(id=[0-9]+),facebook-id) -> test5/url_facebook-id.txt<br />
0: make_histogram(search.*[?&#038;/;fF][pq]=([^&#038;/]+),searches) -> test5/url_searches.txt<br />
# elapsed time: 3618.5 seconds<br />
</code></p>
<p>As can be seen, the program terminated itself when one of the threads required more than 60 minutes to complete activity.</p>
<p>The file report.xml in the output directory contains an accounting of how many times each scanner is called. Given that there are 8 pages in the file 0005.aff, each scanner should be called 8 times at the top level. Here is a section of the file:<br />
<code><br />
&nbsp;&nbsp;&lt;scanners&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;name&gt;ACCTS&lt;/name&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;calls&gt;8&lt;/calls&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;seconds&gt;19.733836&lt;/seconds&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;name&gt;BASE64&lt;/name&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;calls&gt;8&lt;/calls&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;seconds&gt;2.000809&lt;/seconds&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;name&gt;EMAIL&lt;/name&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;calls&gt;8&lt;/calls&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;seconds&gt;24.539532&lt;/seconds&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;name&gt;EXIF&lt;/name&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;calls&gt;8&lt;/calls&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;seconds&gt;28.422602&lt;/seconds&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;name&gt;FIND&lt;/name&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;calls&gt;8&lt;/calls&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;seconds&gt;10.511128&lt;/seconds&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;name&gt;GPS&lt;/name&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;calls&gt;8&lt;/calls&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;seconds&gt;26.975640&lt;/seconds&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;name&gt;GZIP&lt;/name&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;calls&gt;8&lt;/calls&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;seconds&gt;1.215070&lt;/seconds&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;name&gt;HIBER&lt;/name&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;calls&gt;7&lt;/calls&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;seconds&gt;0.712045&lt;/seconds&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;name&gt;JSON&lt;/name&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;calls&gt;8&lt;/calls&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;seconds&gt;3.598577&lt;/seconds&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;name&gt;KML&lt;/name&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;calls&gt;8&lt;/calls&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;seconds&gt;13.851020&lt;/seconds&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;name&gt;NET&lt;/name&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;calls&gt;8&lt;/calls&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;seconds&gt;116.055016&lt;/seconds&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;name&gt;PDF&lt;/name&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;calls&gt;7&lt;/calls&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;seconds&gt;317.052024&lt;/seconds&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;name&gt;WINPREFETCH&lt;/name&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;calls&gt;7&lt;/calls&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;seconds&gt;5.515840&lt;/seconds&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;name&gt;ZIP&lt;/name&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;calls&gt;8&lt;/calls&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;seconds&gt;6.532860&lt;/seconds&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;name&gt;ZIP-ACCTS&lt;/name&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;calls&gt;1&lt;/calls&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;seconds&gt;0.426945&lt;/seconds&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;name&gt;ZIP-BASE64&lt;/name&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;calls&gt;1&lt;/calls&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;seconds&gt;0.025480&lt;/seconds&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;name&gt;ZIP-EMAIL&lt;/name&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;calls&gt;1&lt;/calls&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;seconds&gt;0.463570&lt;/seconds&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;name&gt;ZIP-EXIF&lt;/name&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;calls&gt;1&lt;/calls&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;seconds&gt;0.473475&lt;/seconds&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;name&gt;ZIP-FIND&lt;/name&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;calls&gt;1&lt;/calls&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;seconds&gt;0.245742&lt;/seconds&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;name&gt;ZIP-GPS&lt;/name&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;calls&gt;1&lt;/calls&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;seconds&gt;0.394898&lt;/seconds&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;name&gt;ZIP-GZIP&lt;/name&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;calls&gt;1&lt;/calls&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;seconds&gt;0.013586&lt;/seconds&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;name&gt;ZIP-HIBER&lt;/name&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;calls&gt;1&lt;/calls&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;seconds&gt;0.013528&lt;/seconds&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;name&gt;ZIP-JSON&lt;/name&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;calls&gt;1&lt;/calls&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;seconds&gt;0.038624&lt;/seconds&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;name&gt;ZIP-KML&lt;/name&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;calls&gt;1&lt;/calls&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;seconds&gt;0.295015&lt;/seconds&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;name&gt;ZIP-NET&lt;/name&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;calls&gt;1&lt;/calls&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;seconds&gt;2.536063&lt;/seconds&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;name&gt;ZIP-PDF&lt;/name&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;calls&gt;1&lt;/calls&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;seconds&gt;0.242040&lt;/seconds&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;name&gt;ZIP-WINPREFETCH&lt;/name&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;calls&gt;1&lt;/calls&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;seconds&gt;0.110463&lt;/seconds&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;path&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;name&gt;ZIP-ZIP&lt;/name&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;calls&gt;1&lt;/calls&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;seconds&gt;0.013513&lt;/seconds&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/path&gt;<br />
&nbsp;&nbsp;&lt;/scanners&gt;<br />
</code><br />
As can be seen, the scanner PDF is only called 7 times, not 8. That&#8217;s because the 8th time it was called it never finished, and was instead interrupted by the driver program.</p>
<p>To verify that scan_pdf was the problem, we ran bulk_extractor on the test disk with the PDF scanner disabled:</p>
<p><code><br />
simsong@t:~/domex/src/bulk_extractor$ src/bulk_extractor -xpdf -o test6 0005.aff<br />
Hostname: t<br />
Input file: 0005.aff<br />
Output directory: test6<br />
Disk Size: 130351104<br />
Threads: 8<br />
Phase 1.<br />
18:21:56 Page 0 (0.00%) Completed. Done in n/a<br />
18:21:58 Page 1 (12.50%) Completed. Done in  0:00:42<br />
18:22:00 Page 2 (25.00%) Completed. Done in  0:00:24<br />
18:22:02 Page 3 (37.50%) Completed. Done in  0:00:17<br />
18:22:04 Page 4 (50.00%) Completed. Done in  0:00:11<br />
18:22:05 Page 5 (62.50%) Completed. Done in  0:00:08<br />
18:22:08 Page 6 (75.00%) Completed. Done in  0:00:05<br />
18:22:08 Page 7 (87.50%) Completed. Done in  0:00:02<br />
All Data is Read; waiting for threads to finish...</p>
<p>Time elapsed waiting for 1 thread to finish: 37 sec  (wait at least 50 min)All Threads Finished!<br />
Phase 2. Shutting down scanners<br />
Phase 3. Creating Histograms<br />
0: make_histogram(,histogram) -> test6/ccn_histogram.txt<br />
0: make_histogram(,histogram) -> test6/ccn_track2_histogram.txt<br />
0: make_histogram(,histogram) -> test6/domain_histogram.txt<br />
0: make_histogram(,histogram) -> test6/email_histogram.txt<br />
0: make_histogram(([^(]+),histogram) -> test6/ether_histogram.txt<br />
0: make_histogram(([^(]+),histogram) -> test6/ip_histogram.txt<br />
0: make_histogram(,histogram) -> test6/tcp_histogram.txt<br />
0: make_histogram(,histogram) -> test6/telephone_histogram.txt<br />
0: make_histogram(,histogram) -> test6/url_histogram.txt<br />
0: make_histogram(://([^/]+),services) -> test6/url_services.txt<br />
0: make_histogram(://(cid-[0-9a-f])+[a-z.].live.com/),microsoft-live) -> test6/url_microsoft-live.txt<br />
0: make_histogram(://[-_a-z0-9.]+facebook.com/.*(id=[0-9]+),facebook-id) -> test6/url_facebook-id.txt<br />
0: make_histogram(search.*[?&#038;/;fF][pq]=([^&#038;/]+),searches) -> test6/url_searches.txt<br />
# elapsed time: 52.9 seconds<br />
simsong@t:~/domex/src/bulk_extractor$ src/bulk_extractor -Epdf -o test7 0005.aff<br />
</code></p>
<p>Now the program finished in 52.9 seconds.</p>
<p>We re-ran bulk_extractor under the GDB debugger, this time with ONLY the PDF scanner enabled. When the was only one thread remaining, we interrupted the program:</p>
<p><code><br />
(gdb) run -Epdf -o test7 0005.aff<br />
Starting program: /home/simsong/domex/src/bulk_extractor/src/bulk_extractor -Epdf -o test7 0005.aff<br />
[Thread debugging using libthread_db enabled]<br />
Hostname: t<br />
Input file: 0005.aff<br />
Output directory: test7<br />
Disk Size: 130351104<br />
Threads: 8<br />
[New Thread 0x7ffff4c82700 (LWP 1042)]<br />
[New Thread 0x7ffff4431700 (LWP 1044)]<br />
[New Thread 0x7ffff3be0700 (LWP 1045)]<br />
[New Thread 0x7ffff338f700 (LWP 1046)]<br />
[New Thread 0x7ffff2b3e700 (LWP 1048)]<br />
[New Thread 0x7ffff22ed700 (LWP 1050)]<br />
[New Thread 0x7ffff1a9c700 (LWP 1052)]<br />
[New Thread 0x7ffff124b700 (LWP 1053)]<br />
Phase 1.<br />
18:31:41 Page 0 (0.00%) Completed. Done in n/a<br />
18:31:44 Page 1 (12.50%) Completed. Done in  0:00:42<br />
18:31:46 Page 2 (25.00%) Completed. Done in  0:00:24<br />
18:31:48 Page 3 (37.50%) Completed. Done in  0:00:17<br />
18:31:49 Page 4 (50.00%) Completed. Done in  0:00:11<br />
18:31:51 Page 5 (62.50%) Completed. Done in  0:00:08<br />
18:31:53 Page 6 (75.00%) Completed. Done in  0:00:05<br />
18:31:53 Page 7 (87.50%) Completed. Done in  0:00:02<br />
All Data is Read; waiting for threads to finish...<br />
Time elapsed waiting for 1 thread to finish: 24 min 48 sec  (wait at least 50 min)<br />
</code></p>
<p>At this point we interrupt and use GDB to figure out which thread is having problems:</p>
<p><code><br />
Time elapsed waiting for 1 thread to finish: 24 min 48 sec  (wait at least 50 min)  C-c C-c<br />
Program received signal SIGINT, Interrupt.<br />
0x00007ffff5be25ad in nanosleep () from /lib/x86_64-linux-gnu/libc.so.6<br />
(gdb) where<br />
#0  0x00007ffff5be25ad in nanosleep () from /lib/x86_64-linux-gnu/libc.so.6<br />
#1  0x00007ffff5c13984 in usleep () from /lib/x86_64-linux-gnu/libc.so.6<br />
#2  0x000000000040d621 in do_phase1 (fn=0x7fffffffe45d "0005.aff", cp=..., p=0xa38010, fs=..., xreport=.\<br />
.., page_number=@0x7fffffffdaa8, total_bytes=@0x7fffffffd888, timer=...) at bulk_extractor.cpp:769<br />
#3  0x000000000040f46c in main (argc=1, argv=0x7fffffffe0d8) at bulk_extractor.cpp:1022<br />
(gdb) thread<br />
[Current thread is 1 (Thread 0x7ffff7fcf740 (LWP 977))]<br />
(gdb) thread 2<br />
[Switching to thread 2 (Thread 0x7ffff4c82700 (LWP 1042))]#0  0x00007ffff5ed4bac in pthread_cond_wait@@GLIBC_2.3.\<br />
2 () from /lib/x86_64-linux-gnu/libpthread.so.0<br />
(gdb) where<br />
#0  0x00007ffff5ed4bac in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/x86_64-linux-gnu/libpthread.so.0<br />
#1  0x000000000041a121 in worker::run (this=0xa3ffc0) at threadpool.cpp:163<br />
#2  0x000000000041a2f7 in worker::start_worker (arg=0xa3ffc0) at threadpool.h:60<br />
#3  0x00007ffff5ecfd8c in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0<br />
#4  0x00007ffff5c1b04d in clone () from /lib/x86_64-linux-gnu/libc.so.6<br />
#5  0x0000000000000000 in ?? ()<br />
(gdb) thread 3<br />
[Switching to thread 3 (Thread 0x7ffff4431700 (LWP 1044))]#0  scan_pdf (sp=..., rcb=...) at scan_pdf.cpp:83<br />
(gdb) where<br />
#0  scan_pdf (sp=..., rcb=...) at scan_pdf.cpp:83<br />
#1  0x000000000040c3d8 in process_extract (sp=...) at bulk_extractor.cpp:576<br />
#2  0x000000000041a254 in worker::do_work (this=0xa40e20, sbuf=0x3d41f00) at threadpool.cpp:187<br />
#3  0x000000000041a1c6 in worker::run (this=0xa40e20) at threadpool.cpp:173<br />
#4  0x000000000041a2f7 in worker::start_worker (arg=0xa40e20) at threadpool.h:60<br />
#5  0x00007ffff5ecfd8c in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0<br />
#6  0x00007ffff5c1b04d in clone () from /lib/x86_64-linux-gnu/libc.so.6<br />
#7  0x0000000000000000 in ?? ()<br />
(gdb)<br />
</code></p>
<p>As expected, the problem is in scan_pdf.cpp (at line 83, in fact).</p>
<p>At this point we were able to identify the bug in scan_pdf that was causing an infinite loop and eliminate the problem.</p>
]]></content:encoded>
			<wfw:commentRss>http://afflib.org/archives/150/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>tcpflow 1.0.1 is released!</title>
		<link>http://afflib.org/archives/145</link>
		<comments>http://afflib.org/archives/145#comments</comments>
		<pubDate>Mon, 26 Sep 2011 02:00:08 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[tcpflow]]></category>
		<category><![CDATA[release]]></category>

		<guid isPermaLink="false">http://afflib.org/?p=145</guid>
		<description><![CDATA[I am happy to announce that tcpflow 1.0.1 is now available. Improvements in tcpflow 1.0.1 over the version widely in use today (version 0.21) include: Support for VLANs Support for IPv6 (thanks to contributions from Jan Görig). Regression testing (note: the IPv6 is currently not regression tested because due to implementation differences of inet_ntop on [...]]]></description>
			<content:encoded><![CDATA[<p>I am happy to announce that tcpflow 1.0.1 is now available. Improvements in tcpflow 1.0.1 over the version widely in use today (version 0.21) include:</p>
<ul>
<li>Support for VLANs</li>
<li>Support for IPv6 (thanks to contributions from Jan Görig).</li>
<li>Regression testing (note: the IPv6 is currently not regression tested because due to implementation differences of inet_ntop on MacOS and Linux).</li>
</ul>
<p>The new version is available for download at <a href="http://afflib.org/downloads/tcpflow-1.0.1.tar.gz">http://afflib.org/downloads/tcpflow-1.0.1.tar.gz</a></p>
<p><strong>Background: </strong>With the original author&#8217;s approval, I have taken over the management of maintenance of the tcpflow open source TCP reconstructor. I brought the software up-to-date with the current release of GNU autotools, applied various patches that were floating around, and added the VLAN support. I am now trying to get the tcpflow in various Linux distributions updated.</p>
<p><strong>Future Direction: </strong>I would like to rewrite parts of tcpflow in C++ so that I can take advantage of the STL map class, which is significantly more efficient than the current data structure used by tcpflow to maintain state. I also want to make a linkable tcp flow reconstruction library. I am looking for input from tcpflow users as to 1) whether rewriting in C++ is okay, and 2) what form the library should take.</p>
<p>Once again, you can download the new version from <a href="http://afflib.org/downloads/tcpflow-1.0.1.tar.gz">http://afflib.org/downloads/tcpflow-1.0.1.tar.gz</a></p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://afflib.org/archives/145/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

