public byte[] Duplicate( TpmHandle objectHandle, TpmHandle newParentHandle, byte[] encryptionKeyIn, SymDefObject symmetricAlg, [SuppressMessage("Microsoft.Design", "CA1021")] out TpmPrivate duplicate, [SuppressMessage("Microsoft.Design", "CA1021")] out byte[] outSymSeed ) { Tpm2DuplicateRequest inS = new Tpm2DuplicateRequest(); inS.objectHandle = objectHandle; inS.newParentHandle = newParentHandle; inS.encryptionKeyIn = encryptionKeyIn; inS.symmetricAlg = symmetricAlg; TpmStructureBase outSBase; DispatchMethod(TpmCc.Duplicate, (TpmStructureBase) inS, typeof(Tpm2DuplicateResponse), out outSBase, 2, 0); Tpm2DuplicateResponse outS = (Tpm2DuplicateResponse) outSBase; duplicate = outS.duplicate; outSymSeed = outS.outSymSeed; return outS.encryptionKeyOut; }
public Tpm2DuplicateRequest(Tpm2DuplicateRequest the_Tpm2DuplicateRequest) { if((Object) the_Tpm2DuplicateRequest == null ) throw new ArgumentException(Globs.GetResourceString("parmError")); objectHandle = the_Tpm2DuplicateRequest.objectHandle; newParentHandle = the_Tpm2DuplicateRequest.newParentHandle; encryptionKeyIn = the_Tpm2DuplicateRequest.encryptionKeyIn; symmetricAlg = the_Tpm2DuplicateRequest.symmetricAlg; }