Winddy,

We agree with you that comment out 'Signature' is a good approach to solve this 
issue. Thanks a lot for capturing and reporting to us. Since this structure is 
defined in UEFI specification, we need firstly file errata and send to USWG for 
approval. After this change request is approved and published, we will follow 
up to update the definition in MdePkg.

Thanks again,
Ye Ting

-----Original Message-----
From: winddy [mailto:winddy_zh...@foxmail.com] 
Sent: Thursday, January 17, 2013 9:13 AM
To: edk2-devel
Subject: [edk2] EFI_IMAGE_EXECUTION_INFO definition is not correct

Send error, Resend.

Hi experts,
  I find struct 
EFI_IMAGE_EXECUTION_INFO(MdePkg/Include/Guid/ImageAuthentication.h) has a 
problem:
  Member EFI_SIGNATURE_LIST should not be actived as size of provious members 
Name[] and DevicePath are not fixed. It should just be a comment definition, 
but not a real definition.
  And it will cause AddImageExeInfo() allocate more memory for each entry but 
data is not initialized.
  So I think we should comment it.
  Thanks.


typedef struct {
  ///
  /// Describes the action taken by the firmware regarding this image.
  ///
  EFI_IMAGE_EXECUTION_ACTION    Action;
  ///
  /// Size of all of the entire structure.
  ///
  UINT32                        InfoSize;
  ///
  /// If this image was a UEFI device driver (for option ROM, for example) this 
is the
  /// null-terminated, user-friendly name for the device. If the image was for 
an application,
  /// then this is the name of the application. If this cannot be determined, 
then a simple
  /// NULL character should be put in this position.
  /// CHAR16                    Name[];
  ///

  ///
  /// For device drivers, this is the device path of the device for which this 
device driver
  /// was intended. In some cases, the driver itself may be stored as part of 
the system
  /// firmware, but this field should record the device's path, not the 
firmware path. For
  /// applications, this is the device path of the application. If this cannot 
be determined,
  /// a simple end-of-path device node should be put in this position.
  /// EFI_DEVICE_PATH_PROTOCOL  DevicePath;
  ///

  ///
  /// Zero or more image signatures. If the image contained no signatures,
  /// then this field is empty.
  ///
  EFI_SIGNATURE_LIST            Signature;         <--- Here! it should be in 
comment state.
} EFI_IMAGE_EXECUTION_INFO;


---------------------------------------------------------
winddy_zh...@byosoft.com.cn
BR
------------------------------------------------------------------------------
Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS, MVC, 
Windows 8 Apps, JavaScript and much more. Keep your skills current with 
LearnDevNow - 3,200 step-by-step video tutorials by Microsoft MVPs and experts. 
ON SALE this month only -- learn more at:
http://p.sf.net/sfu/learnmore_122712
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel

------------------------------------------------------------------------------
Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS,
MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current
with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft
MVPs and experts. ON SALE this month only -- learn more at:
http://p.sf.net/sfu/learnmore_122712
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel

Reply via email to