Philip Tricca | daeb5bb | 2016-05-26 19:27:45 -0700 | [diff] [blame] | 1 | Unreleased |
Philip Tricca | c31b087 | 2016-07-12 19:54:23 -0700 | [diff] [blame] | 2 | Added |
Philip Tricca | 4334dee | 2016-08-09 19:56:28 -0700 | [diff] [blame] | 3 | * Allow for unit tests to be enabled selectively. |
Philip Tricca | c31b087 | 2016-07-12 19:54:23 -0700 | [diff] [blame] | 4 | * added pkg-config files for libraries |
Philip Tricca | daeb5bb | 2016-05-26 19:27:45 -0700 | [diff] [blame] | 5 | Changed |
Philip Tricca | 755d9ec | 2016-08-04 14:04:23 -0700 | [diff] [blame] | 6 | * socket TCTI finalize no longer frees context |
Philip Tricca | c31b087 | 2016-07-12 19:54:23 -0700 | [diff] [blame] | 7 | * rename libtss2 to libsapi |
| 8 | * rename libtcti_device to libtcti-device |
| 9 | * rename libtcti_socket to libtcti-socket |
| 10 | * move $(includedir)/tss to $(includedir)/sapi |
Philip Tricca | daeb5bb | 2016-05-26 19:27:45 -0700 | [diff] [blame] | 11 | * Move default compiler flags to config.site file. |
Philip Tricca | b0927df | 2016-06-21 06:28:44 -0700 | [diff] [blame] | 12 | * Removed SAPI_CLIENT macro tests. |
Philip Tricca | daeb5bb | 2016-05-26 19:27:45 -0700 | [diff] [blame] | 13 | |
Philip Tricca | ed408a9 | 2015-08-14 11:06:07 -0700 | [diff] [blame] | 14 | 2015-07-28 Will Arthur <will.c.arthur@intel.com> |
| 15 | * 0.98 release |
| 16 | * Added ability for resource manager to communicate with a real TPM via |
| 17 | /dev/tpm0 (Linux only). Added command line switch to select simulator if not |
| 18 | communicating with a real TPM. |
| 19 | * Rearranged directory structure in a more logical fashion. |
| 20 | * Changed name of Linux makefiles from “makefile.linux” to makefile. This was |
| 21 | done in preparation for autotools porting (future enhancement). |
| 22 | * Changed tpm library’s windows makefile from “makefile” to “windows.mak”. |
| 23 | * Changed all makefiles and Visual Studio solution and project files to work |
| 24 | with new directory structure. |
| 25 | * Split out debug and TPM platform command code in tpmsockets.cpp into |
| 26 | separate files. This code didn’t belong in this file. |
| 27 | |
| 28 | 2015-??-?? Will Arthur <will.c.arthur@intel.com> |
| 29 | * 0.97 release |
| 30 | * Fixed resource manager issues with leaving objects and session contexts in |
| 31 | TPM memory. This was causing a 902 error on 2nd pass of PolicyTests. And it |
| 32 | could have caused issues when error conditions occurred, because in those |
| 33 | cases, the contexts weren't being evicted. |
| 34 | * Changed TAB/RM into a separate executable (daemon). |
| 35 | * Added code to save context in RM table when an object is context loaded. |
| 36 | * Added code to get hierarchy from context when object is context loaded. |
| 37 | * Fixed bug: if LoadContext fails when loading objects it should exit |
| 38 | ResourceMgrSendTpmCommand immediately. Instead it was loading other objects |
| 39 | and proceeding through the rest of ResourceMgrSendTpmCommand function. |
| 40 | * Added targeted test to tpmclient.cpp to make sure that hierarchy is saved |
| 41 | correctly for ContextLoad command. |
| 42 | * Fixed issues with TCTI: opaque data shouldn't be defined in tss2_tcti.h |
| 43 | file. |
| 44 | * Fixed makefile issue: under Windows, it was using mkdir command instead of |
| 45 | md. |
| 46 | * Fixed issue with definition of TSS2_TCTI_POLL_HANDLE in tss2_tcti.h file. |
| 47 | * Fixed bug: wasn't handling case for TPM errors correctly in CheckPassed. |
| 48 | * Added code to print level-specific messages when errors occur. |
| 49 | * Changed CheckOverflow to return SAPI error level for errors. Other levels of |
| 50 | TSS that call this function will alter the error level field. |
| 51 | * Fixed resource manager to properly handle EvictControl commands. Before, if |
| 52 | a persistent object was needed, the RM would give a 0xc0002 error. |
| 53 | * Fixed printf's in resource manager so that they only print the right # of |
| 54 | characters. |
| 55 | * Added test for EvictControl.Fixed TestEncryptDecryptSession to work with |
| 56 | 1.22 simulator. |
| 57 | * Fixed TestShutdown to work with 1.22 simulator. |
| 58 | * Added code to check that TPM2B output parameters' size fields are set to 0 |
| 59 | for following structures: TPM2B_ECC_POINT, TPM2B_PUBLIC, TPM2B_NV_PUBLIC, and |
| 60 | TPM2B_CREATION_DATA. |
| 61 | |
| 62 | 2015-04-16 Will Arthur <will.c.arthur@intel.com> |
| 63 | * 0.96 release |
| 64 | * Added buffer overrun checks to all SAPI code. |
| 65 | * Added buffer overrun checks to resource manager code. |
| 66 | * Added code to Part 3 functions to properly handle null pointers for output |
| 67 | parameters. |
| 68 | * Auto-generated most of the SAPI code from the TPM 2.0 specification. |
| 69 | |
| 70 | 2015-01-26 Will Arthur <will.c.arthur@intel.com> |
| 71 | * 0.95.1 release |
| 72 | * Fixed bug in CreatePrimary and Create: for one-call and decrypt session |
| 73 | case, they were copying first parameter from incorrect pointer. |
| 74 | * For CopyCreationDataOut, CopyECCPointOut, CopyNvPublicOut, CopyPublicOut |
| 75 | added placeholder for return code if size != 0 when called. To be filled in |
| 76 | when TSS WG decides on error code. |
| 77 | * Fixed bugs in CopySensitiveCreateIn and CopySensitiveIn: they shouldn't look |
| 78 | at the size. |
| 79 | * Fixed bugs in CopyECCPointIn, CopyNvPublicIn, CopyPublicIn, CopySensitiveIn, |
| 80 | and CopySensitiveCreateIn: not handling NULL outpul parameters correctly. |
| 81 | * Changes all instances of calls to ExecuteFinish to a timeout that works for |
| 82 | all cases including communicating with the simulator over the network. |
| 83 | * Fixed call to LoadExternal in TestUnseal--needed to pass in a NULL pointer |
| 84 | for the inSensitive parameter. |
| 85 | * Fixed bug in CreatePrimary: not passing correct pointer for inSensitive. |
| 86 | * Fixed timeouts for all ExecuteFinish calls in test application. |
| 87 | * Fixed bugs in RM: cases where I wasn't handling errors and then parsing data |
| 88 | that hadn't been received. Caused seg faults under Linux. |
| 89 | * Fixed timeout for async Startup test. |
| 90 | * Fixed SocketReceiveTpmResponse for blocking case. |
| 91 | * Fixed bug in ExecuteFinish: BAD_SEQUENCE error generated early in function |
| 92 | was getting overwritten by INSUFFICENT_RESPONSE error. |
| 93 | * Fixed bug in ExecuteFinish: it was always setting timeout to 0 instead of |
| 94 | TSS2_TCTI_TIMEOUT_BLOCK. |
| 95 | * Fixed bug in resource manager: error level for non-TPM errors was getting |
| 96 | overwritten with resource manager error level. |
| 97 | * Replace Implementation.h with implementation.h. |
| 98 | * Changed name of TPMB.h tpmb.h |
| 99 | * Added code to dynamically work around simulator 1.19 bugs: |
| 100 | - GetCapability with bad property returns different error code. |
| 101 | - Shutdown with bad value for shutdownValue causes TPM to go into failure |
| 102 | mode. |
| 103 | * Fixed overlap in error codes: TSS2_BASE_RC_NOT_SUPPORTED and |
| 104 | TSS2_BASE_RC_BAD_TCTI_STRUCTURE had same value. |
| 105 | * Cleaned up all app level error codes. |
| 106 | * Added code to RM and simDriver to support timeout on receive calls. |
| 107 | * Added code to properly handle TPM errors in ExecuteFinish. Previously it was |
| 108 | ignoring these errors, which meant that the rest of the _Complete call would |
| 109 | try to unmarshall non-existent response data. Added test case for this. |
| 110 | * Added support for cancel commands and tests for this. |
| 111 | * Added help text for command line options. |
| 112 | * Fixed bug with ordering of -startAuthSessionTest command line parameter: if |
| 113 | it was not the last option, tpmclient would fail. |
| 114 | * Added code to reset dictionary attacks to start of tpmclient tests: this |
| 115 | works around an issue where the simulator doesn't seem to completely clear the |
| 116 | dictionary attack counter. |
| 117 | * Added support for TCTI setLocality to resource manager and sim driver and |
| 118 | made test app use this. |
| 119 | * Added RM tests. |
| 120 | * Added code to RM to evict contexts for objects, sequences, and sessions |
| 121 | whose handles are returned by commands. |
| 122 | * Fixed bugs related to ContextLoad. |
| 123 | * Added code to properly support ContextSave. |
| 124 | * Fixed bug in EvictContext: it was updating lastSessionSequenceNum even if |
| 125 | the ContextSave command failed. |
| 126 | * Added proper error code levels to all RM errors. |
| 127 | * Added code to LoadContext function to output TPM formatted error codes. |
| 128 | * For Create and Load commands, added proper handling of errors if parent |
| 129 | handle not found. |
| 130 | * Fixed handling of RM errors that occur during command send. |
| 131 | * Fixed bug in simDriver init function. A second TCTI context being |
| 132 | initialized was re-initing the whole driver. |
| 133 | * Added tests for bad session handle, both in handle area and in authorization |
| 134 | area. |
| 135 | * Updated to latest 1.19 header files. |
| 136 | * Fixed bugs in resource manager: |
| 137 | - FindOldestSession wasn't working correctly—it was just finding the first |
| 138 | one. |
| 139 | - HandleGap needed to un-gap all the session contexts from the older interval. |
| 140 | It wasn't doing that. |
| 141 | * Fixed bug in handling of command line options—specifying none would cause |
| 142 | program to error out. |
| 143 | * Fixed issues in cleanup of TestStartAuthSession test. It was leaving some |
| 144 | sessions alive. |
| 145 | * Added command line option to run the StartAuthSession tests by themselves. |
| 146 | * Updated copyright notices on all files. |
| 147 | * Added support for command line control of debug message levels. |
| 148 | * Changed test app to use linked list of session structures instead of fixed |
| 149 | array. This fixed a host of issues. |
| 150 | * Added new error level for resource manager for errors received from TPM from |
| 151 | commands sent by RM. |
| 152 | * Added error return for insufficiently sized response to ExecuteFinish |
| 153 | function. |
| 154 | * Fixed bugs in Certify, CertifyCreation, Commit, Create, CreatePrimary, and |
| 155 | GetCapability: if null used for return parameters, the function would fail. |
| 156 | * Added gap support to resource manager. |
| 157 | * Added support to resource manager for kicking out oldest session if max |
| 158 | sessions have been started and a new one is being created. |
| 159 | * Added getCap calls to RM init function for getting max sessions and gap |
| 160 | limit. |
| 161 | * Added code to teardown the RM. |
| 162 | * Added test for session gapping. |
| 163 | * Fixed bug in SimpleHmacOrPolicyTest where it was re-creating the global |
| 164 | sysContext causing failures in later tests because the context was too small. |
| 165 | * Fixed a bug in ExecuteFinish. If response is too small, code was just using |
| 166 | the command buffer as the response buffer instead of returning an error. |
| 167 | * Added code to proactively detect MAX_ACTIVE_SESSIONS. |
| 168 | * Fixed some places in test app where I wasn't deleting entries from the |
| 169 | sessions table. |
| 170 | * Added SAPI library subproject to test app project. This allows a one-touch |
| 171 | build in Visual Studio. |
| 172 | * Removed 'extern "C"' statement from resourcemgr.c file. Not needed and |
| 173 | causes problems with some compilers. |
| 174 | * Removed unneeded includes from resource manager source. |
| 175 | * Added changes to return error codes from TAB/RM and layers underneath in a |
| 176 | response byte stream. |
| 177 | * Fixed build warnings related to size mismatch of connectionId. |
| 178 | * Changed TeardownSysContext to zero out freed context pointer. |
| 179 | * This helps prevent double free errors. |
| 180 | * Fixed bug in EncryptDecryptXOR: wasn't setting the size of the outputData |
| 181 | buffer. |
| 182 | |
| 183 | 2014-10-17 Will Arthur <will.c.arthur@intel.com> |
| 184 | * 0.95 release |
| 185 | * Added support for Shutdown/Startup and effects on saved contexts. |
| 186 | * Added support for stClear bit objects. On a TPM Restart, objects with this |
| 187 | bit set will be removed from the TAB/RM entry list. |
| 188 | * Fixed intermittent access violation bug with GetSetDecryptParamTests |
| 189 | function. I was reading off the end of the nvWrite buffer. |
| 190 | * Added TCTI teardown function. |
| 191 | * Fixed bug in Tss2_Sys_GetContextSize function: it was getting the requested |
| 192 | size only, not the requested size plus the context blob's size. Problem was an |
| 193 | associativity issue with ternary conditional ?: operator. |
| 194 | * Removed most instances of sysContext in tpmclient.cpp. Now most tests use |
| 195 | the global one. |
| 196 | * Re-architected TAB/RM: |
| 197 | * Added TAB functionality. |
| 198 | * Changed RM from reactive mode to proactive mode. Now instead of reacting to |
| 199 | error codes from the TPM that indicate no enough slots, it guarantees that the |
| 200 | TPM is always ready for each command (all slots freed after execution of each |
| 201 | command). |
| 202 | * Added TCTI layer below RM to talk to driver. This allows making calls into |
| 203 | the SAPI library from the RM without recursing into the RM again. With the |
| 204 | separate TCTI context, the RM can route SAPI calls to talk directly to the |
| 205 | driver. This fixed the virtual/real handle mess that was occurring with |
| 206 | recursively entering the RM. |
| 207 | * Added function pointers to TAB/RM for functions that might need to be |
| 208 | different based on the environment that TAB/RM is running in: malloc, free, |
| 209 | printf. |
| 210 | * Replaced the fixed length arrays of RM structures with linked list |
| 211 | structures and appropriate functions. |
| 212 | * Fixed some cases of using pointers before checking that they're not NULL. |
| 213 | * Fixed bugs in marshalling/unmarshalling routines and added some missing |
| 214 | unmarshalling functions. |
| 215 | * Fixed hash sequence test. |
| 216 | * Fixed bugs in CopyCapabilityDataOut function for algorithms. |
| 217 | * Fixed bug with ExecuteAsync: passed in BE size to transmit call. Needs to be |
| 218 | host-endian. |
| 219 | * Added and corrected error codes to match latest SAPI spec. |
| 220 | * Removed pack pragma from header files for external interfaces. |
| 221 | * Added MAX_NV_BUFFER_SIZE and used for max size of MAX_NV_BUFFER_2B. |
| 222 | * Changed on bit fields in TPM2 data structures to unsigned int. Previously |
| 223 | the compiler was generating incorrect code because these were int bit fields. |
| 224 | * Cleaned up TestHash function. |
| 225 | * Added code to TestHash to calculate and validate a hash. |
| 226 | * Added code to TestHash to force a flush of an active sequence and then use |
| 227 | it to finish the hash calculation. |
| 228 | * Added code to SimpleHMACTest to read the NV index back. |
| 229 | * Added SimpleHMACOrPolicyTest function which helps illustrate the difference |
| 230 | between HMAC and policy sessions. |
| 231 | |
| 232 | 2014-08-01 Will Arthur <will.c.arthur@intel.com> |
| 233 | * 0.93 release |
| 234 | * Fixed bad parameters on call to GetEncryptParam. This only failed on Linux |
| 235 | systems. |
| 236 | * Fixed minor build errors under Linux. |
| 237 | * Added IsSession routine and fixed all instances in resource manager where a |
| 238 | handle is checked for being a session handle (some were incorrect). |
| 239 | * Eliminated unneeded code in TestPolicy. |
| 240 | * Added RollNonces function and used for all tests for HMAC and policy |
| 241 | sessions. |
| 242 | * Changed how nonce's are setup after StartAuthSession. Before they were being |
| 243 | inherently rolled in preparation for first command. Now the RollNonces routine |
| 244 | will need to be called before the first command. This makes handling of the |
| 245 | nonces consistent for all code that needs to roll them. |
| 246 | * Added TCTI malformed response error code. |
| 247 | * Added simple HMAC test. |
| 248 | * Fixed bug in StartAuthSession: wasn't marshalling symmetric parameter |
| 249 | properly if algorithm was TPM_ALG_XOR. |
| 250 | * Fixed bug in SetDecryptParam: when inserting a decrypt param, the code |
| 251 | wasn't updating the command size field. |
| 252 | * Fixed bug in ExecuteFinish: wasn't returning TPM error code if no other |
| 253 | errors had occurred. |
| 254 | * Added test for session parameter encryption and decryption. |
| 255 | * Fixed bug in KDFa function: if key size was zero, this was just returning |
| 256 | success, but not generating a key. That behavior is specific to session key |
| 257 | generation not to the underlying KDFa function. Upleveled that code into |
| 258 | StartAuthSession function so that it only occurs in the session key generation |
| 259 | case. |
| 260 | * Changed NV attributes for all NV indices to add orderly attribute. This |
| 261 | helps, but doesn't entirely relieve, NV wearout issues with the tests. |
| 262 | * Removed an unused input parameter from ComputeCommandHmacs and |
| 263 | CheckResponseHmacs. |
| 264 | * Changed NV attributes for all NV indices to add orderly attribute. This |
| 265 | helps, but doesn't entirely relieve, NV wearout issues with the tests. |
| 266 | * Removed an unused input parameter from ComputeCommandHmacs and |
| 267 | CheckResponseHmacs. |
| 268 | * Added more descriptive error codes to StartAuthSession function. |
| 269 | * Added TpmHashSequence function. Used this build password/PCR policy. |
| 270 | * Added more policy tests: password/PCR, authValue, password |
| 271 | * Fixed a bunch of resource manager issues. Many of these were exposed by the |
| 272 | new policy tests. |
| 273 | * Added code to flush context of session handles I'm not using. |
| 274 | * Added GetTestResult functions (had missed these previously) |
| 275 | * Updated resource manager to properly handle sessions. Before we were not |
| 276 | swapping them in as needed. |
| 277 | * Added tests for asyncronous and syncronous non-one call to Startup tests. |
| 278 | * Added GetTestResult tests. |
| 279 | * Added test to create a bunch of sessions. This test found some resource |
| 280 | manager issues. |
| 281 | * Updated readme.docx file. Now tests can run with V1.15 version of MS |
| 282 | simulator. |
| 283 | * Made test app work with MS simulator version 1.15. Had to add command to |
| 284 | turn on NV. Before this change, when running against MS simulator, |
| 285 | TPM2_Startup would fail with 0x923 error: "ERROR: WARNING, |
| 286 | TPM_RC_NV_UNAVAILABLE: the command may require writing of NV and NV is not |
| 287 | current accessible." |
| 288 | * Changed NO_RESPONSE_RECEIVED error code to IO_ERROR. |
| 289 | * Removed DRIVER_NOT_FOUND and DRIVERINFO_NOT_FOUND error codes. |
| 290 | * Cleaned up defines for MS simulator commands. |
| 291 | |
| 292 | 2014-06-17 Will Arthur <will.c.arthur@intel.com> |
| 293 | * 0.92 release |
| 294 | * Fixed bugs in sockets send and receive code. Needed to account for actual |
| 295 | bytes sent/received instead of assuming them. This was causing intermittent |
| 296 | errors when looping continuously on the tests and running the tests remotely |
| 297 | (on a different host system than the simulator was running on). |
| 298 | * Fixed SAPI and test app builds to not fail if directories are already |
| 299 | present. Suppressed error messages related to mkdir. |
| 300 | * Turned on compiler warnings and fixed all issues when building under Ubuntu |
| 301 | Linux. |
| 302 | * Fixed error in readme.docx file. I was specifying the wrong version of the |
| 303 | simulator. |
| 304 | * Fixed error handling if sockets interface fails to connect. |
| 305 | * Fixed build error: now I make directories that are needed. |
| 306 | |
| 307 | 2014-06-04 Will Arthur <will.c.arthur@intel.com> |
| 308 | * 0.91 release |
| 309 | * Added code optimized builds to System API library code |
| 310 | * Added warning flags to compiler command lines. |
| 311 | * Fixed all compiler warnings when built under Windows and Linux. |
| 312 | |
| 313 | 2014-05-28 Will Arthur <will.c.arthur@intel.com> |
| 314 | * 0.90 release |
| 315 | * Ported existing functionality to latest SAPI spec. |
| 316 | * Cleaned up and added comments to PasswordTest. |
| 317 | * Added support for encrypt/decrypt sessions with one-call functions. |
| 318 | * Added cleaned up and reorganized header files that comply with latest SAPI |
| 319 | specification. |
| 320 | * Added changes for supporting get/set encrypt/decrypt functions. |
| 321 | * Added latest header file that corresponds to version 1.03 of TPM 2.0 |
| 322 | specification. |
| 323 | * Added debug display of command string for each command being run. |
| 324 | * Added command line flag to slow down test display for demo purposes. |
| 325 | * Fixed problem of hang when looping through tests. Sessions table was running |
| 326 | out of entries because we weren't removing sessions that were closed. |
| 327 | * Fixed issue with resource manager. All virtual handles had the high nibble |
| 328 | set to 0xff. Now the high nibble is left intact so that applications can |
| 329 | determine the type of the handle. |
| 330 | * Added option to loop the tests continuously. |
| 331 | NOTES: |
| 332 | 1. Testing is not comprehensive. See test code to see what’s tested. Please |
| 333 | report any bugs found so that fixes can be rolled out. |
| 334 | 2. Range checks within SAPI code not yet implemented. |
| 335 | 3. Still need to add support for separate debug and production builds. |
| 336 | Production build will be optimized for code size. |
| 337 | |
| 338 | 2013-12-16 Will Arthur <will.c.arthur@intel.com> |
| 339 | * 0.82 release |
| 340 | NOTE: HMAC and cpHash calculations are only supported for NV Read and NV Write |
| 341 | commands currently. The system API changes to support this have been |
| 342 | prototyped for these commands and are awaitingTSS approval before being ported |
| 343 | to all the other commands. |
| 344 | * Added support for building and running system API code and tests under |
| 345 | Linux. |
| 346 | * Added command line options for host name and port to test application. |
| 347 | |
| 348 | 2013-12-02 Will Arthur <will.c.arthur@intel.com> |
| 349 | * 0.81 release |
| 350 | NOTE: HMAC and cpHash calculations are only supported for NV Read and NV Write |
| 351 | commands currently. The system API changes to support this have been |
| 352 | prototyped for these commands and are awaitingTSS approval before being ported |
| 353 | to all the other commands. |
| 354 | * Added support for TPM2_PolicyNvWritten command. |
| 355 | * Altered tests to work with 1.01 simulator. |
| 356 | * Fixed errors in readme.docx. |
| 357 | |
| 358 | 2013-11-19 Will Arthur <will.c.arthur@intel.com> |
| 359 | * 0.80 release |
| 360 | NOTE: HMAC and cpHash calculations are only supported for NV Read and NV Write |
| 361 | commands currently. The system API changes to support this have been |
| 362 | prototyped for these commands and are awaitingTSS approval before being ported |
| 363 | to all the other commands. |
| 364 | * Fixed bugs in resource manager. |
| 365 | * Fixed bugs with salted session tests. |
| 366 | * Ported tests to work with 0.99 sim's version of support for bound sessions. |
| 367 | * Fixed bugs in test code, with how key is generated for encrypting the salt |
| 368 | for salted session tests. |
| 369 | * Fixed a rather serious bug in HmacSessionTest: CopyNvPublicIn is called to |
| 370 | copy a structure, but is had the side effect of modifying the first parameter. |
| 371 | This function really wasn't designed to be used the way it is. Worked around |
| 372 | the problem by resetting the pointer after calling CopyNvPublicIn. This |
| 373 | problem showed up as a stack corruption issue that occurred during the 4th |
| 374 | test. Basically the pointer moved enough after the first 3 tests to start |
| 375 | corrupting other variables on the stack. |
| 376 | * Added code to create a new session for reading/writing the NV index after |
| 377 | it’s first written. This tests the other case for bound sessions. |
| 378 | * Automated runtime setup of key for salted tests. |
| 379 | * Developed changes for NVRead/Write commands to use new 2-stage method for |
| 380 | handling HMAC calculations. |
| 381 | * Changed CopyPcrSelectionIn function so that it can be used by applications |
| 382 | to generate policy hashes. |
| 383 | * Fixed build error: changes in header files weren't causing TPM 2.0 library |
| 384 | functions to be rebuilt. |
| 385 | * Created CalcPHash helper function. |
| 386 | * Changed HMAC session code to new architecture that doesn't use any helper |
| 387 | function pointers. |
| 388 | * Added routine to start policy sessions. |
| 389 | * Added policy test code--not used currently. |
| 390 | * Changed return code type form UINT32 to TPM_RC in tss_sysapi.h. |
| 391 | * Changed "authHandle" to "sessionHandle" in sample code. |
| 392 | * Debugged and fixed StartAuthSession2 function in test code. |
| 393 | * Debugged and fixed first policy test. |
| 394 | * Used new NvDefine function to help abstract some of the details of creating |
| 395 | NV indices. |
| 396 | * Used non-MS header file to build system API. |
| 397 | * Cleaned up and reorganized files and directories. |
| 398 | |
| 399 | 2013-08-07 Will Arthur <will.c.arthur@intel.com> |
| 400 | * 0.67 release |
| 401 | NOTE: HMAC helper function callouts are only being done for NV Read and NV |
| 402 | Write commands currently. The system API changes to support this are still |
| 403 | being prototyped. After they are finalized, these changes will be extended to |
| 404 | all functions that use sessions. |
| 405 | * Removed tis.h file. Not needed. |
| 406 | * Updated headers with Intel license text. |
| 407 | * Eliminated salted session test (because it doesn't work yet), and changed |
| 408 | out.good file to match. |
| 409 | * Plumbed in a resource mgr (doesn't actually do anything other than pass |
| 410 | through at this time). |
| 411 | * Split sockets driver into separate code module. |
| 412 | * SALTED session test fixes: |
| 413 | - Fixed CopyRSAEncryptIon function--wasn't handling some cases correctly. |
| 414 | - Backed out change to make parameterSize passed to ComputeSessionHmacPtr |
| 415 | function a UINT16. Needs to be UINT32. |
| 416 | * For ComputeSessionHmacPtr, changed parameterSize to UINT16 to fix build |
| 417 | warning. |
| 418 | * Added BOUND and SALTED HMAC session tests. BOUND test works, but SALTED |
| 419 | doesn't yet work. |
| 420 | * Added code to delete an entity from the entity table. |
| 421 | * Added code to work around an NV index anomaly with TPM simulator 0.98 and |
| 422 | previous versions: after the first NV index write, the name changes. This |
| 423 | causes the TPM's HMAC calculation to treat the index as if it's never the |
| 424 | BOUND entity, even if it is. This is expected (but weird) behavior which will |
| 425 | be fixed in 0.99 simulator. |
| 426 | * Fixed bugs in KDFa(). |
| 427 | * Altered all APIs to use pointers to TPM input/output buffers. |
| 428 | * Created two helper functions pointers for system API and used them for HMAC |
| 429 | sessions. |
| 430 | * Added support for HMAC session for NV read/write APIs.Added HMAC tests for |
| 431 | unbounded/unsalted sessions.Fixed context save/restore functions.Created |
| 432 | CopyNvPublicIn function and altered Tpm2_DefineSpace function to use it. |
| 433 | * Created TpmHash function |
| 434 | * Created TpmHandleToName function |
| 435 | * Added HMAC tests for unbounded/unsalted sessions. |
| 436 | * Fixed context save/restore functions. |
| 437 | * Created CopyNvPublicIn function and altered Tpm2_DefineSpace function to use |
| 438 | it. |
| 439 | * Created TpmHash function |
| 440 | * Created TpmHandleToName function |
| 441 | * Documented helper function pointers in the system API header file. |
| 442 | * Fixed formatting of prints of sized byte buffers in test app. |
| 443 | * Added tests for TpmHandleToName function. |
| 444 | * Fixed bug in TpmHmac function: needed to set size of result to 0 in case an |
| 445 | error occurs. |
| 446 | * Reorganized directories and moved files to make more logical sense. |
| 447 | * Fixed bugs in CopySensitiveIn function: uninitialized size field, bad |
| 448 | pointers, and incorrect increment of otherData at end of function. |
| 449 | * Added functionality needed for KDFa functions ConcatSizedByteBuffer, |
| 450 | CopySizedByteBuffer |
| 451 | - Added KDFa function in preparation for HMAC session test. Not tested yet. |
| 452 | - Added LoadExternalHMACKey function. This function is called by TPM HMAC |
| 453 | function. |
| 454 | - Altered TpmHMAC function to call LoadExternalHMAC key function. This |
| 455 | allows a better HMAC function pointer, one that complies with normal HMAC |
| 456 | calling convention. Before it was TPM-specific. |
| 457 | - Bumped up TPMBUF_LEN to 32k in tpmclient.cpp. This fixed overwriting |
| 458 | problems during context save/restore function. |
| 459 | - Fixed bugs in ContextLoad function: otherData wasn't initialized before it |
| 460 | was used. |
| 461 | - Fixed bug in Tpm20LoadExternal command: it wasn't properly marshaling the |
| 462 | inPrivate data. |
| 463 | |
| 464 | 2013-??-?? Will Arthur <will.c.arthur@intel.com> |
| 465 | * 0.66 release |
| 466 | * Added CertifyCreation function |
| 467 | * Added EcEphemeral function |
| 468 | * Added test for tspi_sys_TPM2_HashStart |
| 469 | * Cleaned up for general TCG release |
| 470 | |
| 471 | 2013-04-10 Will Arthur <will.c.arthur@intel.com> |
| 472 | * 0.65 release |
| 473 | * All TPM 2.0 functions now supported. |
| 474 | * Limited testing done on following functions: |
| 475 | - tspi_sys_TPM2_Startup |
| 476 | - tspi_sys_Tpm2_SelfTest |
| 477 | - tspi_sys_TPM2_GetCapability |
| 478 | - tspi_sys_TPM2_Clear-tested |
| 479 | - tspi_sys_TPM2_StartAuthSession |
| 480 | - tspi_sys_TPM2_ClearControl |
| 481 | - tspi_sys_TPM2_ChangeEPS |
| 482 | - tspi_sys_TPM2_HierarchyChangeAuth |
| 483 | - tspi_sys_TPM2_Extend |
| 484 | - tspi_sys_TPM2_HashSequenceStart |
| 485 | - tspi_sys_TPM2_SequenceUpdate |
| 486 | - tspi_sys_TPM2_SequenceComplete |
| 487 | - tspi_sys_TPM2_EventSequenceComplete |
| 488 | - tspi_sys_TPM2_GetRandom |
| 489 | - tspi_sys_TPM2_SaveState |
| 490 | - tspi_sys_TPM2_PcrRead |
| 491 | - tspi_sys_TPM2_NVRead |
| 492 | - tspi_sys_TPM2_NVWrite |
| 493 | - tspi_sys_TPM2_Unseal |
| 494 | - tspi_sys_TPM2_PcrAllocate |
| 495 | - tspi_sys_TPM2_DictionaryAttackLockReset |
| 496 | - tspi_sys_TPM2_NV_Writelock |
| 497 | - tspi_sys_TPM2_PolicyCommandCode |
| 498 | - tspi_sys_TPM2_PolicyGetDigest |
| 499 | - tspi_sys_TPM2_PolicyOr |
| 500 | - tspi_sys_TPM2_PolicyRestart |
| 501 | - tspi_sys_TPM2_LoadExternal |
| 502 | - tspi_sys_TPM2_HierarchyControl |
| 503 | - tspi_sys_TPM2_NV_UndefineSpace |
| 504 | - tspi_sys_TPM2_Create |
| 505 | - tspi_sys_TPM2_Load |
| 506 | - tspi_sys_TPM2_Quote |
| 507 | - tspi_sys_TPM2_NV_ReadPublic |
| 508 | - tspi_sys_TPM2_ChangePPS |
| 509 | - tspi_sys_TPM2_NV_DefineSpace |
| 510 | - tspi_sys_TPM2_PolicyLocality |
| 511 | - tspi_sys_TPM2_PolicyPCR |
| 512 | - tspi_sys_TPM2_CreatePrimary |
| 513 | - tspi_sys_TPM2_Shutdown |
| 514 | - tspi_sys_TPM2_PCR_Event |
| 515 | - tspi_sys_TPM2_PolicyNV |
| 516 | - tspi_sys_TPM2_NV_ReadLock |
| 517 | - tspi_sys_TPM2_NV_UndefineSpaceSpecial |
| 518 | No testing done on all other 61 functions |
| 519 | |
| 520 | 2013-03-29 Will Arthur <will.c.arthur@intel.com> |
| 521 | * 0.60 release |
| 522 | * Added changes to make it comply with TSS 2.0 system library API |
| 523 | * Cleaned up and removed unneeded files. |