commit 77299592b1c7aaf46f4c99c63ad855d0852e8e3b Author: Georg Koppen gk@torproject.org Date: Mon Jun 29 15:27:49 2015 +0000
No need for the dev/urandom patch anymore
This got upstreamed into GCC 5. --- gitian/patches/gcc-dev-random.patch | 72 ----------------------------------- 1 file changed, 72 deletions(-)
diff --git a/gitian/patches/gcc-dev-random.patch b/gitian/patches/gcc-dev-random.patch deleted file mode 100644 index 9757f92..0000000 --- a/gitian/patches/gcc-dev-random.patch +++ /dev/null @@ -1,72 +0,0 @@ -From b0ce14899060267b5b5e4d7e3d91edcdf5c09514 Mon Sep 17 00:00:00 2001 -From: law law@138bc75d-0d04-0410-961f-82ee72b054a4 -Date: Tue, 10 Feb 2015 01:44:08 +0000 -Subject: [PATCH] * ssp.c (__guard_setup): For Windows, use approved methods - to get a suitable random number for the stack check guard - rather than reading /dev/random. - -git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@220559 138bc75d-0d04-0410-961f-82ee72b054a4 ---- - libssp/ChangeLog | 7 +++++++ - libssp/ssp.c | 16 ++++++++++++++++ - 2 files changed, 23 insertions(+) - -diff --git a/libssp/ChangeLog b/libssp/ChangeLog -index a445537..676d2a7 100644 ---- a/libssp/ChangeLog -+++ b/libssp/ChangeLog -@@ -1,3 +1,10 @@ -+2015-02-09 Georg Koppen gk@torproject.org -+ -+ * ssp.c: Conditionally include <windows.h> -+ (__guard_setup): For Windows, use approved methods to get -+ a suitable random number for the stack check guard rather -+ than reading /dev/random. -+ - 2014-07-16 Release Manager - - * GCC 4.9.1 released. -diff --git a/libssp/ssp.c b/libssp/ssp.c -index 96adf17..38e3ec8 100644 ---- a/libssp/ssp.c -+++ b/libssp/ssp.c -@@ -55,6 +55,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see - /* Native win32 apps don't know about /dev/tty but can print directly - to the console using "CONOUT$" */ - #if defined (_WIN32) && !defined (__CYGWIN__) -+#include <windows.h> - # define _PATH_TTY "CONOUT$" - #else - # define _PATH_TTY "/dev/tty" -@@ -75,6 +76,20 @@ __guard_setup (void) - if (__stack_chk_guard != 0) - return; - -+#if defined (_WIN32) && !defined (__CYGWIN__) -+ HCRYPTPROV hprovider = 0; -+ if (CryptAcquireContext(&hprovider, NULL, NULL, PROV_RSA_FULL, -+ CRYPT_VERIFYCONTEXT | CRYPT_SILENT)) -+ { -+ if (CryptGenRandom(hprovider, sizeof (__stack_chk_guard), -+ (BYTE *)&__stack_chk_guard) && __stack_chk_guard != 0) -+ { -+ CryptReleaseContext(hprovider, 0); -+ return; -+ } -+ CryptReleaseContext(hprovider, 0); -+ } -+#else - fd = open ("/dev/urandom", O_RDONLY); - if (fd != -1) - { -@@ -85,6 +100,7 @@ __guard_setup (void) - return; - } - -+#endif - /* If a random generator can't be used, the protector switches the guard - to the "terminator canary". */ - p = (unsigned char *) &__stack_chk_guard; --- -1.7.10.4 -
tor-commits@lists.torproject.org