ibmswtpm2: update to 1637

Update ibmswtpm2 from 1628 to 1637. Build 1637 Includes:
* Increase NV memory size to match PC Client RSA 3072 requirements
* Add and fix ACT support
* Update Visual Studio files to 2019.

Signed-off-by: Jens Rehsack <sno@netbsd.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
This commit is contained in:
Jens Rehsack
2020-09-11 09:34:08 +02:00
committed by Armin Kuster
parent caf76696e8
commit b9c72cc8bc
5 changed files with 116 additions and 52 deletions
@@ -0,0 +1,27 @@
Fix strict aliasing issue of gcc10
fixes:
TpmFail.c: In function 'TpmLogFailure':
TpmFail.c:217:23: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
217 | s_failFunction = *(UINT32 *)&function; /* kgold */
| ^~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
Upstream-Status: Submitted
Signed-off-by: Jens Rehsack <sno@NetBSD.org>
Index: src/TpmFail.c
===================================================================
--- src.orig/TpmFail.c 2020-09-10 15:43:57.085063875 +0200
+++ src/TpmFail.c 2020-09-10 15:48:35.563302634 +0200
@@ -214,7 +214,7 @@
// On a 64-bit machine, this may truncate the address of the string
// of the function name where the error occurred.
#if FAIL_TRACE
- s_failFunction = *(UINT32 *)&function; /* kgold */
+ memcpy(&s_failFunction, function, sizeof(uint32_t)); /* kgold */
s_failLine = line;
#else
s_failFunction = 0;
@@ -1,26 +0,0 @@
Allow recipe to overide optimization.
fixes:
397 | # warning _FORTIFY_SOURCE requires compiling with optimization (-O)
| | ^~~~~~~
| cc1: all warnings being treated as errors
Upstream-Status: OE specific
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Index: src/makefile
===================================================================
--- src.orig/makefile
+++ src/makefile
@@ -43,7 +43,7 @@ CC = /usr/bin/gcc
CCFLAGS = -Wall \
-Wmissing-declarations -Wmissing-prototypes -Wnested-externs \
-Werror -Wsign-compare \
- -c -ggdb -O0 \
+ -c -ggdb -O \
-DTPM_POSIX \
-D_POSIX_ \
-DTPM_NUVOTON
@@ -0,0 +1,50 @@
1) Allow recipe to overide optimization.
fixes:
397 | # warning _FORTIFY_SOURCE requires compiling with optimization (-O)
| | ^~~~~~~
| cc1: all warnings being treated as errors
2) Allow recipe to override OE related compile-/link-flags
fixes:
ERROR: QA Issue: File /usr/bin/tpm_server in package ibmswtpm2 doesn't have GNU_HASH (didn't pass LDFLAGS?) [ldflags]
Upstream-Status: OE specific
Signed-off-by: Jens Rehsack <sno@NetBSD.org>
Index: src/makefile
===================================================================
--- src.orig/makefile
+++ src/makefile
@@ -38,12 +38,10 @@
#################################################################################
-CC = /usr/bin/gcc
-
CCFLAGS = -Wall \
-Wmissing-declarations -Wmissing-prototypes -Wnested-externs \
-Werror -Wsign-compare \
- -c -ggdb -O0 \
+ -c -ggdb -O \
-DTPM_POSIX \
-D_POSIX_ \
-DTPM_NUVOTON
@@ -79,11 +77,11 @@
.PRECIOUS: %.o
tpm_server: $(OBJFILES)
- $(CC) $(OBJFILES) $(LNFLAGS) -o tpm_server
+ $(CCLD) $(OBJFILES) $(LDFLAGS) $(LNFLAGS) -o tpm_server
clean:
rm -f *.o tpm_server *~
%.o: %.c
- $(CC) $(CCFLAGS) $< -o $@
+ $(CC) $(CCFLAGS) $(CFLAGS) $< -o $@
@@ -1,26 +0,0 @@
SUMMARY = "IBM's Software TPM 2.0"
LICENSE = "BSD"
SECTION = "securty/tpm"
LIC_FILES_CHKSUM = "file://../LICENSE;md5=1e023f61454ac828b4aa1bc4293f7d5f"
DEPENDS = "openssl"
SRC_URI = "https://sourceforge.net/projects/ibmswtpm2/files/ibmtpm${PV}.tar.gz \
file://remove_optimization.patch \
"
SRC_URI[md5sum] = "bfd3eca2411915f24de628b9ec36f259"
SRC_URI[sha256sum] = "a8e874e7a1ae13a1290d7679d846281f72d0eb6a5e4cfbafca5297dbf4e29ea3"
SRC_URI[sha1sum] = "7c8241a4e97a801eace9f0eea8cdda7c58114f7f"
SRC_URI[sha384sum] = "eec25cc8ba0e3cb27d41ba4fa4c71d8158699953ccb61bb6d440236dcbd8f52b6954eaae9d640a713186e0b99311fd91"
SRC_URI[sha512sum] = "ab47caa4406ba57c0afc6fadae304fc9ef5e3e125be0f2fb1955a419cf93cd5e9176e103f0b566825abc16cca00b795f98d2b407f0a2bf7b141ef4b025d907d0"
S = "${WORKDIR}/src"
do_compile () {
make CC='${CC}'
}
do_install () {
install -d ${D}/${bindir}
install -m 0755 tpm_server ${D}/${bindir}
}
@@ -0,0 +1,39 @@
SUMMARY = "IBM's Software TPM 2.0"
DESCRIPTION = "The software TPM 2.0 is targeted toward application development, \
education, and virtualization. \
\
The intent is that an application can be developed using the software TPM. \
The application should then run using a hardware TPM without changes. \
Advantages of this approach: \
* In contrast to a hardware TPM, it runs on many platforms and it's generally faster. \
* Application software errors are easily reversed by simply removing the TPM state and starting over. \
* Difficult crypto errors are quickly debugged by looking inside the TPM."
HOMEPAGE = "http://ibmswtpm.sourceforge.net/ibmswtpm2.html"
LICENSE = "BSD"
SECTION = "securty/tpm"
LIC_FILES_CHKSUM = "file://../LICENSE;md5=1e023f61454ac828b4aa1bc4293f7d5f"
DEPENDS = "openssl"
SRC_URI = "https://sourceforge.net/projects/ibmswtpm2/files/ibmtpm${PV}.tar.gz \
file://tune-makefile.patch \
file://fix-wrong-cast.patch \
"
SRC_URI[md5sum] = "43b217d87056e9155633925eb6ef749c"
SRC_URI[sha256sum] = "dd3a4c3f7724243bc9ebcd5c39bbf87b82c696d1c1241cb8e5883534f6e2e327"
SRC_URI[sha1sum] = "ab4b94079e57a86996991e8a2b749ce063e4ad3e"
SRC_URI[sha384sum] = "bbef16a934853ce78cba7ddc766aa9d7ef3cde3430a322b1be772bf3ad4bd6d413ae9c4de21bc1a4879d17dfe2aadc1d"
SRC_URI[sha512sum] = "007aa415cccf19a2bcf789c426727dc4032dcb04cc9d11eedc231d2add708c1134d3d5ee5cfbe7de68307c95fff7a30bd306fbd8d53c198a5ef348440440a6ed"
S = "${WORKDIR}/src"
CFLAGS += "-Wno-error=maybe-uninitialized"
do_compile () {
make CC='${CC}'
}
do_install () {
install -d ${D}/${bindir}
install -m 0755 tpm_server ${D}/${bindir}
}