From: Paul Eggert Date: Sat, 9 Aug 2025 23:13:39 +0000 (-0700) Subject: Avoid hash_meta_directory int overflow X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ea7cfcba77eb102a48001224f8cf3d4de3295a2f;p=thirdparty%2Ftar.git Avoid hash_meta_directory int overflow * src/incremen.c (hash_directory_meta): Avoid possibility of signed integer overflow. --- diff --git a/src/incremen.c b/src/incremen.c index 76f982b4..7a8327d3 100644 --- a/src/incremen.c +++ b/src/incremen.c @@ -284,8 +284,8 @@ static size_t hash_directory_meta (void const *entry, size_t n_buckets) { struct directory const *directory = entry; - /* FIXME: Work out a better algorytm */ - return (directory->st_dev + directory->st_ino) % n_buckets; + /* FIXME: Work out a better algorithm. */ + return (directory->st_dev ^ directory->st_ino) % n_buckets; } /* Compare two directories for equality of their device and inode numbers. */