Only consume a second all-null record

Currently any record following an all-null record will be consumed.
This is probably not the intended behavior, as it does not match the
comment and consumes/ignores unexpected and unrecognized data.  In
particular, for the read_concatenated_archives case, it could
incorrectly consume a non-null header.

Signed-off-by: Kevin Locke <kevin@kevinlocke.name>
[PATCH v3] Add read_concatenated_archives

As discussed in http://code.google.com/p/libarchive/issues/detail?id=348
the read_concatenated_archives option provides functionality similar to
the GNUtar --ignore-zeros option in order to support reading from
archives which have been concatenated together.

Changes in v2:
 * Replace recursion with looping for reading concatenated archives.

Changes in v3:
 * Improve comments about archive format detection and looping when
   reading concatenated archives.

Signed-off-by: Kevin Locke <kevin@kevinlocke.name>
Add a test for read_concatenated_archives

Make sure that we are reading the concatenated contents when requested
and only when requested.

Signed-off-by: Kevin Locke <kevin@kevinlocke.name>