summaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
authorHongxu Jia <hongxu.jia@windriver.com>2018-11-09 17:12:21 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-11-14 11:14:40 +0000
commitb39fca9d453d68f51cd12fc83901769f4c2a56ed (patch)
tree7fdbbb46c0cdf557fd71b0613845bd0c85022931 /meta
parentbc0d9a1a5e6c56302be8ba9b37a66b90ac941056 (diff)
downloadpoky-b39fca9d453d68f51cd12fc83901769f4c2a56ed.tar.gz
rng-tools: 5 -> 6.6
- Update SRC_URI, previously upstream is dead, latest update is 2014 - Drop read_error_msg.patch - Rework do_configure and do_compile - Enable jitterentropy License-Update: Upstream changed, but license is still gplv2 (From OE-Core rev: 0d5fb24babec69b653f582acdf47fa22fcdeed2e) Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r--meta/recipes-support/rng-tools/rng-tools/0001-If-the-libc-is-lacking-argp-use-libargp.patch10
-rw-r--r--meta/recipes-support/rng-tools/rng-tools/0002-Add-argument-to-control-the-libargp-dependency.patch21
-rw-r--r--meta/recipes-support/rng-tools/rng-tools/read_error_msg.patch98
-rw-r--r--meta/recipes-support/rng-tools/rng-tools/rng-tools-5-fix-textrels-on-PIC-x86.patch35
-rw-r--r--meta/recipes-support/rng-tools/rng-tools/underquote.patch27
-rw-r--r--meta/recipes-support/rng-tools/rng-tools_6.6.bb (renamed from meta/recipes-support/rng-tools/rng-tools_5.bb)25
6 files changed, 78 insertions, 138 deletions
diff --git a/meta/recipes-support/rng-tools/rng-tools/0001-If-the-libc-is-lacking-argp-use-libargp.patch b/meta/recipes-support/rng-tools/rng-tools/0001-If-the-libc-is-lacking-argp-use-libargp.patch
index 4bd9d31c0e..06d1d94369 100644
--- a/meta/recipes-support/rng-tools/rng-tools/0001-If-the-libc-is-lacking-argp-use-libargp.patch
+++ b/meta/recipes-support/rng-tools/rng-tools/0001-If-the-libc-is-lacking-argp-use-libargp.patch
@@ -1,7 +1,7 @@
1From 99679fda405e535a282f04a4decc2381154a749f Mon Sep 17 00:00:00 2001 1From 06ba71887f667d45dd231a782a2751f36e8fe025 Mon Sep 17 00:00:00 2001
2From: Christopher Larson <chris_larson@mentor.com> 2From: Christopher Larson <chris_larson@mentor.com>
3Date: Mon, 15 Feb 2016 15:59:58 -0700 3Date: Mon, 15 Feb 2016 15:59:58 -0700
4Subject: [PATCH 1/2] If the libc is lacking argp, use libargp 4Subject: [PATCH 1/4] If the libc is lacking argp, use libargp
5 5
6Patch pulled from Gentoo: 6Patch pulled from Gentoo:
7 7
@@ -23,10 +23,10 @@ Signed-off-by: Christopher Larson <chris_larson@mentor.com>
23 1 file changed, 22 insertions(+) 23 1 file changed, 22 insertions(+)
24 24
25diff --git a/configure.ac b/configure.ac 25diff --git a/configure.ac b/configure.ac
26index 27a2dba..04fcd25 100644 26index 4e799dc..c4a5dd8 100644
27--- a/configure.ac 27--- a/configure.ac
28+++ b/configure.ac 28+++ b/configure.ac
29@@ -82,6 +82,28 @@ AS_IF( 29@@ -135,6 +135,28 @@ AS_IF(
30 ] 30 ]
31 ) 31 )
32 32
@@ -56,5 +56,5 @@ index 27a2dba..04fcd25 100644
56 dnl Configure options 56 dnl Configure options
57 dnl ----------------- 57 dnl -----------------
58-- 58--
592.2.1 592.7.4
60 60
diff --git a/meta/recipes-support/rng-tools/rng-tools/0002-Add-argument-to-control-the-libargp-dependency.patch b/meta/recipes-support/rng-tools/rng-tools/0002-Add-argument-to-control-the-libargp-dependency.patch
index 1c8a79ce0b..be60fe97f6 100644
--- a/meta/recipes-support/rng-tools/rng-tools/0002-Add-argument-to-control-the-libargp-dependency.patch
+++ b/meta/recipes-support/rng-tools/rng-tools/0002-Add-argument-to-control-the-libargp-dependency.patch
@@ -1,23 +1,26 @@
1From afc8712a9e6c72fbd03c36f84ecf8703e5d22a8c Mon Sep 17 00:00:00 2001 1From 711e2f76890e3c5b08f64859d9fd913ddbec7d50 Mon Sep 17 00:00:00 2001
2From: Christopher Larson <chris_larson@mentor.com> 2From: Christopher Larson <chris_larson@mentor.com>
3Date: Mon, 15 Feb 2016 16:11:32 -0700 3Date: Mon, 22 Oct 2018 15:26:47 +0800
4Subject: [PATCH 2/2] Add argument to control the libargp dependency 4Subject: [PATCH 2/4] Add argument to control the libargp dependency
5 5
6This ensures that the builds are always deterministic. If the argument isn't 6This ensures that the builds are always deterministic. If the argument isn't
7passed, the default behavior is to use libargp if the libc doesn't have argp. 7passed, the default behavior is to use libargp if the libc doesn't have argp.
8 8
9Upstream-Status: Pending 9Upstream-Status: Pending
10Signed-off-by: Christopher Larson <chris_larson@mentor.com> 10Signed-off-by: Christopher Larson <chris_larson@mentor.com>
11
12Rebase to 6.6
13Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
11--- 14---
12 configure.ac | 55 ++++++++++++++++++++++++++++++++++++------------------- 15 configure.ac | 55 ++++++++++++++++++++++++++++++++++++-------------------
13 1 file changed, 36 insertions(+), 19 deletions(-) 16 1 file changed, 36 insertions(+), 19 deletions(-)
14 17
15diff --git a/configure.ac b/configure.ac 18diff --git a/configure.ac b/configure.ac
16index 04fcd25..11a5321 100644 19index c4a5dd8..dd1c30f 100644
17--- a/configure.ac 20--- a/configure.ac
18+++ b/configure.ac 21+++ b/configure.ac
19@@ -32,6 +32,13 @@ AC_ARG_WITH([libgcrypt], 22@@ -40,6 +40,13 @@ AC_ARG_WITH([nistbeacon],
20 [with_libgcrypt=check] 23 [with_nistbeacon=check]
21 ) 24 )
22 25
23+AC_ARG_WITH([libargp], 26+AC_ARG_WITH([libargp],
@@ -29,8 +32,8 @@ index 04fcd25..11a5321 100644
29+ 32+
30 dnl Make sure anyone changing configure.ac/Makefile.am has a clue 33 dnl Make sure anyone changing configure.ac/Makefile.am has a clue
31 AM_MAINTAINER_MODE 34 AM_MAINTAINER_MODE
32 35 AM_PROG_AS
33@@ -82,27 +89,37 @@ AS_IF( 36@@ -135,27 +142,37 @@ AS_IF(
34 ] 37 ]
35 ) 38 )
36 39
@@ -88,5 +91,5 @@ index 04fcd25..11a5321 100644
88 dnl ----------------- 91 dnl -----------------
89 dnl Configure options 92 dnl Configure options
90-- 93--
912.2.1 942.7.4
92 95
diff --git a/meta/recipes-support/rng-tools/rng-tools/read_error_msg.patch b/meta/recipes-support/rng-tools/rng-tools/read_error_msg.patch
deleted file mode 100644
index 8aa13bf8b8..0000000000
--- a/meta/recipes-support/rng-tools/rng-tools/read_error_msg.patch
+++ /dev/null
@@ -1,98 +0,0 @@
1rng-tools: modify 'read error' message
2
3Make the 'read error' message more descriptive.
4
5Copied from https://bugzilla.redhat.com/attachment.cgi?id=1295857
6and modified in one place to apply successfully. Error message during
7bootstrap modified to show device name.
8
9Upstream-Status: pending
10
11Signed-off-by: Joe Slater <joe.slater@windriver.com>
12
13
14--- a/rngd.c
15+++ b/rngd.c
16@@ -247,8 +247,11 @@ static void do_loop(int random_step)
17 continue; /* failed, no work */
18
19 retval = iter->xread(buf, sizeof buf, iter);
20- if (retval)
21+ if (retval) {
22+ message(LOG_DAEMON|LOG_ERR,
23+ "Error reading from entropy source\n");
24 continue; /* failed, no work */
25+ }
26
27 work_done = true;
28
29--- a/rngd_entsource.c
30+++ b/rngd_entsource.c
31@@ -63,10 +63,8 @@ int xread(void *buf, size_t size, struct
32 size -= r;
33 }
34
35- if (size) {
36- message(LOG_DAEMON|LOG_ERR, "read error\n");
37+ if (size)
38 return -1;
39- }
40 return 0;
41 }
42
43@@ -152,7 +150,7 @@ error_out:
44 }
45
46 /* Initialize entropy source */
47-static int discard_initial_data(struct rng *ent_src)
48+static int discard_initial_data(struct rng *ent_src, int *buf)
49 {
50 /* Trash 32 bits of what is probably stale (non-random)
51 * initial state from the RNG. For Intel's, 8 bits would
52@@ -164,10 +162,12 @@ static int discard_initial_data(struct r
53 xread(tempbuf, sizeof(tempbuf), ent_src);
54
55 /* Return 32 bits of bootstrap data */
56- xread(tempbuf, sizeof(tempbuf), ent_src);
57+ if (xread(tempbuf, sizeof(tempbuf), ent_src) != 0)
58+ return -1;
59
60- return tempbuf[0] | (tempbuf[1] << 8) |
61+ *buf = tempbuf[0] | (tempbuf[1] << 8) |
62 (tempbuf[2] << 16) | (tempbuf[3] << 24);
63+ return 0;
64 }
65
66 /*
67@@ -175,6 +175,8 @@ static int discard_initial_data(struct r
68 */
69 int init_entropy_source(struct rng *ent_src)
70 {
71+ int bootstrap;
72+
73 ent_src->rng_fd = open(ent_src->rng_name, O_RDONLY);
74 if (ent_src->rng_fd == -1) {
75 return 1;
76@@ -182,7 +184,11 @@ int init_entropy_source(struct rng *ent_
77 src_list_add(ent_src);
78 /* Bootstrap FIPS tests */
79 ent_src->fipsctx = malloc(sizeof(fips_ctx_t));
80- fips_init(ent_src->fipsctx, discard_initial_data(ent_src));
81+ if (discard_initial_data(ent_src, &bootstrap) != 0) {
82+ message(LOG_ERR|LOG_INFO, "Read failure in %s during bootstrap\n",ent_src->rng_name);
83+ return 1;
84+ }
85+ fips_init(ent_src->fipsctx, bootstrap);
86 return 0;
87 }
88
89--- a/rngtest.c
90+++ b/rngtest.c
91@@ -335,6 +335,7 @@ static int discard_initial_data(void)
92
93 return tempbuf[0] | (tempbuf[1] << 8) |
94 (tempbuf[2] << 16) | (tempbuf[3] << 24);
95+
96 }
97
98 static void do_rng_fips_test_loop( void )
diff --git a/meta/recipes-support/rng-tools/rng-tools/rng-tools-5-fix-textrels-on-PIC-x86.patch b/meta/recipes-support/rng-tools/rng-tools/rng-tools-5-fix-textrels-on-PIC-x86.patch
index 93a5864a49..614adab27f 100644
--- a/meta/recipes-support/rng-tools/rng-tools/rng-tools-5-fix-textrels-on-PIC-x86.patch
+++ b/meta/recipes-support/rng-tools/rng-tools/rng-tools-5-fix-textrels-on-PIC-x86.patch
@@ -1,5 +1,10 @@
1From: Francisco Blas Izquierdo Riera (klondike) <klondike@gentoo.org> 1From d8b1bb8edd99b2898720b4f10d292a67d532db48 Mon Sep 17 00:00:00 2001
2Subject: [PATCH] Fix assemby textrels on rdrand_asm.S on PIC x86 2From: "Francisco Blas Izquierdo Riera (klondike)" <klondike@gentoo.org>
3Date: Mon, 22 Oct 2018 15:29:36 +0800
4Subject: [PATCH 4/4] Fix assemby textrels on rdrand_asm.S on PIC x86
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
3 8
4This patch updates the fixes in the assembly in rdrand_asm.S in 9This patch updates the fixes in the assembly in rdrand_asm.S in
5sys-apps/rng-tools-5 so it won't generate textrels on PIC systems. 10sys-apps/rng-tools-5 so it won't generate textrels on PIC systems.
@@ -19,11 +24,14 @@ Reported-by: Manuel RĂ¼ger <mrueg@gentoo.org>
19Tested-by: Anthony Basile <blueness@gentoo.org> 24Tested-by: Anthony Basile <blueness@gentoo.org>
20 25
21Upstream-Status: Pending 26Upstream-Status: Pending
27---
28 rdrand_asm.S | 27 +++++++++++++++++++++++++++
29 1 file changed, 27 insertions(+)
22 30
23Index: rng-tools-5/rdrand_asm.S 31diff --git a/rdrand_asm.S b/rdrand_asm.S
24=================================================================== 32index b5d260a..7811cf2 100644
25--- rng-tools-5.orig/rdrand_asm.S 33--- a/rdrand_asm.S
26+++ rng-tools-5/rdrand_asm.S 34+++ b/rdrand_asm.S
27@@ -2,6 +2,7 @@ 35@@ -2,6 +2,7 @@
28 * Copyright (c) 2011-2014, Intel Corporation 36 * Copyright (c) 2011-2014, Intel Corporation
29 * Authors: Fenghua Yu <fenghua.yu@intel.com>, 37 * Authors: Fenghua Yu <fenghua.yu@intel.com>,
@@ -32,7 +40,7 @@ Index: rng-tools-5/rdrand_asm.S
32 * 40 *
33 * This program is free software; you can redistribute it and/or modify it 41 * This program is free software; you can redistribute it and/or modify it
34 * under the terms and conditions of the GNU General Public License, 42 * under the terms and conditions of the GNU General Public License,
35@@ -174,7 +175,19 @@ ENTRY(x86_rdseed_or_rdrand_bytes) 43@@ -172,7 +173,19 @@ ENTRY(x86_rdseed_or_rdrand_bytes)
36 jmp 4b 44 jmp 4b
37 ENDPROC(x86_rdseed_or_rdrand_bytes) 45 ENDPROC(x86_rdseed_or_rdrand_bytes)
38 46
@@ -52,7 +60,7 @@ Index: rng-tools-5/rdrand_asm.S
52 #define PTR0 %eax 60 #define PTR0 %eax
53 #define PTR1 %edx 61 #define PTR1 %edx
54 #define PTR2 %ecx 62 #define PTR2 %ecx
55@@ -190,6 +203,7 @@ ENTRY(x86_aes_mangle) 63@@ -188,6 +201,7 @@ ENTRY(x86_aes_mangle)
56 movl 8(%ebp), %eax 64 movl 8(%ebp), %eax
57 movl 12(%ebp), %edx 65 movl 12(%ebp), %edx
58 push %esi 66 push %esi
@@ -60,7 +68,7 @@ Index: rng-tools-5/rdrand_asm.S
60 #endif 68 #endif
61 movl $512, CTR3 /* Number of rounds */ 69 movl $512, CTR3 /* Number of rounds */
62 70
63@@ -280,6 +294,7 @@ offset = offset + 16 71@@ -278,6 +292,7 @@ offset = offset + 16
64 movdqa %xmm7, (7*16)(PTR1) 72 movdqa %xmm7, (7*16)(PTR1)
65 73
66 #ifdef __i386__ 74 #ifdef __i386__
@@ -68,7 +76,7 @@ Index: rng-tools-5/rdrand_asm.S
68 pop %esi 76 pop %esi
69 pop %ebp 77 pop %ebp
70 #endif 78 #endif
71@@ -294,6 +309,7 @@ ENTRY(x86_aes_expand_key) 79@@ -292,6 +307,7 @@ ENTRY(x86_aes_expand_key)
72 push %ebp 80 push %ebp
73 mov %esp, %ebp 81 mov %esp, %ebp
74 movl 8(%ebp), %eax 82 movl 8(%ebp), %eax
@@ -76,7 +84,7 @@ Index: rng-tools-5/rdrand_asm.S
76 #endif 84 #endif
77 85
78 SETPTR(aes_round_keys, PTR1) 86 SETPTR(aes_round_keys, PTR1)
79@@ -323,6 +339,7 @@ ENTRY(x86_aes_expand_key) 87@@ -321,6 +337,7 @@ ENTRY(x86_aes_expand_key)
80 call 1f 88 call 1f
81 89
82 #ifdef __i386__ 90 #ifdef __i386__
@@ -84,7 +92,7 @@ Index: rng-tools-5/rdrand_asm.S
84 pop %ebp 92 pop %ebp
85 #endif 93 #endif
86 ret 94 ret
87@@ -343,6 +360,16 @@ ENTRY(x86_aes_expand_key) 95@@ -341,6 +358,16 @@ ENTRY(x86_aes_expand_key)
88 96
89 ENDPROC(x86_aes_expand_key) 97 ENDPROC(x86_aes_expand_key)
90 98
@@ -101,3 +109,6 @@ Index: rng-tools-5/rdrand_asm.S
101 .bss 109 .bss
102 .balign 64 110 .balign 64
103 aes_round_keys: 111 aes_round_keys:
112--
1132.7.4
114
diff --git a/meta/recipes-support/rng-tools/rng-tools/underquote.patch b/meta/recipes-support/rng-tools/rng-tools/underquote.patch
index afd08d577f..aa4bbcb346 100644
--- a/meta/recipes-support/rng-tools/rng-tools/underquote.patch
+++ b/meta/recipes-support/rng-tools/rng-tools/underquote.patch
@@ -1,4 +1,8 @@
1Fix underquoted m4 entry. This causes a failure if gcrypt isn't present: 1From 03fe7efa1bc04a83fb9b6787998e7baa7ee90646 Mon Sep 17 00:00:00 2001
2From: Richard Purdie <richard.purdie@linuxfoundation.org>
3Date: Mon, 22 Oct 2018 15:27:41 +0800
4Subject: [PATCH 3/4] Fix underquoted m4 entry. This causes a failure if gcrypt
5 isn't present:
2 6
3| configure: libgcrypt support disabled 7| configure: libgcrypt support disabled
4| ../rng-tools-5/configure: line 4345: ac_fn_c_try_link: command not found 8| ../rng-tools-5/configure: line 4345: ac_fn_c_try_link: command not found
@@ -9,11 +13,17 @@ RP
9 13
10Upstream-Status: Pending 14Upstream-Status: Pending
11 15
12Index: rng-tools-5/configure.ac 16Rebase to 6.6
13=================================================================== 17Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
14--- rng-tools-5.orig/configure.ac 18---
15+++ rng-tools-5/configure.ac 19 configure.ac | 4 ++--
16@@ -71,7 +71,7 @@ AS_IF( 20 1 file changed, 2 insertions(+), 2 deletions(-)
21
22diff --git a/configure.ac b/configure.ac
23index dd1c30f..88d2be3 100644
24--- a/configure.ac
25+++ b/configure.ac
26@@ -124,7 +124,7 @@ AS_IF(
17 [test "x$with_libgcrypt" != "xno"], 27 [test "x$with_libgcrypt" != "xno"],
18 [ 28 [
19 AC_CHECK_HEADER([gcrypt.h], 29 AC_CHECK_HEADER([gcrypt.h],
@@ -22,7 +32,7 @@ Index: rng-tools-5/configure.ac
22 [gcrypt], 32 [gcrypt],
23 [gcry_check_version], , 33 [gcry_check_version], ,
24 [ 34 [
25@@ -80,7 +80,7 @@ AS_IF( 35@@ -133,7 +133,7 @@ AS_IF(
26 AC_MSG_NOTICE([libgcrypt support disabled]) 36 AC_MSG_NOTICE([libgcrypt support disabled])
27 fi 37 fi
28 ] 38 ]
@@ -31,3 +41,6 @@ Index: rng-tools-5/configure.ac
31 [if test "x$with_libgcrypt" != "xcheck"; then 41 [if test "x$with_libgcrypt" != "xcheck"; then
32 AC_MSG_FAILURE([libgcrypt headers not found]); else 42 AC_MSG_FAILURE([libgcrypt headers not found]); else
33 AC_MSG_NOTICE([libgcrypt support disabled]) 43 AC_MSG_NOTICE([libgcrypt support disabled])
44--
452.7.4
46
diff --git a/meta/recipes-support/rng-tools/rng-tools_5.bb b/meta/recipes-support/rng-tools/rng-tools_6.6.bb
index 6765667a59..033af9909d 100644
--- a/meta/recipes-support/rng-tools/rng-tools_5.bb
+++ b/meta/recipes-support/rng-tools/rng-tools_6.6.bb
@@ -1,27 +1,38 @@
1SUMMARY = "Random number generator daemon" 1SUMMARY = "Random number generator daemon"
2LICENSE = "GPLv2" 2LICENSE = "GPLv2"
3LIC_FILES_CHKSUM = "file://COPYING;md5=0b6f033afe6db235e559456585dc8cdc" 3LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
4 4
5SRC_URI = "${SOURCEFORGE_MIRROR}/gkernel/${BP}.tar.gz \ 5SRC_URI = "git://github.com/nhorman/rng-tools.git \
6 file://0001-If-the-libc-is-lacking-argp-use-libargp.patch \ 6 file://0001-If-the-libc-is-lacking-argp-use-libargp.patch \
7 file://0002-Add-argument-to-control-the-libargp-dependency.patch \ 7 file://0002-Add-argument-to-control-the-libargp-dependency.patch \
8 file://underquote.patch \ 8 file://underquote.patch \
9 file://rng-tools-5-fix-textrels-on-PIC-x86.patch \ 9 file://rng-tools-5-fix-textrels-on-PIC-x86.patch \
10 file://read_error_msg.patch \
11 file://init \ 10 file://init \
12 file://default \ 11 file://default \
13 file://rngd.service \ 12 file://rngd.service \
14" 13"
14SRCREV = "4ebc21d6f387bb7b4b3f6badc429e27b21c0a6ee"
15S = "${WORKDIR}/git"
15 16
16SRC_URI[md5sum] = "6726cdc6fae1f5122463f24ae980dd68" 17inherit autotools update-rc.d systemd pkgconfig
17SRC_URI[sha256sum] = "60a102b6603bbcce2da341470cad42eeaa9564a16b4490e7867026ca11a3078e"
18 18
19inherit autotools update-rc.d systemd 19DEPENDS = "curl \
20 libxml2 \
21 openssl \
22 sysfsutils \
23 libgcrypt \
24 "
20 25
21PACKAGECONFIG = "libgcrypt" 26PACKAGECONFIG ??= "libgcrypt libjitterentropy"
22PACKAGECONFIG_libc-musl = "libargp" 27PACKAGECONFIG_libc-musl = "libargp"
23PACKAGECONFIG[libargp] = "--with-libargp,--without-libargp,argp-standalone," 28PACKAGECONFIG[libargp] = "--with-libargp,--without-libargp,argp-standalone,"
24PACKAGECONFIG[libgcrypt] = "--with-libgcrypt,--without-libgcrypt,libgcrypt," 29PACKAGECONFIG[libgcrypt] = "--with-libgcrypt,--without-libgcrypt,libgcrypt,"
30PACKAGECONFIG[libjitterentropy] = "--enable-jitterentropy,--disable-jitterntropy,libjitterentropy"
31
32# Refer autogen.sh in rng-tools
33do_configure_prepend() {
34 cp ${S}/README.md ${S}/README
35}
25 36
26do_install_append() { 37do_install_append() {
27 # Only install the init script when 'sysvinit' is in DISTRO_FEATURES. 38 # Only install the init script when 'sysvinit' is in DISTRO_FEATURES.