* [PATCH] BaseTools/VolInfo: Parse apriori files @ 2022-07-22 15:37 Konstantin Aladyshev 2022-07-24 6:10 ` [edk2-devel] " Bob Feng 2022-10-01 15:26 ` Bob Feng 0 siblings, 2 replies; 5+ messages in thread From: Konstantin Aladyshev @ 2022-07-22 15:37 UTC (permalink / raw) To: devel; +Cc: bob.c.feng, gaoliming, yuwei.chen, Konstantin Aladyshev Output file GUIDs from the DXE and PEI apriori files. Signed-off-by: Konstantin Aladyshev <aladyshev22@gmail.com> --- BaseTools/Source/C/VolInfo/VolInfo.c | 74 ++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) diff --git a/BaseTools/Source/C/VolInfo/VolInfo.c b/BaseTools/Source/C/VolInfo/VolInfo.c index 2d7c6212b3..28c6806cf0 100644 --- a/BaseTools/Source/C/VolInfo/VolInfo.c +++ b/BaseTools/Source/C/VolInfo/VolInfo.c @@ -43,6 +43,8 @@ SPDX-License-Identifier: BSD-2-Clause-Patent // EFI_GUID gEfiCrc32GuidedSectionExtractionProtocolGuid = EFI_CRC32_GUIDED_SECTION_EXTRACTION_PROTOCOL_GUID; +EFI_GUID gPeiAprioriFileNameGuid = { 0x1b45cc0a, 0x156a, 0x428a, { 0XAF, 0x62, 0x49, 0x86, 0x4d, 0xa0, 0xe6, 0xe6 }}; +EFI_GUID gAprioriGuid = { 0xFC510EE7, 0xFFDC, 0x11D4, { 0xBD, 0x41, 0x00, 0x80, 0xC7, 0x3C, 0x88, 0x81 }}; #define UTILITY_MAJOR_VERSION 1 #define UTILITY_MINOR_VERSION 0 @@ -107,6 +109,12 @@ ReadHeader ( OUT BOOLEAN *ErasePolarity ); +STATIC +EFI_STATUS +PrintAprioriFile ( + EFI_FFS_FILE_HEADER *FileHeader + ); + STATIC EFI_STATUS PrintFileInfo ( @@ -1083,6 +1091,53 @@ Returns: return EFI_SUCCESS; } +STATIC +EFI_STATUS +PrintAprioriFile ( + EFI_FFS_FILE_HEADER *FileHeader + ) +/*++ + +Routine Description: + + Print GUIDs from the APRIORI file + +Arguments: + + FileHeader - The file header + +Returns: + + EFI_SUCCESS - The APRIORI file was parsed correctly + EFI_SECTION_ERROR - Problem with file parsing + +--*/ +{ + UINT8 GuidBuffer[PRINTED_GUID_BUFFER_SIZE]; + UINT32 HeaderSize; + + HeaderSize = FvBufGetFfsHeaderSize (FileHeader); + + if (FileHeader->Type != EFI_FV_FILETYPE_FREEFORM) + return EFI_SECTION_ERROR; + + EFI_COMMON_SECTION_HEADER* SectionHeader = (EFI_COMMON_SECTION_HEADER *) ((UINTN) FileHeader + HeaderSize); + if (SectionHeader->Type != EFI_SECTION_RAW) + return EFI_SECTION_ERROR; + + UINT32 SectionLength = GetSectionFileLength (SectionHeader); + EFI_GUID* FileName = (EFI_GUID *) ((UINT8 *) SectionHeader + sizeof (EFI_COMMON_SECTION_HEADER)); + while (((UINT8 *) FileName) < ((UINT8 *) SectionHeader + SectionLength)) { + PrintGuidToBuffer (FileName, GuidBuffer, sizeof (GuidBuffer), TRUE); + printf ("%s ", GuidBuffer); + PrintGuidName (GuidBuffer); + printf ("\n"); + FileName++; + } + + return EFI_SUCCESS; +} + STATIC EFI_STATUS PrintFileInfo ( @@ -1339,6 +1394,25 @@ Returns: break; } + if (!CompareGuid ( + &FileHeader->Name, + &gPeiAprioriFileNameGuid + )) + { + printf("\n"); + printf("PEI APRIORI FILE:\n"); + return PrintAprioriFile (FileHeader); + } + if (!CompareGuid ( + &FileHeader->Name, + &gAprioriGuid + )) + { + printf("\n"); + printf("DXE APRIORI FILE:\n"); + return PrintAprioriFile (FileHeader); + } + return EFI_SUCCESS; } -- 2.25.1 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [edk2-devel] [PATCH] BaseTools/VolInfo: Parse apriori files 2022-07-22 15:37 [PATCH] BaseTools/VolInfo: Parse apriori files Konstantin Aladyshev @ 2022-07-24 6:10 ` Bob Feng 2022-07-24 8:34 ` Konstantin Aladyshev 2022-10-01 15:26 ` Bob Feng 1 sibling, 1 reply; 5+ messages in thread From: Bob Feng @ 2022-07-24 6:10 UTC (permalink / raw) To: devel@edk2.groups.io, aladyshev22@gmail.com; +Cc: Gao, Liming, Chen, Christine Hi Konstantin, Could you update the copyright in VolInfo.c? Thanks, Bob -----Original Message----- From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Konstantin Aladyshev Sent: Friday, July 22, 2022 11:38 PM To: devel@edk2.groups.io Cc: Feng, Bob C <bob.c.feng@intel.com>; Gao, Liming <gaoliming@byosoft.com.cn>; Chen, Christine <yuwei.chen@intel.com>; Konstantin Aladyshev <aladyshev22@gmail.com> Subject: [edk2-devel] [PATCH] BaseTools/VolInfo: Parse apriori files Output file GUIDs from the DXE and PEI apriori files. Signed-off-by: Konstantin Aladyshev <aladyshev22@gmail.com> --- BaseTools/Source/C/VolInfo/VolInfo.c | 74 ++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) diff --git a/BaseTools/Source/C/VolInfo/VolInfo.c b/BaseTools/Source/C/VolInfo/VolInfo.c index 2d7c6212b3..28c6806cf0 100644 --- a/BaseTools/Source/C/VolInfo/VolInfo.c +++ b/BaseTools/Source/C/VolInfo/VolInfo.c @@ -43,6 +43,8 @@ SPDX-License-Identifier: BSD-2-Clause-Patent // EFI_GUID gEfiCrc32GuidedSectionExtractionProtocolGuid = EFI_CRC32_GUIDED_SECTION_EXTRACTION_PROTOCOL_GUID;+EFI_GUID gPeiAprioriFileNameGuid = { 0x1b45cc0a, 0x156a, 0x428a, { 0XAF, 0x62, 0x49, 0x86, 0x4d, 0xa0, 0xe6, 0xe6 }};+EFI_GUID gAprioriGuid = { 0xFC510EE7, 0xFFDC, 0x11D4, { 0xBD, 0x41, 0x00, 0x80, 0xC7, 0x3C, 0x88, 0x81 }}; #define UTILITY_MAJOR_VERSION 1 #define UTILITY_MINOR_VERSION 0@@ -107,6 +109,12 @@ ReadHeader ( OUT BOOLEAN *ErasePolarity ); +STATIC+EFI_STATUS+PrintAprioriFile (+ EFI_FFS_FILE_HEADER *FileHeader+ );+ STATIC EFI_STATUS PrintFileInfo (@@ -1083,6 +1091,53 @@ Returns: return EFI_SUCCESS; } +STATIC+EFI_STATUS+PrintAprioriFile (+ EFI_FFS_FILE_HEADER *FileHeader+ )+/*++++Routine Description:++ Print GUIDs from the APRIORI file++Arguments:++ FileHeader - The file header++Returns:++ EFI_SUCCESS - The APRIORI file was parsed correctly+ EFI_SECTION_ERROR - Problem with file parsing++--*/+{+ UINT8 GuidBuffer[PRINTED_GUID_BUFFER_SIZE];+ UINT32 HeaderSize;++ HeaderSize = FvBufGetFfsHeaderSize (FileHeader);++ if (FileHeader->Type != EFI_FV_FILETYPE_FREEFORM)+ return EFI_SECTION_ERROR;++ EFI_COMMON_SECTION_HEADER* SectionHeader = (EFI_COMMON_SECTION_HEADER *) ((UINTN) FileHeader + HeaderSize);+ if (SectionHeader->Type != EFI_SECTION_RAW)+ return EFI_SECTION_ERROR;++ UINT32 SectionLength = GetSectionFileLength (SectionHeader);+ EFI_GUID* FileName = (EFI_GUID *) ((UINT8 *) SectionHeader + sizeof (EFI_COMMON_SECTION_HEADER));+ while (((UINT8 *) FileName) < ((UINT8 *) SectionHeader + SectionLength)) {+ PrintGuidToBuffer (FileName, GuidBuffer, sizeof (GuidBuffer), TRUE);+ printf ("%s ", GuidBuffer);+ PrintGuidName (GuidBuffer);+ printf ("\n");+ FileName++;+ }++ return EFI_SUCCESS;+}+ STATIC EFI_STATUS PrintFileInfo (@@ -1339,6 +1394,25 @@ Returns: break; } + if (!CompareGuid (+ &FileHeader->Name,+ &gPeiAprioriFileNameGuid+ ))+ {+ printf("\n");+ printf("PEI APRIORI FILE:\n");+ return PrintAprioriFile (FileHeader);+ }+ if (!CompareGuid (+ &FileHeader->Name,+ &gAprioriGuid+ ))+ {+ printf("\n");+ printf("DXE APRIORI FILE:\n");+ return PrintAprioriFile (FileHeader);+ }+ return EFI_SUCCESS; } -- 2.25.1 -=-=-=-=-=-= Groups.io Links: You receive all messages sent to this group. View/Reply Online (#91722): https://edk2.groups.io/g/devel/message/91722 Mute This Topic: https://groups.io/mt/92550206/1768742 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [bob.c.feng@intel.com] -=-=-=-=-=-= ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [edk2-devel] [PATCH] BaseTools/VolInfo: Parse apriori files 2022-07-24 6:10 ` [edk2-devel] " Bob Feng @ 2022-07-24 8:34 ` Konstantin Aladyshev 2022-07-24 9:23 ` Bob Feng 0 siblings, 1 reply; 5+ messages in thread From: Konstantin Aladyshev @ 2022-07-24 8:34 UTC (permalink / raw) To: Feng, Bob C; +Cc: devel@edk2.groups.io, Gao, Liming, Chen, Christine Hi, Bob! How should I update it? Should I increase a year for the Intel Corporation like this ``` Copyright (c) 1999 - 2022, Intel Corporation. All rights reserved.<BR> ``` Or should I enter my name on another string? ``` Copyright (c) 2022, Konstantin Aladyshev <aladyshev22@gmail.com><BR> ``` Best regards, Konstantin Aladyshev On Sun, Jul 24, 2022 at 9:10 AM Feng, Bob C <bob.c.feng@intel.com> wrote: > > Hi Konstantin, > > Could you update the copyright in VolInfo.c? > > Thanks, > Bob > > -----Original Message----- > From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Konstantin Aladyshev > Sent: Friday, July 22, 2022 11:38 PM > To: devel@edk2.groups.io > Cc: Feng, Bob C <bob.c.feng@intel.com>; Gao, Liming <gaoliming@byosoft.com.cn>; Chen, Christine <yuwei.chen@intel.com>; Konstantin Aladyshev <aladyshev22@gmail.com> > Subject: [edk2-devel] [PATCH] BaseTools/VolInfo: Parse apriori files > > Output file GUIDs from the DXE and PEI apriori files. > > Signed-off-by: Konstantin Aladyshev <aladyshev22@gmail.com> > --- > BaseTools/Source/C/VolInfo/VolInfo.c | 74 ++++++++++++++++++++++++++++ > 1 file changed, 74 insertions(+) > > diff --git a/BaseTools/Source/C/VolInfo/VolInfo.c b/BaseTools/Source/C/VolInfo/VolInfo.c > index 2d7c6212b3..28c6806cf0 100644 > --- a/BaseTools/Source/C/VolInfo/VolInfo.c > +++ b/BaseTools/Source/C/VolInfo/VolInfo.c > @@ -43,6 +43,8 @@ SPDX-License-Identifier: BSD-2-Clause-Patent > // EFI_GUID gEfiCrc32GuidedSectionExtractionProtocolGuid = EFI_CRC32_GUIDED_SECTION_EXTRACTION_PROTOCOL_GUID;+EFI_GUID gPeiAprioriFileNameGuid = { 0x1b45cc0a, 0x156a, 0x428a, { 0XAF, 0x62, 0x49, 0x86, 0x4d, 0xa0, 0xe6, 0xe6 }};+EFI_GUID gAprioriGuid = { 0xFC510EE7, 0xFFDC, 0x11D4, { 0xBD, 0x41, 0x00, 0x80, 0xC7, 0x3C, 0x88, 0x81 }}; #define UTILITY_MAJOR_VERSION 1 #define UTILITY_MINOR_VERSION 0@@ -107,6 +109,12 @@ ReadHeader ( > OUT BOOLEAN *ErasePolarity ); +STATIC+EFI_STATUS+PrintAprioriFile (+ EFI_FFS_FILE_HEADER *FileHeader+ );+ STATIC EFI_STATUS PrintFileInfo (@@ -1083,6 +1091,53 @@ Returns: > return EFI_SUCCESS; } +STATIC+EFI_STATUS+PrintAprioriFile (+ EFI_FFS_FILE_HEADER *FileHeader+ )+/*++++Routine Description:++ Print GUIDs from the APRIORI file++Arguments:++ FileHeader - The file header++Returns:++ EFI_SUCCESS - The APRIORI file was parsed correctly+ EFI_SECTION_ERROR - Problem with file parsing++--*/+{+ UINT8 GuidBuffer[PRINTED_GUID_BUFFER_SIZE];+ UINT32 HeaderSize;++ HeaderSize = FvBufGetFfsHeaderSize (FileHeader);++ if (FileHeader->Type != EFI_FV_FILETYPE_FREEFORM)+ return EFI_SECTION_ERROR;++ EFI_COMMON_SECTION_HEADER* SectionHeader = (EFI_COMMON_SECTION_HEADER *) ((UINTN) FileHeader + HeaderSize);+ if (SectionHeader->Type != EFI_SECTION_RAW)+ return EFI_SECTION_ERROR;++ UINT32 SectionLength = GetSectionFileLength (SectionHeader);+ EFI_GUID* FileName = (EFI_GUID *) ((UINT8 *) SectionHeader + sizeof (EFI_COMMON_SECTION_HEADER));+ while (((UINT8 *) FileName) < ((UINT8 *) SectionHeader + SectionLength)) {+ PrintGuidToBuffer (FileName, GuidBuffer, sizeof (GuidBuffer), TRUE);+ printf ("%s ", GuidBuffer);+ PrintGuidName (GuidBuffer);+ printf ("\n");+ FileName++;+ }++ return EFI_SUCCESS;+}+ STATIC EFI_STATUS PrintFileInfo (@@ -1339,6 +1394,25 @@ Returns: > break; } + if (!CompareGuid (+ &FileHeader->Name,+ &gPeiAprioriFileNameGuid+ ))+ {+ printf("\n");+ printf("PEI APRIORI FILE:\n");+ return PrintAprioriFile (FileHeader);+ }+ if (!CompareGuid (+ &FileHeader->Name,+ &gAprioriGuid+ ))+ {+ printf("\n");+ printf("DXE APRIORI FILE:\n");+ return PrintAprioriFile (FileHeader);+ }+ return EFI_SUCCESS; } -- > 2.25.1 > > > > -=-=-=-=-=-= > Groups.io Links: You receive all messages sent to this group. > View/Reply Online (#91722): https://edk2.groups.io/g/devel/message/91722 > Mute This Topic: https://groups.io/mt/92550206/1768742 > Group Owner: devel+owner@edk2.groups.io > Unsubscribe: https://edk2.groups.io/g/devel/unsub [bob.c.feng@intel.com] -=-=-=-=-=-= > > ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [edk2-devel] [PATCH] BaseTools/VolInfo: Parse apriori files 2022-07-24 8:34 ` Konstantin Aladyshev @ 2022-07-24 9:23 ` Bob Feng 0 siblings, 0 replies; 5+ messages in thread From: Bob Feng @ 2022-07-24 9:23 UTC (permalink / raw) To: devel@edk2.groups.io, aladyshev22@gmail.com; +Cc: Gao, Liming, Chen, Christine Copyright (c) 2022, Konstantin Aladyshev <aladyshev22@gmail.com><BR> Will be fine. Thanks, Bob -----Original Message----- From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Konstantin Aladyshev Sent: Sunday, July 24, 2022 4:34 PM To: Feng, Bob C <bob.c.feng@intel.com> Cc: devel@edk2.groups.io; Gao, Liming <gaoliming@byosoft.com.cn>; Chen, Christine <yuwei.chen@intel.com> Subject: Re: [edk2-devel] [PATCH] BaseTools/VolInfo: Parse apriori files Hi, Bob! How should I update it? Should I increase a year for the Intel Corporation like this ``` Copyright (c) 1999 - 2022, Intel Corporation. All rights reserved.<BR> ``` Or should I enter my name on another string? ``` Copyright (c) 2022, Konstantin Aladyshev <aladyshev22@gmail.com><BR> ``` Best regards, Konstantin Aladyshev On Sun, Jul 24, 2022 at 9:10 AM Feng, Bob C <bob.c.feng@intel.com> wrote: > > Hi Konstantin, > > Could you update the copyright in VolInfo.c? > > Thanks, > Bob > > -----Original Message----- > From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of > Konstantin Aladyshev > Sent: Friday, July 22, 2022 11:38 PM > To: devel@edk2.groups.io > Cc: Feng, Bob C <bob.c.feng@intel.com>; Gao, Liming > <gaoliming@byosoft.com.cn>; Chen, Christine <yuwei.chen@intel.com>; > Konstantin Aladyshev <aladyshev22@gmail.com> > Subject: [edk2-devel] [PATCH] BaseTools/VolInfo: Parse apriori files > > Output file GUIDs from the DXE and PEI apriori files. > > Signed-off-by: Konstantin Aladyshev <aladyshev22@gmail.com> > --- > BaseTools/Source/C/VolInfo/VolInfo.c | 74 > ++++++++++++++++++++++++++++ > 1 file changed, 74 insertions(+) > > diff --git a/BaseTools/Source/C/VolInfo/VolInfo.c > b/BaseTools/Source/C/VolInfo/VolInfo.c > index 2d7c6212b3..28c6806cf0 100644 > --- a/BaseTools/Source/C/VolInfo/VolInfo.c > +++ b/BaseTools/Source/C/VolInfo/VolInfo.c > @@ -43,6 +43,8 @@ SPDX-License-Identifier: BSD-2-Clause-Patent > // EFI_GUID gEfiCrc32GuidedSectionExtractionProtocolGuid = EFI_CRC32_GUIDED_SECTION_EXTRACTION_PROTOCOL_GUID;+EFI_GUID gPeiAprioriFileNameGuid = { 0x1b45cc0a, 0x156a, 0x428a, { 0XAF, 0x62, 0x49, 0x86, 0x4d, 0xa0, 0xe6, 0xe6 }};+EFI_GUID gAprioriGuid = { 0xFC510EE7, 0xFFDC, 0x11D4, { 0xBD, 0x41, 0x00, 0x80, 0xC7, 0x3C, 0x88, 0x81 }}; #define UTILITY_MAJOR_VERSION 1 #define UTILITY_MINOR_VERSION 0@@ -107,6 +109,12 @@ ReadHeader ( > OUT BOOLEAN *ErasePolarity ); +STATIC+EFI_STATUS+PrintAprioriFile (+ EFI_FFS_FILE_HEADER *FileHeader+ );+ STATIC EFI_STATUS PrintFileInfo (@@ -1083,6 +1091,53 @@ Returns: > return EFI_SUCCESS; } +STATIC+EFI_STATUS+PrintAprioriFile (+ EFI_FFS_FILE_HEADER *FileHeader+ )+/*++++Routine Description:++ Print GUIDs from the APRIORI file++Arguments:++ FileHeader - The file header++Returns:++ EFI_SUCCESS - The APRIORI file was parsed correctly+ EFI_SECTION_ERROR - Problem with file parsing++--*/+{+ UINT8 GuidBuffer[PRINTED_GUID_BUFFER_SIZE];+ UINT32 HeaderSize;++ HeaderSize = FvBufGetFfsHeaderSize (FileHeader);++ if (FileHeader->Type != EFI_FV_FILETYPE_FREEFORM)+ return EFI_SECTION_ERROR;++ EFI_COMMON_SECTION_HEADER* SectionHeader = (EFI_COMMON_SECTION_HEADER *) ((UINTN) FileHeader + HeaderSize);+ if (SectionHeader->Type != EFI_SECTION_RAW)+ return EFI_SECTION_ERROR;++ UINT32 SectionLength = GetSectionFileLength (SectionHeader);+ EFI_GUID* FileName = (EFI_GUID *) ((UINT8 *) SectionHeader + sizeof (EFI_COMMON_SECTION_HEADER));+ while (((UINT8 *) FileName) < ((UINT8 *) SectionHeader + SectionLength)) {+ PrintGuidToBuffer (FileName, GuidBuffer, sizeof (GuidBuffer), TRUE);+ printf ("%s ", GuidBuffer);+ PrintGuidName (GuidBuffer);+ printf ("\n");+ FileName++;+ }++ return EFI_SUCCESS;+}+ STATIC EFI_STATUS PrintFileInfo (@@ -1339,6 +1394,25 @@ Returns: > break; } + if (!CompareGuid (+ &FileHeader->Name,+ &gPeiAprioriFileNameGuid+ ))+ {+ printf("\n");+ printf("PEI APRIORI FILE:\n");+ return PrintAprioriFile (FileHeader);+ }+ if (!CompareGuid (+ &FileHeader->Name,+ &gAprioriGuid+ ))+ {+ printf("\n");+ printf("DXE APRIORI FILE:\n");+ return PrintAprioriFile (FileHeader);+ }+ return EFI_SUCCESS; } -- > 2.25.1 > > > > -=-=-=-=-=-= > Groups.io Links: You receive all messages sent to this group. > View/Reply Online (#91722): > https://edk2.groups.io/g/devel/message/91722 > Mute This Topic: https://groups.io/mt/92550206/1768742 > Group Owner: devel+owner@edk2.groups.io > Unsubscribe: https://edk2.groups.io/g/devel/unsub > [bob.c.feng@intel.com] -=-=-=-=-=-= > > ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [edk2-devel] [PATCH] BaseTools/VolInfo: Parse apriori files 2022-07-22 15:37 [PATCH] BaseTools/VolInfo: Parse apriori files Konstantin Aladyshev 2022-07-24 6:10 ` [edk2-devel] " Bob Feng @ 2022-10-01 15:26 ` Bob Feng 1 sibling, 0 replies; 5+ messages in thread From: Bob Feng @ 2022-10-01 15:26 UTC (permalink / raw) To: devel@edk2.groups.io, aladyshev22@gmail.com; +Cc: Gao, Liming, Chen, Christine Reviewed-by: Bob Feng <bob.c.feng@intel.com> -----Original Message----- From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Konstantin Aladyshev Sent: Friday, July 22, 2022 11:38 PM To: devel@edk2.groups.io Cc: Feng, Bob C <bob.c.feng@intel.com>; Gao, Liming <gaoliming@byosoft.com.cn>; Chen, Christine <yuwei.chen@intel.com>; Konstantin Aladyshev <aladyshev22@gmail.com> Subject: [edk2-devel] [PATCH] BaseTools/VolInfo: Parse apriori files Output file GUIDs from the DXE and PEI apriori files. Signed-off-by: Konstantin Aladyshev <aladyshev22@gmail.com> --- BaseTools/Source/C/VolInfo/VolInfo.c | 74 ++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) diff --git a/BaseTools/Source/C/VolInfo/VolInfo.c b/BaseTools/Source/C/VolInfo/VolInfo.c index 2d7c6212b3..28c6806cf0 100644 --- a/BaseTools/Source/C/VolInfo/VolInfo.c +++ b/BaseTools/Source/C/VolInfo/VolInfo.c @@ -43,6 +43,8 @@ SPDX-License-Identifier: BSD-2-Clause-Patent // EFI_GUID gEfiCrc32GuidedSectionExtractionProtocolGuid = EFI_CRC32_GUIDED_SECTION_EXTRACTION_PROTOCOL_GUID;+EFI_GUID gPeiAprioriFileNameGuid = { 0x1b45cc0a, 0x156a, 0x428a, { 0XAF, 0x62, 0x49, 0x86, 0x4d, 0xa0, 0xe6, 0xe6 }};+EFI_GUID gAprioriGuid = { 0xFC510EE7, 0xFFDC, 0x11D4, { 0xBD, 0x41, 0x00, 0x80, 0xC7, 0x3C, 0x88, 0x81 }}; #define UTILITY_MAJOR_VERSION 1 #define UTILITY_MINOR_VERSION 0@@ -107,6 +109,12 @@ ReadHeader ( OUT BOOLEAN *ErasePolarity ); +STATIC+EFI_STATUS+PrintAprioriFile (+ EFI_FFS_FILE_HEADER *FileHeader+ );+ STATIC EFI_STATUS PrintFileInfo (@@ -1083,6 +1091,53 @@ Returns: return EFI_SUCCESS; } +STATIC+EFI_STATUS+PrintAprioriFile (+ EFI_FFS_FILE_HEADER *FileHeader+ )+/*++++Routine Description:++ Print GUIDs from the APRIORI file++Arguments:++ FileHeader - The file header++Returns:++ EFI_SUCCESS - The APRIORI file was parsed correctly+ EFI_SECTION_ERROR - Problem with file parsing++--*/+{+ UINT8 GuidBuffer[PRINTED_GUID_BUFFER_SIZE];+ UINT32 HeaderSize;++ HeaderSize = FvBufGetFfsHeaderSize (FileHeader);++ if (FileHeader->Type != EFI_FV_FILETYPE_FREEFORM)+ return EFI_SECTION_ERROR;++ EFI_COMMON_SECTION_HEADER* SectionHeader = (EFI_COMMON_SECTION_HEADER *) ((UINTN) FileHeader + HeaderSize);+ if (SectionHeader->Type != EFI_SECTION_RAW)+ return EFI_SECTION_ERROR;++ UINT32 SectionLength = GetSectionFileLength (SectionHeader);+ EFI_GUID* FileName = (EFI_GUID *) ((UINT8 *) SectionHeader + sizeof (EFI_COMMON_SECTION_HEADER));+ while (((UINT8 *) FileName) < ((UINT8 *) SectionHeader + SectionLength)) {+ PrintGuidToBuffer (FileName, GuidBuffer, sizeof (GuidBuffer), TRUE);+ printf ("%s ", GuidBuffer);+ PrintGuidName (GuidBuffer);+ printf ("\n");+ FileName++;+ }++ return EFI_SUCCESS;+}+ STATIC EFI_STATUS PrintFileInfo (@@ -1339,6 +1394,25 @@ Returns: break; } + if (!CompareGuid (+ &FileHeader->Name,+ &gPeiAprioriFileNameGuid+ ))+ {+ printf("\n");+ printf("PEI APRIORI FILE:\n");+ return PrintAprioriFile (FileHeader);+ }+ if (!CompareGuid (+ &FileHeader->Name,+ &gAprioriGuid+ ))+ {+ printf("\n");+ printf("DXE APRIORI FILE:\n");+ return PrintAprioriFile (FileHeader);+ }+ return EFI_SUCCESS; } -- 2.25.1 -=-=-=-=-=-= Groups.io Links: You receive all messages sent to this group. View/Reply Online (#91722): https://edk2.groups.io/g/devel/message/91722 Mute This Topic: https://groups.io/mt/92550206/1768742 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [bob.c.feng@intel.com] -=-=-=-=-=-= ^ permalink raw reply related [flat|nested] 5+ messages in thread
end of thread, other threads:[~2022-10-01 15:27 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2022-07-22 15:37 [PATCH] BaseTools/VolInfo: Parse apriori files Konstantin Aladyshev 2022-07-24 6:10 ` [edk2-devel] " Bob Feng 2022-07-24 8:34 ` Konstantin Aladyshev 2022-07-24 9:23 ` Bob Feng 2022-10-01 15:26 ` Bob Feng
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox