cvs commit: src/lib/libarchive Makefile archive.h.in
archive_read_support_format_ar.c archive_write_set_format_ar.c
archive_write_set_format_by_name.c
src/lib/libarchive/test test_read_format_ar.c test_write_format_ar.c
Tim Kientzle
kientzle at FreeBSD.org
Sat Apr 14 22:34:11 UTC 2007
kientzle 2007-04-14 22:34:10 UTC
FreeBSD src repository
Modified files:
lib/libarchive Makefile archive.h.in
archive_read_support_format_ar.c
archive_write_set_format_ar.c
archive_write_set_format_by_name.c
lib/libarchive/test test_read_format_ar.c
test_write_format_ar.c
Log:
Overhaul of 'ar' support:
* use "AR_GNU" as the format name instead of AR_SVR4 (it's what everyone is going to call it anyway)
* Simplify numeric parsing to unsigned (none of the numeric values should ever be negative); don't run off end of numeric fields.
* Finish parsing the common header fields before the next I/O request (which might dump the contents)
* Be smarter about format guessing and trimming filenames.
* Most of the magic values are only used in one place, so just inline them.
* Many more comments.
* Be smarter about handling damaged entries; return something reasonable.
* Call it a "filename table" instead of a "string table"
* Update tests.
Enable selection of 'ar', 'arbsd', and 'argnu' formats by name
(this allows bsdtar to create ar format archives).
The 'ar' writer still needs some work; it should reject
entries that aren't regular files and should probably also
strip leading paths from filenames.
Revision Changes Path
1.69 +1 -0 src/lib/libarchive/Makefile
1.42 +1 -1 src/lib/libarchive/archive.h.in
1.4 +206 -216 src/lib/libarchive/archive_read_support_format_ar.c
1.2 +2 -2 src/lib/libarchive/archive_write_set_format_ar.c
1.6 +4 -0 src/lib/libarchive/archive_write_set_format_by_name.c
1.2 +16 -5 src/lib/libarchive/test/test_read_format_ar.c
1.2 +5 -4 src/lib/libarchive/test/test_write_format_ar.c
More information about the cvs-src
mailing list