resurrecting-open-source-projects / dcfldd

Enhanced version of dd for forensics and security
GNU General Public License v2.0
90 stars 19 forks source link

Improvements from dave #3

Closed eribertomota closed 5 years ago

eribertomota commented 5 years ago
Several changes and improvements

From SF.net[1]. Changes from Dave.

[1] https://sourceforge.net/p/dcfldd/patches/3/

Additions:

* Allows for partial write of block during conv=sync if at the end of input.
* Allows limit=<# of bytes> to limit the count of input, rather than
  count=<# of blocks>.
* Closes all popened processes. (Uses internal popen call, rather than original
  popen2.)
* Allows sizeprobe=<# of bytes> to manually specify.
* Allows for splitformat=MAC to use output file naming of foo.dmg,
  foo.002.dmgpart, ..., foo.999.dmgpart, foo.1000.dmgpart, ....
* Allows for splitformat=WIN to use output file naming of foo.001, foo.002,
  ..., foo.999, foo.1000, ....
* Fixes too many opened files bug.

The following change in dcfldd.c was rejected because the source code is
 updated:

@@ -760,6 +794,8 @@
             sizeprobe(STDIN_FILENO);
     else if (probe == PROBE_OUTPUT)
         sizeprobe(STDOUT_FILENO);
+    if (probe == PROBE_INPUT_PROVIDED)
+      probe = PROBE_INPUT;
     start_time = time(NULL);

     if (do_verify)