Tim Kientzle
8df3c224c0
Provide framework for exiting with non-zero value on non-critical errors.
2004-05-27 04:30:59 +00:00
Tim Kientzle
088bdb251d
Propagate struct bsdtar down into a lot more places.
...
Move global progname variable into struct bsdtar.
2004-05-17 05:44:53 +00:00
Tim Kientzle
7283cd6959
Refactor name caching to use a common piece of code for uname_cache and
...
gname_cache. Cache negative lookups to dramatically improve performance
building archives containing nonexistent uid/gid.
2004-05-17 05:02:39 +00:00
Tim Kientzle
4a07f42b98
Make symlink protection a bit more useful:
...
* Remove terminal symlinks so they can be replaced.
* If -U, remove intermediate symlinks as well
* Otherwise, refuse the extraction
2004-05-17 03:33:06 +00:00
Tim Kientzle
9644b0783f
For portability, don't rely on libc's strmode(3). <sigh>
2004-05-03 21:05:59 +00:00
Tim Kientzle
020287607f
A security issue: An archive containing a symlink to another
...
directory, then a file with that symlink as a prefix can drop a file
outside of the current directory, which can be a security hole.
Plug this hole by refusing to extract files if a prefix of the
pathname is a symlink. The -P option disables this check.
2004-05-02 00:43:02 +00:00
Tim Kientzle
855e109158
As suggested by Julian Elischer, use a self-sizing hash
...
table for the hardlink cache. This dramatically improves
performance when archiving millions of hardlinked files.
While I'm here, clean up some style bugs (per Bruce Evans)
and clarify some comments.
2004-04-15 22:37:54 +00:00
Tim Kientzle
17834543c8
A simple cache of uid->uname lookups and gid->gname lookups eliminates
...
almost 1/2 of the CPU time required to create an uncompressed archive
and makes a noticable reduction in wallclock time.
2004-04-14 00:40:54 +00:00
Tim Kientzle
330924f9bd
Add support for -T option on create.
...
(Required by pkg_create.)
2004-04-08 06:12:01 +00:00
Tim Kientzle
d7fe3b4f52
Initial commit for bsdtar.
2004-04-05 21:32:18 +00:00