diff options
| author | David Oberhollenzer <david.oberhollenzer@sigma-star.at> | 2020-02-22 14:18:13 +0100 | 
|---|---|---|
| committer | David Oberhollenzer <david.oberhollenzer@sigma-star.at> | 2020-02-22 14:18:13 +0100 | 
| commit | a807a45ffd64db60dc69012bef2538eaac3dac0b (patch) | |
| tree | 818b73062c8684f9b96fca49d7d6d477c450fc22 /tar | |
| parent | 0b1fce762dca88659b3103783e8852cb7265823e (diff) | |
Make hard link detection scale better
Instead of doing a linear search, which scales quadratically, use a
red-black tree with inode numbers as key for finding hard links.
To reiterate: we can't just use a flat table, because the SquashFS
file is potentially untrusted and the inode numbers can be anything,
no matter what the super block says.
Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
Diffstat (limited to 'tar')
| -rw-r--r-- | tar/Makemodule.am | 2 | 
1 files changed, 1 insertions, 1 deletions
| diff --git a/tar/Makemodule.am b/tar/Makemodule.am index 9d56ebb..e065ef7 100644 --- a/tar/Makemodule.am +++ b/tar/Makemodule.am @@ -1,6 +1,6 @@  sqfs2tar_SOURCES = tar/sqfs2tar.c  sqfs2tar_CFLAGS = $(AM_CFLAGS) $(PTHREAD_CFLAGS) -sqfs2tar_LDADD = libcommon.a libsquashfs.la libtar.a libcompat.a +sqfs2tar_LDADD = libcommon.a libutil.a libsquashfs.la libtar.a libcompat.a  sqfs2tar_LDADD += libfstree.a $(LZO_LIBS) $(PTHREAD_LIBS)  tar2sqfs_SOURCES = tar/tar2sqfs.c | 
