Re: [PATCH RESEND] fix(data): correct type for TpmSignCommand.in_scheme

Jarkko Sakkinen <[email protected]> Tue, 20 Jan 2026 01:06:22 +0200
Newsgroups dev.linux.lists.tpm-protocol
Message-ID <[email protected]>
On Wed, Jan 14, 2026 at 05:19:54PM +0200, Jarkko Sakkinen wrote:
> On Mon, Jan 12, 2026 at 11:10:05AM +0000, P=E9tur Run=F3lfsson wrote:
> > The type of the inScheme parameter for the TPM_Sign command is
> > TPMT_SIG_SCHEME+ ([1], Table 109).
> >=20
> > Added test message scraped from strace output of Esys_Sign().
> >=20
> > [1] https://trustedcomputinggroup.org/wp-content/uploads/Trusted-Platfo=
rm-Module-2.0-Library-Part-3-Version-184_pub.pdf
> >=20
> > Signed-off-by: P=E9tur Run=F3lfsson <[email protected]>
>=20
> Thanks, did I miss the first patch?
>=20
> It might have gone somhow unnoticed as so far this has been just my
> sandbox project :-)
>=20
> I'll definitely apply this (within few days). Thank you.
>=20
> > ---
> >  src/frame/data.rs | 6 +++---
> >  tests/message.txt | 3 ++-
> >  2 files changed, 5 insertions(+), 4 deletions(-)
> >=20
> > diff --git a/src/frame/data.rs b/src/frame/data.rs
> > index 9bc27ca..668f672 100644
> > --- a/src/frame/data.rs
> > +++ b/src/frame/data.rs
> > @@ -14,8 +14,8 @@ use crate::{
> >          TpmSe, TpmSu, TpmaLocality, TpmiAlgCipherMode, TpmiAlgHash, Tp=
miEccKeyExchange, TpmiYesNo,
> >          TpmlAcCapabilities, TpmlAlg, TpmlCc, TpmlDigest, TpmlDigestVal=
ues, TpmlPcrSelection,
> >          TpmsAcOutput, TpmsAlgorithmDetailEcc, TpmsCapabilityData, Tpms=
Context, TpmsTimeInfo,
> > -        TpmtHa, TpmtKdfScheme, TpmtPublicParms, TpmtRsaDecrypt, TpmtSi=
gnature, TpmtSymDef,
> > -        TpmtSymDefObject, TpmtTkAuth, TpmtTkCreation, TpmtTkHashcheck,=
 TpmtTkVerified,
> > +        TpmtHa, TpmtKdfScheme, TpmtPublicParms, TpmtRsaDecrypt, TpmtSi=
gScheme, TpmtSignature,
> > +        TpmtSymDef, TpmtSymDefObject, TpmtTkAuth, TpmtTkCreation, Tpmt=
TkHashcheck, TpmtTkVerified,
> >      },
> >      frame::TpmHeader,
> >  };
> > @@ -2552,7 +2552,7 @@ tpm_struct! {
> >      handles: 1,
> >      parameters: {
> >          pub digest: Tpm2bDigest,
> > -        pub in_scheme: TpmtSignature,
> > +        pub in_scheme: TpmtSigScheme,
> >          pub validation: TpmtTkHashcheck,
> >      }
> >  }
> > diff --git a/tests/message.txt b/tests/message.txt
> > index 38bb576..09d6448 100644
> > --- a/tests/message.txt
> > +++ b/tests/message.txt
> > @@ -9,7 +9,8 @@
> >  00000137 Command 0000 80020000002a0000013740000001010000000000000c4000=
000900000000033132330004deadbeef0000
> >  00000176 Command 0000 80020000003f000001764000000140000001000000104000=
00090000800007617574683132330010aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa00000100100=
00b
> >  00000176 Command 0000 80010000002b0000017640000007400000070010aaaaaaaa=
aaaaaaaaaaaaaaaaaaaaaaaa0000000010000b
> > -0000015D Command 0000 80010000005C0000015D800000010020aaaaaaaaaaaaaaaa=
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0005000Bbbbbbbbbbbbbbbbbbbb=
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb8024400000070000
> > +0000015D Command 0000 80010000003C0000015D800000010020aaaaaaaaaaaaaaaa=
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0005000B8024400000070000
> > +0000015D Command 0000 8002000000c90000015d80fffffe00000049020000000020=
013e913204ba4c050b520e5c1b298183877ba1b96b986f9cbc3fb52ec82a68fa21002081d17=
7bfa62f2442b571932ebc03ee9f48e28f553a3272003d387ceb31857eac00205cb67f3ab8c7=
0a63af698f78e9378254e643786a0bd31301744d15c15805c6e30018000b802440000001004=
0875f530de79f51f5db75e9488c7bb07b7906211e486c675791b6bb8ccdd3357ff59a1603df=
6d27d6814e81621586eaad9af3564ff4032e3085bcd20c94a854e6
> >  0000017A Response 0000 80010000020b0000000001000000060000003f000001003=
22e30000000010100000000000001020000008a000001030000000800000104000007e20000=
01054946580000000106534c423900000107363730000000010800000000000001090000000=
00000010a000000000000010b000700550000010c0011cb000000010d000004000000010e00=
0000040000010f0000000700000110000000030000011100000040000001120000001800000=
11300000003000001140000ffff000001160000000800000117000008000000011800000006=
00000119000040000000011a0000000b0000011b000000060000011c000000800000011d000=
000ff0000011e0000058c0000011f0000058c0000012000000020000001210000038f000001=
22000001ee00000123000000010000012400000000000001250000010300000126000000000=
000012700000000000001280000008000000129000000610000012a000000600000012b0000=
00010000012c000003000000012d000000010000012e0000020000000200000000040000020=
18000000f000002020000000d00000203000000000000020400000003000002050000000000=
0002060000004000000207000000040000020800000001000002090000000c0000020a00000=
0020000020b0000000c0000020c000000000000020d000000020000020e000000000000020f=
0000001f0000021000000258
> >  00000176 Response 0000 8001000000300000000002000000002000647915de6106c=
955b26456b8b8a3b10546fa446405d4eb2e1fb0247fb52080
> >  0000017A Response 0000 8001000000170000000000000000080000000200030010
> > --=20
> > 2.43.0
> >=20
>=20
> BR, Jarkko

applied

BR, Jarkko