.../FmpDependencyLib/FmpDependencyLib.c | 35 ++++++++ .../PrivateInclude/FmpLastAttemptStatus.h | 3 + .../EvaluateDependencyUnitTest.c | 84 ++++++++++++++++--- MdePkg/Include/Protocol/FirmwareManagement.h | 29 +++---- 4 files changed, 125 insertions(+), 26 deletions(-)
To avoid messy parsing of the Depex section of a Capsule, it would be a lot easier for everyone involved if we preceded the Capsule Depex Section with a length declaration. It provides simple bounds checking to avoid having to parse the op-codes, but in the case of a malformed depex being parsed, avoid other issues which can be messy. Syntax DECLARE_LENGTH <32-bit Length> Description Declares an 32-bit byte length of the entire dependency expression. Behaviors and Restrictions This opcode must be the first one in a dependency expression. REF: UEFI spec 2.10 Table 23.4 Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Cc: Zhiguang Liu <zhiguang.liu@intel.com> Cc: Wei6 Xu <wei6.xu@intel.com> Yi Li (2): MdePkg: Add DECLARE_LENGTH opcode of dependency expression FmpDevicePkg: Add DECLARE_LENGTH opcode of dependency expression .../FmpDependencyLib/FmpDependencyLib.c | 35 ++++++++ .../PrivateInclude/FmpLastAttemptStatus.h | 3 + .../EvaluateDependencyUnitTest.c | 84 ++++++++++++++++--- MdePkg/Include/Protocol/FirmwareManagement.h | 29 +++---- 4 files changed, 125 insertions(+), 26 deletions(-) -- 2.42.0.windows.2 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#112737): https://edk2.groups.io/g/devel/message/112737 Mute This Topic: https://groups.io/mt/103274336/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=-=-=-=-=-=-=-=-=-=-=-
Reviewed-by: Wei6 Xu <wei6.xu@intel.com> -----Original Message----- From: Li, Yi1 <yi1.li@intel.com> Sent: Wednesday, December 20, 2023 9:55 AM To: devel@edk2.groups.io Cc: Li, Yi1 <yi1.li@intel.com>; Kinney, Michael D <michael.d.kinney@intel.com>; Gao, Liming <gaoliming@byosoft.com.cn>; Liu, Zhiguang <zhiguang.liu@intel.com>; Xu, Wei6 <wei6.xu@intel.com> Subject: [PATCH V2 0/2] Add DECLARE_LENGTH opcode of dependency expression To avoid messy parsing of the Depex section of a Capsule, it would be a lot easier for everyone involved if we preceded the Capsule Depex Section with a length declaration. It provides simple bounds checking to avoid having to parse the op-codes, but in the case of a malformed depex being parsed, avoid other issues which can be messy. Syntax DECLARE_LENGTH <32-bit Length> Description Declares an 32-bit byte length of the entire dependency expression. Behaviors and Restrictions This opcode must be the first one in a dependency expression. REF: UEFI spec 2.10 Table 23.4 Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Cc: Zhiguang Liu <zhiguang.liu@intel.com> Cc: Wei6 Xu <wei6.xu@intel.com> Yi Li (2): MdePkg: Add DECLARE_LENGTH opcode of dependency expression FmpDevicePkg: Add DECLARE_LENGTH opcode of dependency expression .../FmpDependencyLib/FmpDependencyLib.c | 35 ++++++++ .../PrivateInclude/FmpLastAttemptStatus.h | 3 + .../EvaluateDependencyUnitTest.c | 84 ++++++++++++++++--- MdePkg/Include/Protocol/FirmwareManagement.h | 29 +++---- 4 files changed, 125 insertions(+), 26 deletions(-) -- 2.42.0.windows.2 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#113016): https://edk2.groups.io/g/devel/message/113016 Mute This Topic: https://groups.io/mt/103274336/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=-=-=-=-=-=-=-=-=-=-=-
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn> for this patch set. > -----邮件原件----- > 发件人: Xu, Wei6 <wei6.xu@intel.com> > 发送时间: 2024年1月2日 9:43 > 收件人: Li, Yi1 <yi1.li@intel.com>; devel@edk2.groups.io > 抄送: Kinney, Michael D <michael.d.kinney@intel.com>; Gao, Liming > <gaoliming@byosoft.com.cn>; Liu, Zhiguang <zhiguang.liu@intel.com> > 主题: RE: [PATCH V2 0/2] Add DECLARE_LENGTH opcode of dependency > expression > > Reviewed-by: Wei6 Xu <wei6.xu@intel.com> > > -----Original Message----- > From: Li, Yi1 <yi1.li@intel.com> > Sent: Wednesday, December 20, 2023 9:55 AM > To: devel@edk2.groups.io > Cc: Li, Yi1 <yi1.li@intel.com>; Kinney, Michael D > <michael.d.kinney@intel.com>; Gao, Liming <gaoliming@byosoft.com.cn>; > Liu, Zhiguang <zhiguang.liu@intel.com>; Xu, Wei6 <wei6.xu@intel.com> > Subject: [PATCH V2 0/2] Add DECLARE_LENGTH opcode of dependency > expression > > To avoid messy parsing of the Depex section of a Capsule, it would be a lot > easier for everyone involved if we preceded the Capsule Depex Section with a > length declaration. It provides simple bounds checking to avoid having to > parse the op-codes, but in the case of a malformed depex being parsed, avoid > other issues which can be messy. > > Syntax > DECLARE_LENGTH <32-bit Length> > Description > Declares an 32-bit byte length of the entire dependency expression. > Behaviors and Restrictions > This opcode must be the first one in a dependency expression. > > REF: UEFI spec 2.10 Table 23.4 > > Cc: Michael D Kinney <michael.d.kinney@intel.com> > Cc: Liming Gao <gaoliming@byosoft.com.cn> > Cc: Zhiguang Liu <zhiguang.liu@intel.com> > Cc: Wei6 Xu <wei6.xu@intel.com> > > Yi Li (2): > MdePkg: Add DECLARE_LENGTH opcode of dependency expression > FmpDevicePkg: Add DECLARE_LENGTH opcode of dependency expression > > .../FmpDependencyLib/FmpDependencyLib.c | 35 ++++++++ > .../PrivateInclude/FmpLastAttemptStatus.h | 3 + > .../EvaluateDependencyUnitTest.c | 84 > ++++++++++++++++--- > MdePkg/Include/Protocol/FirmwareManagement.h | 29 +++---- > 4 files changed, 125 insertions(+), 26 deletions(-) > > -- > 2.42.0.windows.2 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#113045): https://edk2.groups.io/g/devel/message/113045 Mute This Topic: https://groups.io/mt/103494041/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=-=-=-=-=-=-=-=-=-=-=-
Hi Liming, I created a PR and CI passed, could you help merge it? https://github.com/tianocore/edk2/pull/5210 Thanks, Yi -----Original Message----- From: gaoliming <gaoliming@byosoft.com.cn> Sent: Wednesday, January 3, 2024 8:52 AM To: Xu, Wei6 <wei6.xu@intel.com>; Li, Yi1 <yi1.li@intel.com>; devel@edk2.groups.io Cc: Kinney, Michael D <michael.d.kinney@intel.com>; Liu, Zhiguang <zhiguang.liu@intel.com> Subject: 回复: [PATCH V2 0/2] Add DECLARE_LENGTH opcode of dependency expression Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn> for this patch set. > -----邮件原件----- > 发件人: Xu, Wei6 <wei6.xu@intel.com> > 发送时间: 2024年1月2日 9:43 > 收件人: Li, Yi1 <yi1.li@intel.com>; devel@edk2.groups.io > 抄送: Kinney, Michael D <michael.d.kinney@intel.com>; Gao, Liming > <gaoliming@byosoft.com.cn>; Liu, Zhiguang <zhiguang.liu@intel.com> > 主题: RE: [PATCH V2 0/2] Add DECLARE_LENGTH opcode of dependency > expression > > Reviewed-by: Wei6 Xu <wei6.xu@intel.com> > > -----Original Message----- > From: Li, Yi1 <yi1.li@intel.com> > Sent: Wednesday, December 20, 2023 9:55 AM > To: devel@edk2.groups.io > Cc: Li, Yi1 <yi1.li@intel.com>; Kinney, Michael D > <michael.d.kinney@intel.com>; Gao, Liming <gaoliming@byosoft.com.cn>; > Liu, Zhiguang <zhiguang.liu@intel.com>; Xu, Wei6 <wei6.xu@intel.com> > Subject: [PATCH V2 0/2] Add DECLARE_LENGTH opcode of dependency > expression > > To avoid messy parsing of the Depex section of a Capsule, it would be > a lot > easier for everyone involved if we preceded the Capsule Depex Section > with a > length declaration. It provides simple bounds checking to avoid having > to parse the op-codes, but in the case of a malformed depex being > parsed, avoid > other issues which can be messy. > > Syntax > DECLARE_LENGTH <32-bit Length> > Description > Declares an 32-bit byte length of the entire dependency expression. > Behaviors and Restrictions > This opcode must be the first one in a dependency expression. > > REF: UEFI spec 2.10 Table 23.4 > > Cc: Michael D Kinney <michael.d.kinney@intel.com> > Cc: Liming Gao <gaoliming@byosoft.com.cn> > Cc: Zhiguang Liu <zhiguang.liu@intel.com> > Cc: Wei6 Xu <wei6.xu@intel.com> > > Yi Li (2): > MdePkg: Add DECLARE_LENGTH opcode of dependency expression > FmpDevicePkg: Add DECLARE_LENGTH opcode of dependency expression > > .../FmpDependencyLib/FmpDependencyLib.c | 35 ++++++++ > .../PrivateInclude/FmpLastAttemptStatus.h | 3 + > .../EvaluateDependencyUnitTest.c | 84 > ++++++++++++++++--- > MdePkg/Include/Protocol/FirmwareManagement.h | 29 +++---- > 4 files changed, 125 insertions(+), 26 deletions(-) > > -- > 2.42.0.windows.2 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#113067): https://edk2.groups.io/g/devel/message/113067 Mute This Topic: https://groups.io/mt/103499595/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=-=-=-=-=-=-=-=-=-=-=-
© 2016 - 2024 Red Hat, Inc.