Commit Graph

329 Commits (devin/1739814168-add-doxygen-docs)

Author SHA1 Message Date
Devin AI 32ffc09590 Add newlines between doxygen sections for improved readability
Co-Authored-By: david@wolfssl.com <david@wolfssl.com>
2025-02-17 18:23:41 +00:00
Devin AI 1aaca3b71e Add doxygen documentation for public APIs
Co-Authored-By: david@wolfssl.com <david@wolfssl.com>
2025-02-17 18:11:00 +00:00
David Garske 5bd553a6a3 wolfTPM v3.8.0 release. 2025-01-06 11:46:49 -08:00
Eric Blankenhorn 80da56728c
Merge pull request #389 from dgarske/nv_extend
Fix issue with session binding / add NV extend example
2024-12-17 17:00:58 -06:00
David Garske 580b3a779e Fix issue with session binding. Add example for NV extend based on the TCG "bus protection guidance". 2024-12-16 11:53:52 -08:00
David Garske 7c48b76548 Support for building wolfTPM against older wolfCrypt (like v4.7.0). 2024-12-13 09:45:52 -08:00
David Garske d986ec73ba wolfTPM Release v3.6.0 prep. 2024-11-05 11:18:43 -08:00
JacobBarthelmeh 7a6deaa86d
Merge pull request #383 from dgarske/get_caps
Add support for TPM2_GetCapability for TPM_CAP_PCRS.
2024-10-31 15:38:40 -06:00
David Garske ebf7a6c7fb Add parsing of remaining capabilities. 2024-10-30 13:57:44 -07:00
David Garske fa1cd521a3 Helper to get wolfCrypt hash type. `TPMI_ALG_HASH TPM2_GetTpmHashType(int hashType)`. 2024-10-24 11:20:19 -07:00
Andras Fekete 3977395738 Minor documentation fixes 2024-08-28 09:13:56 -04:00
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 a012348fe9 Fixes for `TPM2_SetupPCRSel`. Added test cases. Fixes ZD 18492 2024-08-21 11:29:08 -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 6951b8d307 Fix for /dev/tpm0 file descriptor check (fixes #365). Added documentation for /dev/tpm0 permissions (fixes #358). Various spelling and documentation cleanups. 2024-07-31 11:21:53 -07:00
David Garske 62eff27459 Updated CMake to include new examples. Fixed doxygen issue with `wolfTPM2_GetKeyTemplate_EK` -> `curveID`. Fixed issue with possible create key timeout by always adding `XTPM_WAIT` for Linux. 2024-07-30 13:21:45 -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
Eric Blankenhorn b36f792416
Merge pull request #361 from dgarske/idevid
Fixes for latest ST33KTPM IAK/IDevID provisioning
2024-07-26 18:00:46 -05:00
David Garske dc2b91d056 Fixes for latest ST33KTPM IAK/IDevID provisioning. Added documentation for build options. 2024-07-26 14:49:31 -07:00
David Garske 57f12df97b Support for getting TPM EK Certificates. Added `wolfTPM2_GetKeyTemplate_EK` and `wolfTPM2_GetKeyTemplate_EK` API's for getting EK public templates for generating the EK primary key. Fix TLS example build issues with wolfSSL not having crypto callback or PK callback enabled. 2024-07-26 13:02:57 -07:00
David Garske b33e6b3187 Fix issue with Doxygen generation of wolfTPM due to doxybook2 crashing on unnamed enum. 2024-06-05 14:34:05 -07:00
Eric Blankenhorn 61abbc1073
Merge pull request #350 from dgarske/policyauth
Improvements in auth handling to support Policy Password and Policy Auth Value
2024-05-24 09:37:37 -05:00
David Garske 9a9ac2aec6 Fix docs. 2024-05-20 17:03:29 -07:00
David Garske ab45d27217 Cleanup new API's. Add documentation. 2024-05-20 15:35:33 -07:00
David Garske f65bea0946 Support for NV policy write/read. 2024-05-20 15:08:00 -07:00
David Garske fe05d93feb Support for policy auth value and policy password. 2024-05-20 11:16:56 -07:00
gojimmypi 5aff694c3f XSLEEP_MS is vTaskDelay for all FREERTOS, not just ESPIDF 2024-05-13 13:05:21 -07:00
gojimmypi fb19d7a0e1 Initial Infineon I2C TPM support for Espressif ESP32 2024-05-10 14:16:39 -07:00
David Garske 81c837189c Refactor to eliminate confusing cast between TPMS_AUTH_COMMAND and TPM2_AUTH_SESSION. 2024-05-08 15:58:59 -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
JacobBarthelmeh 1126c2ebfc
Merge pull request #344 from dgarske/nv_auth_policy
Added new API for allowing NV creation with policy
2024-04-24 11:02:51 -06:00
David Garske 377099af09 Added new API for allowing NV creation with policy. 2024-04-22 09:58:49 -07:00
David Garske 4a2e2506a4 Add Infineon firmware update recovery support. 2024-04-18 11:02:34 -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 63bb85ae9d Add support for pre-provisioned TPM using the "TPM 2.0 Keys for Device Identity and Attestation" specification. Build macro: `WOLFTPM_MFG_IDENTITY`. 2024-03-20 15:11:58 -07:00
David Garske c4880bee18 ST33 Vendor command for getting product info. 2024-03-20 15:11:58 -07:00
David Garske 93441f0e59 Documentation fixes. 2024-03-18 15:38:38 -07:00
David Garske 0b60fae993 Fix for netdb.h. 2024-03-01 11:51:27 -08:00
David Garske 35bf0b9649 Use C style comments. 2024-02-29 08:20:51 -08:00
David Garske 225a352bd4 Fixes for building with "-Wpedantic". ZD 17592 2024-02-28 17:06:55 -08:00
Eric Blankenhorn 46ef684106
Merge pull request #328 from dgarske/cap_handles
Added support for getting handles from capabilities
2024-02-09 09:33:08 -06:00
David Garske f7665ee0db Documentation fixes. 2024-02-09 06:55:16 -08:00
David Garske b395b65287 Fix for config.h, which should only be included from .c files, not headers. ZD 17473 2024-02-07 14:28:33 -08:00
David Garske e078e15f56 Added new API `wolfTPM2_GetHandles` to get list of handles from the TPM capabilities. ZD 17328 2024-02-06 10:48:16 -08:00
David Garske a2a45d2a3d Match byte swap logic with wolfSSL (use WOLF_ALLOW_BUILTIN). 2024-01-26 14:26:54 -08:00
David Garske b27e6c5874 Remove unused `XHTONS` and `arpa/inet.h`. 2024-01-26 14:26:54 -08:00
JacobBarthelmeh 6fcac417ee
Merge pull request #322 from dgarske/pkcs7_ecc
Added PKCS7 ECC support to example
2024-01-18 14:22:24 -08:00
David Garske 0aa01f4f5a Added PKCS7 ECC support to example. Added wrapper function to export TPM public key as DER/ASN.1 or PEM. Fix for crypto callback ECC sign to handle getting keySz for unknown cases (like PKCS7 without privateKey set). 2024-01-17 15:50:30 -08:00
David Garske ae60c59af7 Add _ex version for GetKeyTemplate RSA/ECC to allow setting all template parameters. 2024-01-09 13:20:25 -08:00