- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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
Link Copied
0 Replies
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page