]> git.ipfire.org Git - thirdparty/e2fsprogs.git/commitdiff
libuuid: fix UBSAN issue in get_random_fd()
authorTheodore Ts'o <tytso@mit.edu>
Fri, 23 Feb 2018 20:39:46 +0000 (15:39 -0500)
committerTheodore Ts'o <tytso@mit.edu>
Fri, 23 Feb 2018 20:39:46 +0000 (15:39 -0500)
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
lib/uuid/gen_uuid.c

index 0028c7caf988323051ab3161c7db056690c3e210..af5509352d2a590eba5ad132e772a204d93bc218 100644 (file)
@@ -154,7 +154,7 @@ static int get_random_fd(void)
                                fcntl(fd, F_SETFD, i | FD_CLOEXEC);
                }
 #endif
-               srand((getpid() << 16) ^ getuid() ^ tv.tv_sec ^ tv.tv_usec);
+               srand(((unsigned)getpid() << 16) ^ getuid() ^ tv.tv_sec ^ tv.tv_usec);
 #ifdef DO_JRAND_MIX
                jrand_seed[0] = getpid() ^ (tv.tv_sec & 0xFFFF);
                jrand_seed[1] = getppid() ^ (tv.tv_usec & 0xFFFF);