Intel® Business Client Software Development
Support for Intel® vPro™ software development and technologies associated with Intel vPro platforms.

An exception error on WsmanLib in AMT SDK

smaki
Novice
739 Views
Hi, I'm not sure if this is the right place to post, but I'm facing an issue regarding a module in the AMT SDK. Our local application product written in C# executes AMT Host based Provioning by using WsmanLib(Intel.Wsman.Scripting.dll). It tries to retrive some information from CSME via HECI at the beggining(firmware version, provisioning state, etc.). When I changed password string to SecureString on my program and replaced WsmanLib to version 16.0.7.1 or 18.0.0.1, TypeLoadException occurred at calling HECIClass.GetLocalAdminCredentials() and failed to get $$OsAdmin account info. It had no problem with version 16.0.5 and earlier version. Part of my code is as follows: HECIClass heci = new HECIClass(); heci.Init(); bool result = heci.GetCodeVersions(out string bios, out HECIClass.AMT_VERSION_TYPE[] versions); heci.GetProvisioningState(out HECIClass.ProvisioningState provisioningState); heci.GetProvisioningMode(out HECIClass.ProvisioningMode provisioningMode); heci.GetLocalAdminCredentials(out string userName, out SecureString password); <= TypeLoadException occurred at here. heci.DeInit(); I checked through the source code of WsmanLib and found a problem. [StructLayout(LayoutKind.Sequential, Pack = 1, CharSet = CharSet.Ansi)] private struct CFG_GET_LOCAL_SYSETM_ACCOUNT_RESPONSE { public byte MajorNumber; public byte MinorNumber; public UInt16 Reserved; public UInt32 Command; public UInt32 Length; public UInt32 AmtStatus; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 33)] public string UserName; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 33)] public SecureString Password; <= Maybe cannot marshal SecureString. On previous version, it was just string. } Can I ask to fix the library? Thank you, shinichiro
0 Kudos
0 Replies
Reply