fix behavior when getrandom syscall is not present (#1542453)
This commit is contained in:
parent
ff389a60e8
commit
e4efa24217
@ -1,6 +1,6 @@
|
|||||||
diff -up libgcrypt-1.8.1/random/random-csprng.c.getrandom libgcrypt-1.8.1/random/random-csprng.c
|
diff -up libgcrypt-1.8.1/random/random-csprng.c.getrandom libgcrypt-1.8.1/random/random-csprng.c
|
||||||
--- libgcrypt-1.8.1/random/random-csprng.c.getrandom 2017-08-27 09:05:36.000000000 +0200
|
--- libgcrypt-1.8.1/random/random-csprng.c.getrandom 2017-08-27 09:05:36.000000000 +0200
|
||||||
+++ libgcrypt-1.8.1/random/random-csprng.c 2017-12-05 11:49:06.609801947 +0100
|
+++ libgcrypt-1.8.1/random/random-csprng.c 2017-12-06 09:04:27.824175303 +0100
|
||||||
@@ -55,6 +55,10 @@
|
@@ -55,6 +55,10 @@
|
||||||
#ifdef __MINGW32__
|
#ifdef __MINGW32__
|
||||||
#include <process.h>
|
#include <process.h>
|
||||||
@ -37,7 +37,7 @@ diff -up libgcrypt-1.8.1/random/random-csprng.c.getrandom libgcrypt-1.8.1/random
|
|||||||
{
|
{
|
||||||
diff -up libgcrypt-1.8.1/random/rndlinux.c.getrandom libgcrypt-1.8.1/random/rndlinux.c
|
diff -up libgcrypt-1.8.1/random/rndlinux.c.getrandom libgcrypt-1.8.1/random/rndlinux.c
|
||||||
--- libgcrypt-1.8.1/random/rndlinux.c.getrandom 2017-09-05 14:34:28.003872675 +0200
|
--- libgcrypt-1.8.1/random/rndlinux.c.getrandom 2017-09-05 14:34:28.003872675 +0200
|
||||||
+++ libgcrypt-1.8.1/random/rndlinux.c 2017-12-04 09:48:38.704845838 +0100
|
+++ libgcrypt-1.8.1/random/rndlinux.c 2018-02-06 16:31:56.047481806 +0100
|
||||||
@@ -35,6 +35,7 @@
|
@@ -35,6 +35,7 @@
|
||||||
#include <poll.h>
|
#include <poll.h>
|
||||||
#if defined(__linux__) && defined(HAVE_SYSCALL)
|
#if defined(__linux__) && defined(HAVE_SYSCALL)
|
||||||
@ -63,6 +63,15 @@ diff -up libgcrypt-1.8.1/random/rndlinux.c.getrandom libgcrypt-1.8.1/random/rndl
|
|||||||
fd_urandom = open_device (NAME_OF_DEV_URANDOM, (ever_opened & 2));
|
fd_urandom = open_device (NAME_OF_DEV_URANDOM, (ever_opened & 2));
|
||||||
ever_opened |= 2;
|
ever_opened |= 2;
|
||||||
}
|
}
|
||||||
|
@@ -230,7 +241,7 @@ _gcry_rndlinux_gather_random (void (*add
|
||||||
|
* syscall and not a new device and thus we are not able to use
|
||||||
|
* select(2) to have a timeout. */
|
||||||
|
#if defined(__linux__) && defined(HAVE_SYSCALL) && defined(__NR_getrandom)
|
||||||
|
- if (fd == fd_urandom)
|
||||||
|
+ if (fd == -1)
|
||||||
|
{
|
||||||
|
long ret;
|
||||||
|
size_t nbytes;
|
||||||
@@ -246,9 +257,7 @@ _gcry_rndlinux_gather_random (void (*add
|
@@ -246,9 +257,7 @@ _gcry_rndlinux_gather_random (void (*add
|
||||||
_gcry_post_syscall ();
|
_gcry_post_syscall ();
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
Name: libgcrypt
|
Name: libgcrypt
|
||||||
Version: 1.8.2
|
Version: 1.8.2
|
||||||
Release: 1%{?dist}
|
Release: 2%{?dist}
|
||||||
URL: http://www.gnupg.org/
|
URL: http://www.gnupg.org/
|
||||||
Source0: libgcrypt-%{version}-hobbled.tar.xz
|
Source0: libgcrypt-%{version}-hobbled.tar.xz
|
||||||
# The original libgcrypt sources now contain potentially patented ECC
|
# The original libgcrypt sources now contain potentially patented ECC
|
||||||
@ -192,6 +192,9 @@ exit 0
|
|||||||
%license COPYING
|
%license COPYING
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Feb 6 2018 Tomáš Mráz <tmraz@redhat.com> 1.8.2-2
|
||||||
|
- fix behavior when getrandom syscall is not present (#1542453)
|
||||||
|
|
||||||
* Thu Dec 21 2017 Tomáš Mráz <tmraz@redhat.com> 1.8.2-1
|
* Thu Dec 21 2017 Tomáš Mráz <tmraz@redhat.com> 1.8.2-1
|
||||||
- new upstream version 1.8.2
|
- new upstream version 1.8.2
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user