mirror of
git://slackware.nl/current.git
synced 2025-01-06 05:25:20 +01:00
5ff08990e9
a/glibc-solibs-2.30-x86_64-1.txz: Upgraded. a/kernel-firmware-20190909_6c6918a-noarch-1.txz: Upgraded. a/kernel-generic-4.19.72-x86_64-1.txz: Upgraded. a/kernel-huge-4.19.72-x86_64-1.txz: Upgraded. a/kernel-modules-4.19.72-x86_64-1.txz: Upgraded. d/kernel-headers-4.19.72-x86-1.txz: Upgraded. k/kernel-source-4.19.72-noarch-1.txz: Upgraded. l/gdk-pixbuf2-2.38.2-x86_64-1.txz: Upgraded. l/glibc-2.30-x86_64-1.txz: Upgraded. l/glibc-i18n-2.30-x86_64-1.txz: Upgraded. l/glibc-profile-2.30-x86_64-1.txz: Upgraded. n/libmilter-8.15.2-x86_64-3.txz: Rebuilt. Use gethostbyname2() since RES_USE_INET6 is removed in glibc-2.30. n/libqmi-1.22.6-x86_64-1.txz: Upgraded. n/postfix-3.4.6-x86_64-2.txz: Rebuilt. Patched to fix removed macros in glibc-2.30. n/yptools-2.14-x86_64-12.txz: Rebuilt. Patched ypbind-mt for gettid() included in glibc-2.30. xap/blackbox-0.75-x86_64-1.txz: Upgraded. isolinux/initrd.img: Rebuilt. kernels/*: Upgraded. usb-and-pxe-installers/usbboot.img: Rebuilt.
50 lines
1.4 KiB
Diff
50 lines
1.4 KiB
Diff
From e1df30fbc2e2167a982c0e77a7ebee28f4dd0800 Mon Sep 17 00:00:00 2001
|
|
From: Adhemerval Zanella <adhemerval.zanella@linaro.org>
|
|
Date: Thu, 25 Jul 2019 11:22:17 -0300
|
|
Subject: [PATCH] Get new entropy on each attempt __gen_tempname (BZ #15813)
|
|
|
|
This is missing bit for fully fix BZ#15813 (the other two were fixed
|
|
by 359653aaacad463).
|
|
|
|
Checked on x86_64-linux-gnu.
|
|
|
|
[BZ #15813]
|
|
sysdeps/posix/tempname.c (__gen_tempname): get entrypy on each
|
|
attempt.
|
|
|
|
diff --git a/sysdeps/posix/tempname.c b/sysdeps/posix/tempname.c
|
|
index de34694..310df3c 100644
|
|
--- a/sysdeps/posix/tempname.c
|
|
+++ b/sysdeps/posix/tempname.c
|
|
@@ -186,7 +186,6 @@ __gen_tempname (char *tmpl, int suffixlen, int flags, int kind)
|
|
{
|
|
int len;
|
|
char *XXXXXX;
|
|
- uint64_t value;
|
|
unsigned int count;
|
|
int fd = -1;
|
|
int save_errno = errno;
|
|
@@ -218,13 +217,13 @@ __gen_tempname (char *tmpl, int suffixlen, int flags, int kind)
|
|
/* This is where the Xs start. */
|
|
XXXXXX = &tmpl[len - 6 - suffixlen];
|
|
|
|
- /* Get some more or less random data. */
|
|
- RANDOM_BITS (value);
|
|
- value ^= (uint64_t)__getpid () << 32;
|
|
-
|
|
- for (count = 0; count < attempts; value += 7777, ++count)
|
|
+ uint64_t pid = (uint64_t) __getpid () << 32;
|
|
+ for (count = 0; count < attempts; ++count)
|
|
{
|
|
- uint64_t v = value;
|
|
+ uint64_t v;
|
|
+ /* Get some more or less random data. */
|
|
+ RANDOM_BITS (v);
|
|
+ v ^= pid;
|
|
|
|
/* Fill in the random bits. */
|
|
XXXXXX[0] = letters[v % 62];
|
|
--
|
|
2.9.3
|
|
|
|
|