Commit Graph

12 Commits

Author SHA1 Message Date
Peter Korsgaard
92c7310d5b package/tpm2-tools: license is 3c BSD, not 2c
The license contains the "no endorsement" clause, so it should be listed as
BSD-3-Clause:

  * Neither the name of Intel Corporation nor the names of its contributors
    may be used to endorse or promote products derived from this software
    without specific prior written permission.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2019-04-08 22:35:41 +02:00
Peter Korsgaard
f63a58c350 package/tpm2-tools: drop unused dbus / libglib2 dependencies
tpm2-tools does not need dbus or libglib2, so remove them and the
corresponding toolchain dependencies.

The confusion may have come from the upstream travis configuration, which
also builds tpm2-abrmd (which uses dbus+libglib2).

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2019-04-04 22:51:43 +02:00
Peter Korsgaard
b7a36629d6 package/tpm2-tools: bump version to 3.1.4
Fixes a number of issues discovered post-3.1.3, including a completely
broken -T option handling.  For details, see:
https://github.com/tpm2-software/tpm2-tools/releases/tag/3.1.4

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2019-04-03 22:09:16 +02:00
Peter Korsgaard
7b8feba51d tpm2-tools: drop dependency on tpm2-abrmd
tpm2-tools is commonly used with the resource manager, tpm2-abrmd - But it
CAN be used without, E.G. by setting the TPM2TOOLS_TCTI_NAME environment
variable to communicate directly with the kernel driver:

export TPM2TOOLS_TCTI_NAME=device

Either directly with the TPM device (/dev/tpmN) or through the in-kernel
resource manager provided by Linux kernel since 4.12 (/dev/tpmrmN)

For some use cases (E.G. initramfs) it makes sense to use tpm2-tools
without abrmd, so remove the tpm2-abrmd select, and instead a note in the
help text that it may be needed.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2019-01-28 22:19:51 +01:00
Peter Korsgaard
2bf187c2b1 tpm2-tools: always disable hardening options
Building with --enable-hardening (the default), forces -fstack-protector-all
/ FORTIFY_SOURCE=2.  These options are now controlled Buildroot wide with
the BR2_SSP_* / BR2_FORTIFY_SOURCE_* options.  Disable hardening so the
ssp/fortify settings in the toolchain wrapper / CFLAGS is used instead.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2019-01-16 14:24:45 +01:00
Carlos Santos
945353895f tpm2-tss: depend on shared libraries
The code includes dlfcn.h even if --enable-static and --disable-shared
are passed to configure. There is an "#ifndef NO_DL ... #endif" wrapper
but NO_DL is never defined and adding "-DNO_DL" to CFLAGS causes other
compilation errors.

Fixes:
  http://autobuild.buildroot.net/results/cfc3bfef5e93329bf944a57947086d9ddc4fece3

Signed-off-by: Carlos Santos <casantos@datacom.com.br>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-11-20 23:20:02 +01:00
Carlos Santos
e4076e407a tpm2-tools: bump to version 3.1.3
- Drop C++ requirement, which came from tpm2-tss.
- Drop musl restriction.
- Drop the patch to build with LibreSSL, which is not required anymore.
- Update the patch for the "variable may be used uninitialized" error to
  match tpm2-tss 2.1.0, which defines TPM2_ALG_ERROR, not TPM_ALG_ERROR.

Signed-off-by: Carlos Santos <casantos@datacom.com.br>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-11-16 20:21:09 +01:00
Carlos Santos
9aa99ad004 tpm2-abrmd: disable for musl
The current version requires macros and funtions not availabe on musl
(TEMP_FAILURE_RETRY, srand48_r, etc). We could try to circumvent the
problem by means of local patches but for the moment let's disable the
package for musl toolchains and watch the issue reported upstream at

  https://github.com/tpm2-software/tpm2-abrmd/issues/237

Propagate the change to tpm2-tools, which has a run-time dependency on
tpm2-abrmd.

Fixes:
  http://autobuild.buildroot.net/results/d2fa916613d835f856d14747dc03ef9847ad6396
  http://autobuild.buildroot.net/results/e82ff1f7f8a4a930fbabd38353da2149cc54fd9d
  http://autobuild.buildroot.net/results/7aaf6a7cc384b2e52109c0c31792c0d3888bcefd
  http://autobuild.buildroot.net/results/a56e55fb4791a90c00906698676656969484383d
  http://autobuild.buildroot.net/results/7aa020d115a0a3308fee1f3528554e40076ff28d

Signed-off-by: Carlos Santos <casantos@datacom.ind.br>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-03 15:44:16 +02:00
Carlos Santos
e4e7140210 tpm2-tools: fix compilation error due to uninitialized variable
Backport a patch alreary submitted upstream, at

  https://github.com/tpm2-software/tpm2-tools/pull/954

Fixes:
  http://autobuild.buildroot.net/results/ae1e151576b365380ab711a1b8ffcd92ad0050e2
  http://autobuild.buildroot.net/results/ee80c2fe54c89589532efd47eb93bd27637c690f

Signed-off-by: Carlos Santos <casantos@datacom.ind.br>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-25 15:43:10 +02:00
Carlos Santos
428dfe71f3 tpm2-tools: allow building without stack smashing protection (SSP)
Disable SSP if the toolchain does not support it. This must be done
explicitly because configure enables hardening by default but doesn't
contain a link test, so it doesn't detect when libssp is missing.

Signed-off-by: Carlos Santos <casantos@datacom.ind.br>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-23 00:02:11 +01:00
Carlos Santos
4be409f401 tpm2-tools: propagate dependencies of selected packages
- C++ (tpm2-tss)
- MMU (dbus, libglib)
- threads (libglib)
- wchar (libglib -> gettext)

Fixes (libglib):
  http://autobuild.buildroot.net/results/786859fccc477de1519d85d8a180626bb8ebe062
  http://autobuild.buildroot.net/results/df6518f331c16b477c6e934914d0e56dc102c228

[Peter: add C++ dependency to config option]
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Carlos Santos <casantos@datacom.ind.br>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-23 00:00:40 +01:00
Carlos Santos
3a10ff5127 tpm2-tools: new package
TPM (Trusted Platform Module) 2.0 CLI tools based on system API of
TPM2-TSS. These tools can be used to manage keys, perform
encryption/decryption/signing/etc crypto operations, and manage
non-volatile storage through a TPM2.0 HW implementation.

Signed-off-by: Carlos Santos <casantos@datacom.ind.br>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-18 23:16:58 +01:00