Index: head/security/Makefile =================================================================== --- head/security/Makefile +++ head/security/Makefile @@ -1281,6 +1281,7 @@ SUBDIR += tor-devel SUBDIR += totp-cli SUBDIR += tpm-tools + SUBDIR += tpm2-tss SUBDIR += trezord SUBDIR += trinokiller SUBDIR += tripwire Index: head/security/tpm2-tss/Makefile =================================================================== --- head/security/tpm2-tss/Makefile +++ head/security/tpm2-tss/Makefile @@ -0,0 +1,27 @@ +# $FreeBSD$ + +PORTNAME= tpm2-tss +DISTVERSION= 2.3.1 +CATEGORIES= security +MASTER_SITES= https://github.com/tpm2-software/tpm2-tss/releases/download/${DISTVERSION}/ + +MAINTAINER= tstruk@gmail.com +COMMENT= TPM2 Software Stack core library + +LICENSE= BSD2CLAUSE + +USES= gmake libtool pkgconfig ssl +USE_LDCONFIG= yes + +GNU_CONFIGURE= yes +CONFIGURE_ENV= LIBCRYPTO_CFLAGS="-I${OPENSSLINC}" LIBCRYPTO_LIBS="-L${OPENSSLLIB} -lcrypto" +CONFIGURE_ARGS= --disable-doxygen-doc --disable-dependency-tracking --enable-valgrind=no + +INSTALL_TARGET= install-strip + +post-install: + @${RM} ${STAGEDIR}${PREFIX}/lib/udev/rules.d/tpm-udev.rules + @${RMDIR} ${STAGEDIR}${PREFIX}/lib/udev/rules.d + @${RMDIR} ${STAGEDIR}${PREFIX}/lib/udev + +.include Index: head/security/tpm2-tss/distinfo =================================================================== --- head/security/tpm2-tss/distinfo +++ head/security/tpm2-tss/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1567186554 +SHA256 (tpm2-tss-2.3.1.tar.gz) = 7096576c1946b85ec9c92b39e0ed3409ec01bdb97d7863ead033243d5433dee7 +SIZE (tpm2-tss-2.3.1.tar.gz) = 1085143 Index: head/security/tpm2-tss/files/patch-src-util-io.c =================================================================== --- head/security/tpm2-tss/files/patch-src-util-io.c +++ head/security/tpm2-tss/files/patch-src-util-io.c @@ -0,0 +1,10 @@ +--- src/util/io.c.orig 2019-08-21 19:15:04 UTC ++++ src/util/io.c +@@ -8,6 +8,7 @@ + #endif + + #include ++#include + #include + #include + #include Index: head/security/tpm2-tss/files/patch-src-util-tss2_endian.h =================================================================== --- head/security/tpm2-tss/files/patch-src-util-tss2_endian.h +++ head/security/tpm2-tss/files/patch-src-util-tss2_endian.h @@ -0,0 +1,14 @@ +--- src/util/tss2_endian.h.orig 2019-08-21 19:14:09 UTC ++++ src/util/tss2_endian.h +@@ -9,7 +9,11 @@ + #define TSS2_ENDIAN_H + + #if defined(__linux__) || defined(__unix__) ++#if defined(__FreeBSD__) ++#include ++#else + #include ++#endif + + #define HOST_TO_BE_16(value) htobe16(value) + #define HOST_TO_BE_32(value) htobe32(value) Index: head/security/tpm2-tss/pkg-descr =================================================================== --- head/security/tpm2-tss/pkg-descr +++ head/security/tpm2-tss/pkg-descr @@ -0,0 +1,24 @@ +OSS implementation of the TCG TPM2 Software Stack (TSS2) +* libtss2-esys - Enhanced System API (ESAPI) as described in the TSS 2.0 + Enhanced System API (ESAPI) Specification. + This API is a 1-to-1 mapping of the TPM2 commands documented in Part 3 + of the TPM2 specification. Additionally there are asynchronous versions + of each command. In addition to SAPI, the ESAPI performs tracking of meta + data for TPM object and automatic calculation of session authorization and + parameters encryption. + +* libtss2-sys - System API (SAPI) as described in the system level API and TPM + command transmission interface specification. This API is a 1-to-1 mapping of + the TPM2 commands documented in Part 3 of the TPM2 specification. + Additionally there are asynchronous versions of each command. + +* libtss2-mu - Marshaling/Unmarshaling (MU) as described in the TCG TSS 2.0 + Marshaling/Unmarshaling API Specification. This API provides a set of + marshaling and unmarshaling functions for all data types define by the TPM + library specification. + +* TPM Command Transmission Interface (TCTI) that is described in the same + specification. This API provides a standard interface to transmit/receive + TPM command/response buffers. + + WWW: https://github.com/tpm2-software/tpm2-tss Index: head/security/tpm2-tss/pkg-plist =================================================================== --- head/security/tpm2-tss/pkg-plist +++ head/security/tpm2-tss/pkg-plist @@ -0,0 +1,56 @@ +include/tss2/tss2_common.h +include/tss2/tss2_esys.h +include/tss2/tss2_mu.h +include/tss2/tss2_rc.h +include/tss2/tss2_sys.h +include/tss2/tss2_tcti.h +include/tss2/tss2_tcti_device.h +include/tss2/tss2_tcti_mssim.h +include/tss2/tss2_tctildr.h +include/tss2/tss2_tpm2_types.h +lib/libtss2-esys.a +lib/libtss2-esys.so +lib/libtss2-esys.so.0 +lib/libtss2-esys.so.0.0.0 +lib/libtss2-mu.a +lib/libtss2-mu.so +lib/libtss2-mu.so.0 +lib/libtss2-mu.so.0.0.0 +lib/libtss2-rc.a +lib/libtss2-rc.so +lib/libtss2-rc.so.0 +lib/libtss2-rc.so.0.0.0 +lib/libtss2-sys.a +lib/libtss2-sys.so +lib/libtss2-sys.so.0 +lib/libtss2-sys.so.0.0.0 +lib/libtss2-tcti-default.so +lib/libtss2-tcti-device.a +lib/libtss2-tcti-device.so +lib/libtss2-tcti-device.so.0 +lib/libtss2-tcti-device.so.0.0.0 +lib/libtss2-tcti-mssim.a +lib/libtss2-tcti-mssim.so +lib/libtss2-tcti-mssim.so.0 +lib/libtss2-tcti-mssim.so.0.0.0 +lib/libtss2-tctildr.a +lib/libtss2-tctildr.so +lib/libtss2-tctildr.so.0 +lib/libtss2-tctildr.so.0.0.0 +libdata/pkgconfig/tss2-esys.pc +libdata/pkgconfig/tss2-mu.pc +libdata/pkgconfig/tss2-rc.pc +libdata/pkgconfig/tss2-sys.pc +libdata/pkgconfig/tss2-tcti-device.pc +libdata/pkgconfig/tss2-tcti-mssim.pc +libdata/pkgconfig/tss2-tctildr.pc +man/man3/Tss2_TctiLdr_Finalize.3.gz +man/man3/Tss2_TctiLdr_FreeInfo.3.gz +man/man3/Tss2_TctiLdr_GetInfo.3.gz +man/man3/Tss2_TctiLdr_Initialize.3.gz +man/man3/Tss2_TctiLdr_Initialize_Ex.3.gz +man/man3/Tss2_Tcti_Device_Init.3.gz +man/man3/Tss2_Tcti_Mssim_Init.3.gz +man/man7/tss2-tcti-device.7.gz +man/man7/tss2-tcti-mssim.7.gz +man/man7/tss2-tctildr.7.gz