As mentioned here and here, it would be useful to have types on the interface of, for example, Public to marshal and unmarshal the underlying FFI type (e.g. TPM2B_PUBLIC). This would allow data to be moved between different machines that need to work with the same TPM-specific data structures.
These methods would defer to Tss2_MU_... functions exposed by the tss2-mu library (for which you can see the spec here), and so we can implement them for the types supported by this spec:
[ ] TPMA_... types
[ ] TPM_... base types
[ ] TPMS_... types
[ ] TPM2B_... types
[ ] TPMU_... types
I expect these new methods to simply be extensions of the existing types, so adding them won't break the API.
In #293 I added traits for this that I also implemented for the Attest type in order to make things easier if one wishes to make a generic function for types that can be marshalled or unmarshalled.
As mentioned here and here, it would be useful to have types on the interface of, for example,
Public
to marshal and unmarshal the underlying FFI type (e.g.TPM2B_PUBLIC
). This would allow data to be moved between different machines that need to work with the same TPM-specific data structures.These methods would defer to
Tss2_MU_...
functions exposed by thetss2-mu
library (for which you can see the spec here), and so we can implement them for the types supported by this spec:TPMA_...
typesTPM_...
base typesTPMS_...
typesTPM2B_...
typesTPMU_...
typesI expect these new methods to simply be extensions of the existing types, so adding them won't break the API.