blob: c9fc0bb15c90d788a333ff1934fa61178da173f2 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
## @file
# Provides FMP Capsule Dependency Expression support.
#
# This library validates a dependency expression, extracts a dependency
# expression from a firmware image, and evaluates a dependency expression
# against the versions of other installed Firmware Management Protocol
# instances.
#
# A dependency expression is a byte stream of opcodes, as defined by the
# FMP capsule dependency format in the UEFI Specification. EvaluateDependency()
# in this library walks this byte stream and, when it encounters a PUSH_GUID
# opcode, requires the caller to have supplied the matching FMP instance's
# ImageTypeId and Version in the FmpVersions array. If a PUSH_GUID opcode refers
# to an FMP instance that is not present in FmpVersions, the dependency expression
# evaluates to FALSE.
#
# Copyright (c) 2020, Intel Corporation. All rights reserved.<BR>
#
# SPDX-License-Identifier: BSD-2-Clause-Patent
##
[Defines]
INF_VERSION = 0x00010005
BASE_NAME = FmpDependencyLib
MODULE_UNI_FILE = FmpDependencyLib.uni
FILE_GUID = 67F55EA4-B4CF-4A08-931B-0BBCF1E0F7A3
MODULE_TYPE = BASE
VERSION_STRING = 1.0
LIBRARY_CLASS = FmpDependencyLib
[Sources]
FmpDependencyLib.c
[Packages]
MdePkg/MdePkg.dec
FmpDevicePkg/FmpDevicePkg.dec
[LibraryClasses]
BaseLib
DebugLib
BaseMemoryLib
|