{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":22929140,"defaultBranch":"main","name":"go-tpm","ownerLogin":"google","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2014-08-13T19:53:34.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/1342004?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1717778326.0","currentOid":""},"activityList":{"items":[{"before":"ec702090749bc96310fcf40e7c567db1c5feea5b","after":"d96ccf71568571dba925660724354682fe8e5fa2","ref":"refs/heads/main","pushedAt":"2024-09-19T18:12:59.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"chrisfenner","name":"Chris Fenner","path":"/chrisfenner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/61842497?s=80&v=4"},"commit":{"message":"Create individual packages for Windows and Linux TPM transport (#369)\n\n* Create individual packages for Windows and Linux TPM transport\r\n\r\nhttps://github.com/google/go-tpm/pull/364 called to attention some\r\nlong-standing technical debt around TPM transport. In particular, the\r\nstack looks like:\r\n\r\n(Linux or Windows) `OpenTPM` function\r\ncalls the legacy `OpenTPM` function\r\ncalls the tpmutil `OpenTPM` function\r\n\r\nAt the bottom of the stack, tpmutil does some runtime introspection to\r\nsee what type of TPM it wants to open (e.g., on Linux, the device could\r\nbe either a device file or a socket). This runtime support is\r\nconvenient, but also breaks dead-code elimination (for example, tinygo\r\nwill fail to compile the UDS support code, and users have no way of\r\nleaving that out without patches).\r\n\r\nIn principle, we've found within Google that \"open my TPM\" should be as\r\nun-smart as possible, to avoid awkward edge cases (for example, what\r\nhappens if the logic finds two different TPMs on the system; which\r\nshould it prefer; should it invisibly succeed and surprise the user?).\r\nInstead, the preferred pattern is to require the user to explicitly say\r\nwhich TPM they are trying to open.\r\n\r\nThis change introduces 3 packages as a replacement for\r\n`transport.OpenTPM` (which this change marks as now Deprecated):\r\n\r\n`transport/linuxtpm.Open(path)` opens Linux device TPMs (e.g., /dev/tpm0 or\r\n/dev/tpmrm0)\r\n`transport/linuxudstpm.Open(path)` opens Linux Unix Domain Socket TPMs\r\n`transport/windowstpm.Open()` opens the TPM from TBS.dll\r\n\r\nIntentionally, the now-deprecated `transport.OpenTPM` is not touched.\r\nThis would create an import cycle.\r\n\r\n* Add small tests for each of the openers\r\n\r\n* fix lint\r\n\r\n* fix linuxudstpm and test\r\n\r\n* fix the test in the case that the UDS simulator is not running\r\n\r\n* remove extraneous test for windows","shortMessageHtmlLink":"Create individual packages for Windows and Linux TPM transport (#369)"}},{"before":"042b4e4b69dc6313558e7005be992ebbc96764b6","after":"ec702090749bc96310fcf40e7c567db1c5feea5b","ref":"refs/heads/main","pushedAt":"2024-09-17T16:55:53.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"chrisfenner","name":"Chris Fenner","path":"/chrisfenner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/61842497?s=80&v=4"},"commit":{"message":"Trivial fixes for lint and nullability (#368)\n\nThis change adds a missing doc comment for EncryptDecrypt2, and adds the\r\nmissing `nullable` tag onto HmacStart's hash algorithm. The hash\r\nalgorithm can be TPM_ALG_NULL (see TPM Spec Part 3).","shortMessageHtmlLink":"Trivial fixes for lint and nullability (#368)"}},{"before":"1642fe0ffa2a4e9940cadb54e02eb7fe75ce509d","after":"042b4e4b69dc6313558e7005be992ebbc96764b6","ref":"refs/heads/main","pushedAt":"2024-08-22T22:11:17.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"chrisfenner","name":"Chris Fenner","path":"/chrisfenner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/61842497?s=80&v=4"},"commit":{"message":"Add TPMFW (firmware) handles and FirmwareLimited attribute to TPMAObject (#366)\n\nAdd TPMFW (firmware) handles to go_tpm from updated TCG specs at https://trustedcomputinggroup.org/wp-content/uploads/TPM-2.0-1.83-Part-2-Structures.pdf#page83 and add FirmwareLimited attribute to TPMAObject and allow to the validation to accept keys with and without the bit set","shortMessageHtmlLink":"Add TPMFW (firmware) handles and FirmwareLimited attribute to TPMAObj…"}},{"before":"991b038b62b6a54f1d8b7dc6247cd65e41bbe639","after":"1642fe0ffa2a4e9940cadb54e02eb7fe75ce509d","ref":"refs/heads/main","pushedAt":"2024-08-12T21:25:53.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"chrisfenner","name":"Chris Fenner","path":"/chrisfenner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/61842497?s=80&v=4"},"commit":{"message":"add TPM2_PolicyDuplicationSelect (#365)\n\n* add TPM2_PolicyDuplicationSelect\r\n\r\nSigned-off-by: sal rashid \r\n\r\n* modify name; consolidate calls\r\n\r\nSigned-off-by: sal rashid \r\n\r\n* simplify tests\r\n\r\nSigned-off-by: sal rashid \r\n\r\n---------\r\n\r\nSigned-off-by: sal rashid ","shortMessageHtmlLink":"add TPM2_PolicyDuplicationSelect (#365)"}},{"before":"98efb9720c4f8fa717e4a6e1d2c462981eb06936","after":"991b038b62b6a54f1d8b7dc6247cd65e41bbe639","ref":"refs/heads/main","pushedAt":"2024-06-25T17:04:40.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"chrisfenner","name":"Chris Fenner","path":"/chrisfenner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/61842497?s=80&v=4"},"commit":{"message":"add EncryptDecrypt2 support (#360)\n\n* add EncryptDecrypt2 support\r\n\r\nSigned-off-by: sal rashid \r\n\r\n* simplify tests\r\n\r\nSigned-off-by: sal rashid \r\n\r\n---------\r\n\r\nSigned-off-by: sal rashid ","shortMessageHtmlLink":"add EncryptDecrypt2 support (#360)"}},{"before":"58e3e47cd4348fccbe4a29df01ef340341c3af52","after":"98efb9720c4f8fa717e4a6e1d2c462981eb06936","ref":"refs/heads/main","pushedAt":"2024-06-25T15:11:21.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"chrisfenner","name":"Chris Fenner","path":"/chrisfenner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/61842497?s=80&v=4"},"commit":{"message":"add PolicyAuthValue (#359)\n\n* add PolicyAuthValue\r\n\r\n* add nil authoption test","shortMessageHtmlLink":"add PolicyAuthValue (#359)"}},{"before":"5c2f0887e003342866997f32c50fb648a52525b9","after":"58e3e47cd4348fccbe4a29df01ef340341c3af52","ref":"refs/heads/main","pushedAt":"2024-05-14T14:52:14.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"chrisfenner","name":"Chris Fenner","path":"/chrisfenner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/61842497?s=80&v=4"},"commit":{"message":"feat: add HierarchyChangeAuth command (#357)\n\nsee definition in Part 3, Commands, section 24.8","shortMessageHtmlLink":"feat: add HierarchyChangeAuth command (#357)"}},{"before":"1fb84445f6230fb3ea416ac0347d225ed8c6d675","after":"5c2f0887e003342866997f32c50fb648a52525b9","ref":"refs/heads/main","pushedAt":"2024-05-10T20:17:45.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jkl73","name":"Jiankun Lü","path":"/jkl73","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/14238798?s=80&v=4"},"commit":{"message":"tpm2: Add RSADecryptWithSession (#314)","shortMessageHtmlLink":"tpm2: Add RSADecryptWithSession (#314)"}},{"before":"cfdeb6e9795a2fd873571fa974cccc9f54dbeae3","after":"1fb84445f6230fb3ea416ac0347d225ed8c6d675","ref":"refs/heads/main","pushedAt":"2024-04-11T18:03:40.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"chrisfenner","name":"Chris Fenner","path":"/chrisfenner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/61842497?s=80&v=4"},"commit":{"message":"tpm2: Implement TPM2_TestParms (#352)\n\nSigned-off-by: Morten Linderud ","shortMessageHtmlLink":"tpm2: Implement TPM2_TestParms (#352)"}},{"before":"48897afb715c9af84bc44941e3a78759a4adb67c","after":"cfdeb6e9795a2fd873571fa974cccc9f54dbeae3","ref":"refs/heads/main","pushedAt":"2024-04-11T14:36:13.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"chrisfenner","name":"Chris Fenner","path":"/chrisfenner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/61842497?s=80&v=4"},"commit":{"message":"feat: TPM2_RSA_Encrypt and TPM2_RSA_Decrypt (#356)","shortMessageHtmlLink":"feat: TPM2_RSA_Encrypt and TPM2_RSA_Decrypt (#356)"}},{"before":"dac860ff81e1b17c248c3ee4dfe85f2f3e9a0647","after":"48897afb715c9af84bc44941e3a78759a4adb67c","ref":"refs/heads/main","pushedAt":"2024-04-11T14:32:37.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"chrisfenner","name":"Chris Fenner","path":"/chrisfenner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/61842497?s=80&v=4"},"commit":{"message":"Implement TPM2_Duplicate (#355)\n\nhttps://github.com/google/go-tpm/issues/223","shortMessageHtmlLink":"Implement TPM2_Duplicate (#355)"}},{"before":"6b2397c1a4bbe84c3f9aa32639e418b5920631c5","after":"dac860ff81e1b17c248c3ee4dfe85f2f3e9a0647","ref":"refs/heads/main","pushedAt":"2024-04-11T14:29:57.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"chrisfenner","name":"Chris Fenner","path":"/chrisfenner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/61842497?s=80&v=4"},"commit":{"message":"Implement TPM2_ObjectChangeAuth (#354)\n\nSigned-off-by: Morten Linderud ","shortMessageHtmlLink":"Implement TPM2_ObjectChangeAuth (#354)"}},{"before":"08987cedf981527eedd33157e4268704e27ec00c","after":"6b2397c1a4bbe84c3f9aa32639e418b5920631c5","ref":"refs/heads/main","pushedAt":"2024-04-11T14:27:22.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"chrisfenner","name":"Chris Fenner","path":"/chrisfenner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/61842497?s=80&v=4"},"commit":{"message":"Bump go to 1.22 and golangci-lint to 1.56.2 (#353)\n\n* Bump go to 1.22 and golangci-lint to 1.56.2\r\n\r\n* Use single assignment of ECC curve in test","shortMessageHtmlLink":"Bump go to 1.22 and golangci-lint to 1.56.2 (#353)"}},{"before":"638c2b803c163d1c4447612bca5e824c24b036fc","after":"08987cedf981527eedd33157e4268704e27ec00c","ref":"refs/heads/main","pushedAt":"2024-02-22T21:00:53.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"chrisfenner","name":"Chris Fenner","path":"/chrisfenner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/61842497?s=80&v=4"},"commit":{"message":"Add TPM2_HMAC_Start implementation (#351)\n\n* Add TPM2_HMAC_Start implementation\r\n\r\n- See definition in Part 3, Commands, section 17.2\r\n\r\n* Review: change transient constant naming\r\n\r\n* Review: change transient handle Name computation\r\n\r\n* Fix Docker go version to match linter dependencies","shortMessageHtmlLink":"Add TPM2_HMAC_Start implementation (#351)"}},{"before":"ee6cbcd136f878df2c2f36b4a085d2115330f379","after":"638c2b803c163d1c4447612bca5e824c24b036fc","ref":"refs/heads/main","pushedAt":"2024-02-06T21:30:16.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"josephlr","name":"Joe Richey","path":"/josephlr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5506060?s=80&v=4"},"commit":{"message":"Fix the mistake of signature algorithm number (#349)\n\n`TPMUSignature.ECDAA()` incorrectly checked whether \r\nthe signature algorithm is `RSASSA`, so this commit fixes it.\r\n\r\nUpdate: `TPMAlgRSASSA` => `TPMAlgECDAA`","shortMessageHtmlLink":"Fix the mistake of signature algorithm number (#349)"}},{"before":"f397c2703ea524c489bba52ddd68fb0074ca9ac5","after":"ee6cbcd136f878df2c2f36b4a085d2115330f379","ref":"refs/heads/main","pushedAt":"2023-09-14T18:01:55.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"chrisfenner","name":"Chris Fenner","path":"/chrisfenner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/61842497?s=80&v=4"},"commit":{"message":"Introduce helper for formatting PCR selection bitmasks (#345)\n\n* Introduce helper for formatting PCR selection bitmasks\r\n\r\nThis change introduces PCClientCompatible.PCRs(), a function that\r\nconverts a variadic list of PCR indices (as ints) into a PCR selection\r\nbitmask. Because of the vagaries of TPM:\r\n\r\n1. That the minimum size of a PCR selection bitmask is not 0, but\r\n related to the minimum number of PCRs specified by the profile\r\n2. That the PC Client Platform TPM Profile specification mandates a\r\n minimum but not a maximum number of implementation PCR,\r\n\r\nthis change creates an interface that could be implemented for other TPM\r\nprofiles that specify different amounts of PCRs. The vast majority of\r\non-market TPMs will just work with PCClientCompatible.PCRs, even if they\r\nimplement more than 24 PCRs.\r\n\r\nPCRs() can panic if given invalid values; this is to allow it to be\r\ninlined into the definition of a structure that needs a PCR selection.\r\n\r\n* Don't publish the interface for the PCR selection formatter just yet.\r\n\r\n* use uint instead","shortMessageHtmlLink":"Introduce helper for formatting PCR selection bitmasks (#345)"}},{"before":"c49efc441a6076f9caf3b3ad51227232ccc95285","after":"f397c2703ea524c489bba52ddd68fb0074ca9ac5","ref":"refs/heads/main","pushedAt":"2023-09-13T21:31:47.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"chrisfenner","name":"Chris Fenner","path":"/chrisfenner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/61842497?s=80&v=4"},"commit":{"message":"Allow callers to omit handles from commands when RH_NULL (#344)","shortMessageHtmlLink":"Allow callers to omit handles from commands when RH_NULL (#344)"}},{"before":"e9722e4450de281f46cb7f4241f59695de4ed998","after":"c49efc441a6076f9caf3b3ad51227232ccc95285","ref":"refs/heads/main","pushedAt":"2023-08-07T15:09:04.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"chrisfenner","name":"Chris Fenner","path":"/chrisfenner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/61842497?s=80&v=4"},"commit":{"message":"tpm2: Implement TPM2_Import (#341)\n\nSigned-off-by: Morten Linderud ","shortMessageHtmlLink":"tpm2: Implement TPM2_Import (#341)"}},{"before":"f17b0354fbfcce8fe6db7cea78dd029c334529ad","after":"e9722e4450de281f46cb7f4241f59695de4ed998","ref":"refs/heads/main","pushedAt":"2023-07-20T14:57:01.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"chrisfenner","name":"Chris Fenner","path":"/chrisfenner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/61842497?s=80&v=4"},"commit":{"message":"feat: tpm2.EvictControl (#338)","shortMessageHtmlLink":"feat: tpm2.EvictControl (#338)"}},{"before":"49d82ad7b6745d685504fd0da2eff9a8172fc64a","after":"f17b0354fbfcce8fe6db7cea78dd029c334529ad","ref":"refs/heads/main","pushedAt":"2023-06-29T10:07:21.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"chrisfenner","name":"Chris Fenner","path":"/chrisfenner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/61842497?s=80&v=4"},"commit":{"message":"chore: remove refs to deprecated io/ioutil (#334)","shortMessageHtmlLink":"chore: remove refs to deprecated io/ioutil (#334)"}},{"before":"5a514e64d1ed5d986ccfd38b958d2d5c038dcccd","after":"49d82ad7b6745d685504fd0da2eff9a8172fc64a","ref":"refs/heads/main","pushedAt":"2023-06-27T15:07:13.601Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"brandonweeks","name":"Brandon Weeks","path":"/brandonweeks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/15869?s=80&v=4"},"commit":{"message":"Remove temporary `.swp` file (#333)","shortMessageHtmlLink":"Remove temporary .swp file (#333)"}},{"before":"af08f6dcbe4abdc7feffe4b376ad88b98128076d","after":"5a514e64d1ed5d986ccfd38b958d2d5c038dcccd","ref":"refs/heads/main","pushedAt":"2023-06-21T07:57:11.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"chrisfenner","name":"Chris Fenner","path":"/chrisfenner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/61842497?s=80&v=4"},"commit":{"message":"rely on go-tpm-tools @ 4639ecce2abad383ae6c5cbbc0eba5ba37abb05a (#332)","shortMessageHtmlLink":"rely on go-tpm-tools @ 4639ecce2abad383ae6c5cbbc0eba5ba37abb05a (#332)"}},{"before":"511507721cb172faf1149ab9e38ff7881eb1b776","after":"af08f6dcbe4abdc7feffe4b376ad88b98128076d","ref":"refs/heads/main","pushedAt":"2023-06-13T08:34:59.137Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"chrisfenner","name":"Chris Fenner","path":"/chrisfenner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/61842497?s=80&v=4"},"commit":{"message":"get rid of adapter.go and rename Startup_ and Shutdown_ (#331)","shortMessageHtmlLink":"get rid of adapter.go and rename Startup_ and Shutdown_ (#331)"}},{"before":"ea5baa18736a28bceeab8b713702d361c2781ec8","after":"511507721cb172faf1149ab9e38ff7881eb1b776","ref":"refs/heads/main","pushedAt":"2023-06-13T06:40:43.336Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"chrisfenner","name":"Chris Fenner","path":"/chrisfenner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/61842497?s=80&v=4"},"commit":{"message":"Replay google/master work since the start of tpmdirect (#330)\n\n* Bump golangci-lint to 1.52.2 (#320)\r\n\r\n* Suport ECC EKs for credential activation (#318)\r\n\r\n* Accept *ecdsa.PublicKey and transmute to *ecdh.PublicKey (#323)\r\n\r\n* Check if are available before calling the function (#324)\r\n\r\nFor windows, each function is available on different OS versions.\r\nTo avoid panic, Check if are available before calling the function.\r\n\r\n* Fix some issues identified by golangci linter\r\n\r\n---------\r\n\r\nCo-authored-by: Brandon Weeks \r\nCo-authored-by: Joseph Lee ","shortMessageHtmlLink":"Replay google/master work since the start of tpmdirect (#330)"}},{"before":null,"after":"ea5baa18736a28bceeab8b713702d361c2781ec8","ref":"refs/heads/main","pushedAt":"2023-06-12T07:53:04.141Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"chrisfenner","name":"Chris Fenner","path":"/chrisfenner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/61842497?s=80&v=4"},"commit":{"message":"fix reflection on cmd structs not to use elem (#329)","shortMessageHtmlLink":"fix reflection on cmd structs not to use elem (#329)"}},{"before":"3270509f088425fc9499bc9b7b8ff0811119bedb","after":null,"ref":"refs/heads/main","pushedAt":"2023-06-12T07:52:56.025Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"chrisfenner","name":"Chris Fenner","path":"/chrisfenner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/61842497?s=80&v=4"}},{"before":null,"after":"3270509f088425fc9499bc9b7b8ff0811119bedb","ref":"refs/heads/main","pushedAt":"2023-06-12T07:33:22.777Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"chrisfenner","name":"Chris Fenner","path":"/chrisfenner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/61842497?s=80&v=4"},"commit":{"message":"Check if are available before calling the function (#324)\n\nFor windows, each function is available on different OS versions.\r\nTo avoid panic, Check if are available before calling the function.","shortMessageHtmlLink":"Check if are available before calling the function (#324)"}},{"before":"fe5c4ed32de111b52ae07ce1dc032537c6609c9c","after":"ea5baa18736a28bceeab8b713702d361c2781ec8","ref":"refs/heads/tpmdirect","pushedAt":"2023-05-22T15:37:10.226Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"chrisfenner","name":"Chris Fenner","path":"/chrisfenner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/61842497?s=80&v=4"},"commit":{"message":"fix reflection on cmd structs not to use elem (#329)","shortMessageHtmlLink":"fix reflection on cmd structs not to use elem (#329)"}},{"before":"23d018066378cef47300ee438dd1f045c0810d96","after":"3270509f088425fc9499bc9b7b8ff0811119bedb","ref":"refs/heads/master","pushedAt":"2023-04-04T14:10:12.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"chrisfenner","name":"Chris Fenner","path":"/chrisfenner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/61842497?s=80&v=4"},"commit":{"message":"Check if are available before calling the function (#324)\n\nFor windows, each function is available on different OS versions.\r\nTo avoid panic, Check if are available before calling the function.","shortMessageHtmlLink":"Check if are available before calling the function (#324)"}},{"before":"40ad8f92a2ec0ed11ab8a3cebe93ce1506e83e89","after":null,"ref":"refs/heads/ec","pushedAt":"2023-04-03T21:20:39.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"brandonweeks","name":"Brandon Weeks","path":"/brandonweeks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/15869?s=80&v=4"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEuy9LxAA","startCursor":null,"endCursor":null}},"title":"Activity · google/go-tpm"}