Commit Graph

70 Commits (master)

Author SHA1 Message Date
David Garske a6d7ed8695 Added example for `TPM2_Certify`:
* Added new build option for TPM provisioning (`--enable-provisioning` on by default).
* Added new `wolfTPM2_CreatePrimaryKey_ex` and `WOLFTPM2_PKEY` that supports returning creation ticket/hash.
* Added key templates for initial device (IDevID) and attestation keys (IAK).
* Extended `create_primary` example to support creation or IDevID and IAK.
* Added new policy hash helper API `wolfTPM2_PolicyHash`
* Switch handle/nvIndex string parsing to use `strtoul`.

ZD 18347
2024-08-22 10:38:01 -07:00
David Garske 026c82f799 Fixes and new tests for building wolfCrypt/wolfTPM without ECC or RSA. Fixes ZD 18470. Improved smallstack (eliminated `WOLFTPM2_MAX_BUFFER`). Fixes for building with NO_ASN. 2024-08-19 09:55:15 -07:00
David Garske 95ae2f7459 wolfTPM v3.4.0 release.
* Fixes for building without wolfCrypt or heap.
* Fix for building wolfTPM DLL (was missing tbs.lib).
* Fix for `wolfTPM2_New` to provide default TPM2 HAL IO callback.
2024-07-30 09:09:24 -07:00
David Garske c98ee9a71e Update copyright date. 2024-04-24 10:42:27 -07:00
David Garske 4157ed5689 Release v3.2.0 prep. 2024-04-24 10:42:25 -07:00
David Garske 892726e6b5 Added support for Infineon SLB9672/SLB9673 Firmware upgrade (see examples/firmware/README.md)
Added Infineon Modus Toolbox support. See `wolfssl/IDE/Infineon/README.md` for setup instructions.
Added support for Infineon CyHal I2C support.
Added Firmware extraction tool
Added Firmware update example application `examples/firmware/ifx_fw_update`.
Added support for vendor capabilities `TPM_CAP_VENDOR_PROPERTY`.
Added `XSLEEP_MS` macro for firmware update delay.
Added support for getting key group id, operational mode and update counts.
Added support for abandoning an update.
Added support for firmware update done, but not finalized
Fix auto-detect to not define SLB9672/SLB9673.
2024-04-01 17:21:18 -07:00
David Garske 53bf0f4a0f For the TLS examples and SWTPM interface that use POSIX sockets make sure `netdb.h` is included. Previously wolfSSL always included netdb.h, but now it requires `HAVE_NETDB_H`. 2024-02-29 10:43:26 -08:00
David Garske d9f51da00e wolfTPM v3.1 release prep 2023-12-29 10:55:30 -08:00
David Garske a10a10db5d Added v3.0 release notes and updated version. 2023-10-30 12:02:28 -07:00
David Garske f35dbbbb30 Fixes for using Windows TBS API. The `wolfTPM2_NVStoreKey` should return `TPM_RC_COMMAND_CODE` or `TPM_E_COMMAND_BLOCKED` for the `WOLFTPM_IS_COMMAND_UNAVAILABLE` macro. Add better enable option name `--enable-wintbs` (currently is `--enable-winapi`. 2023-10-30 10:06:17 -07:00
David Garske 23a5d2595b Fixes for small stack. 2023-08-31 13:37:22 -07:00
David Garske 8968d89f90 More CI fixes. 2023-08-31 12:29:13 -07:00
David Garske 2e72da7d75 Fixes for autoconf to have a clean `./autogen.sh`. 2023-07-10 14:45:14 -07:00
David Garske 21638b065a Improve MMIO support to utilize the HAL framework. 2023-06-28 13:39:47 -07:00
Marco Oliverio f8c1ff6075 tis: support memory mapped tpm 2023-05-30 16:58:46 +00:00
David Garske f2a95f3902 Fix for Microchip Harmony build settings. Rename to `WOLFTPM_MICROCHIP_HARMONY`. Avoids confusion with the TPM 2.0 module ATTPM from Microchip. Now enabled with `WOLFTPM_MICROCHIP` and provides backwards compatibility for `WOLFTPM_MCHP`. The new `WOLFTPM_MICROCHIP` has not been released (was added in PR #251). 2023-02-03 10:49:29 -08:00
David Garske 1ea4a591a8 HAL refactor and documentation improvements. Move example HAL implementations into new `hal` directory. Include the example HAL in the library when building. Updated HAL IO documentation. 2023-01-18 12:38:04 -08:00
John Bland b49be0e0aa add thread local storage test to the unit tests 2023-01-16 17:04:49 -05:00
John Bland 1825b6f457 add thread local storage macro and make gActiveTPM local to the thread 2023-01-16 15:36:45 -05:00
David Garske 4160930b48 wolfTPM v2.7.0 release prep. 2022-12-27 16:14:59 -08:00
David Garske 94b59d5255 wolfTPM v2.6.0
* Fix CMakeList.txt to fix include order.
* Remove execute bit on code files.
2022-09-01 10:41:42 -07:00
David Garske 3f84b2efbc wolfTPM v2.5.0 release prep 2022-07-22 09:32:57 -07:00
David Garske 2ce8062f06 Fix for Infineon SLB9672 max speed. For older SLB9670 use `--enable-infineon=slb9670` or define `WOLFTPM_SLB9670`. Fixes #223 2022-07-15 15:52:37 -07:00
David Garske a22277a07d Infineon SLB9672 support. 2022-06-28 16:07:30 -07:00
Elms ed70aeb703 v2.4.0 release preparation 2022-05-06 10:52:41 -07:00
Elms 8cf401a5ee v2.3.1 updates 2021-11-18 16:47:03 -08:00
David Garske 0f9e8b5768 wolfTPM Release v2.3.0 2021-11-08 15:49:00 -08:00
David Garske c83088decf Release for wolfTPM v2.2.0 preparation. 2021-07-13 11:26:12 -07:00
Elms 24fd0c94ac Fix default prefix 2021-07-01 21:51:17 -07:00
Elms ce94c4d30b Fix `--prefix` without also needing `--with-wolfcrypt`
During addition of `--with-wolfcrypt` prefix option was ignored for
include and link paths unless also specified via `--with-wolfcrypt`.

Use prefix as default and set flags in `enable-wolfcrypt` section
2021-07-01 11:39:24 -07:00
David Garske ed1ec8c52d Support for QNX with wolfTPM:
* Fix for `wolfTPM2_NVCreateAuth` to return `TPM_RC_NV_DEFINED` if already exists (it used to do this, but broke with GPIO changes).
* Fixes for building wolfTPM with wolfCrypt only (no TLS).
* Fix for building without RSA and ECC.
* Fix for `--enable-smallstack` with parameter encryption,
* Fix for nvram/store unused variable.
2021-06-01 10:34:28 -07:00
David Garske 7ac159116c Improve the `--with-wolfcrypt=` logic and print path used (`configure: wolfCrypt path: /usr/local/`). 2021-05-18 09:36:48 -07:00
David Garske 4e351b16a9 Add support for `--with-wolfcrypt=/dir/`. Fix for build error with `--disable-wolfcrypt`. Fix for unused `auth` in store example. ZD 12204 2021-05-13 09:49:08 -07:00
David Garske 2b8cfb8692 wolfTPM Release v2.1.0 preparation.
* Updated copyright
* Fixed minor cast warning.
* Fixed minor scan-build warnings.
* Cleanup print public and fix possible print of uninitialized field.
2021-03-17 10:13:50 -07:00
David Garske 845b3d1da2 Release fixes and cleanups. Fixes for init of `WOLFTPM2_HASH` in `wolfTPM2_HashStart`. Fix for for various build configurations (--disable-wrapper). Fix for Microchip "sign" bit on symmetric keys. Fix for scan-build warnings. Cleanup whitespace. 2020-12-07 11:01:02 -08:00
David Garske b1a11c386a Preparation for wolfTPM v2.0 release. 2020-12-03 11:12:01 -08:00
Elms 1fcae21585 Refactor socket code to support win32 2020-11-12 14:04:00 -08:00
Elms c05aaa0402 winapi: don't build client or server for winapi 2020-10-13 15:59:15 -07:00
Elms 0fb03c12b1 compiling with minGW
- mingw visibility fix
2020-10-07 13:21:49 -07:00
Elms 31f2f652c7 autotools: Print SWTPM option 2020-09-24 09:47:46 -07:00
Elms 9617dab37e swtpm: Rename SOCKET option to SWTPM 2020-09-24 08:37:06 -07:00
Elms 63736417b2 Add socket connection option for using with TPM2 simulator
This is largely based on and tested against http://ibmswtpm.sourceforge.net/
2020-09-23 10:39:38 -07:00
Eric Blankenhorn 72464dc621 Release v1.9 preparation 2020-08-24 12:12:11 -05:00
David Garske 6d46b26bde Added dynamic module detection at run-time when using internal TIS. 2020-07-13 09:55:36 -07:00
David Garske 30f2e644aa Added NPCT75x Nuvoton support. 2020-07-13 09:54:00 -07:00
David Garske 6bd412df09 wolfTPM v1.8 release preparation. 2020-04-29 08:56:57 -07:00
Dimitar Tomov 9416f1ef09 Minor fixes for the TPM Linux device interface and debug improvements
Signed-off-by: Dimitar Tomov <dimi@designfirst.ee>
2020-04-28 15:43:49 -07:00
Dimitar Tomov 68d1f95d1e Add interface for using TPM through the Linux device driver
Signed-off-by: Dimitar Tomov <dimi@designfirst.ee>
2020-04-28 15:43:49 -07:00
Chris Conlon 91ef0b0e6e update copyright to 2020 2020-01-03 15:31:27 -08:00
David Garske 7887130287 wolfTPM v1.7 Release 2019-12-27 14:43:30 -08:00