Sounds like 9.3 would be better for consistent names.
Mike
From: Joey Vagedes <joey.vagedes@gmail.com>
Sent: Tuesday, June 27, 2023 2:42 PM
To: Kinney, Michael D <michael.d.kinney@intel.com>
Cc: devel@edk2.groups.io; Gao, Liming <gaoliming@byosoft.com.cn>; Liu, Zhiguang <zhiguang.liu@intel.com>
Subject: Re: [PATCH v1 1/2] MdePkg: IndustryStandard: Add DLL Characteristics
Hi Michael,
PeImage.h currently references rev 8.3 as the latest revision. The DLLCHARACTERISTICS field of the optional header existed in the revision, but I believe it was never added as it was not needed. I'm happy to add information to the header
if needed, just let me know what you're looking for. Would you like me to update it to v9.3 or stay at v8.3? If we stay at 8.3, I will need to remove IMAGE_DLLCHARACTERISTICS_HIGH_ENTROPY_VA as it did not exist in v8.3.
as for the naming, The latest revision (9.3) of the spec has the name as IMAGE_DLLCHARACTERISTICS_*. In revision 8.3, this is also true, except for the first three entries which do include the space as you mentioned.
Please let me know if you would like to stay at v8.3 or move up to v9.3 and I will update these defines appropriately.
On Tue, Jun 27, 2023 at 1:12 PM Kinney, Michael D <michael.d.kinney@intel.com> wrote:
Hi Joey,
Was the link to the PE/COFF specs that added these updated in the file header?
Also, shouldn't it be DLL_CHARACTERISRICS instead of DLLCHARACTERISRICS?
Mike
> -----Original Message-----
> From: Joey Vagedes <joey.vagedes@gmail.com>
> Sent: Friday, June 23, 2023 8:45 AM
> To: devel@edk2.groups.io
> Cc: Kinney, Michael D <michael.d.kinney@intel.com>; Gao, Liming
> <gaoliming@byosoft.com.cn>; Liu, Zhiguang <zhiguang.liu@intel.com>
> Subject: [PATCH v1 1/2] MdePkg: IndustryStandard: Add DLL Characteristics
>
> Add the bit masks for DLL Characteristics, used within the optional
> header of a PE, to the PeImage.h header file.
>
> Cc: Michael D Kinney <michael.d.kinney@intel.com>
> Cc: Liming Gao <gaoliming@byosoft.com.cn>
> Cc: Zhiguang Liu <zhiguang.liu@intel.com>
> Signed-off-by: Joey Vagedes <joeyvagedes@gmail.com>
> ---
> MdePkg/Include/IndustryStandard/PeImage.h | 15 +++++++++++++++
> 1 file changed, 15 insertions(+)
>
> diff --git a/MdePkg/Include/IndustryStandard/PeImage.h
> b/MdePkg/Include/IndustryStandard/PeImage.h
> index 47037049348c..430e8988f550 100644
> --- a/MdePkg/Include/IndustryStandard/PeImage.h
> +++ b/MdePkg/Include/IndustryStandard/PeImage.h
> @@ -269,6 +269,21 @@ typedef struct {
> #define EFI_IMAGE_SUBSYSTEM_OS2_CUI 5
> #define EFI_IMAGE_SUBSYSTEM_POSIX_CUI 7
>
> +//
> +// DLL Characteristics
> +//
> +#define IMAGE_DLLCHARACTERISTICS_HIGH_ENTROPY_VA 0x0020
> +#define IMAGE_DLLCHARACTERISTICS_DYNAMIC_BASE 0x0040
> +#define IMAGE_DLLCHARACTERISTICS_FORCE_INTEGRITY 0x0080
> +#define IMAGE_DLLCHARACTERISTICS_NX_COMPAT 0x0100
> +#define IMAGE_DLLCHARACTERISTICS_NO_ISOLATION 0x0200
> +#define IMAGE_DLLCHARACTERISTICS_NO_SEH 0x0400
> +#define IMAGE_DLLCHARACTERISTICS_NO_BIND 0x0800
> +#define IMAGE_DLLCHARACTERISTICS_APPCONTAINER 0x1000
> +#define IMAGE_DLLCHARACTERISTICS_WDM_DRIVER 0x2000
> +#define IMAGE_DLLCHARACTERISTICS_GUARD_CF 0x4000
> +#define IMAGE_DLLCHARACTERISTICS_TERMINAL_SERVER_AWARE 0x8000
> +
> ///
> /// Length of ShortName.
> ///
> --
> 2.41.0.windows.1