MdePkg UefiDevicePathLib: Validate before touch input buffer.
[mirror_edk2.git] / MdePkg / Library / UefiDevicePathLib / UefiDevicePathLibOptionalDevicePathProtocol.inf
1 ## @file
2 # Instance of Device Path Library based on Device Path Protocol.
3 #
4 # Device Path Library that layers on top of the UEFI 2.0 Device Path Protocol.
5 # If the DevicePathFromText/DevicePathToText protocol doesn't exist, the library
6 # uses its internal conversion logic.
7 #
8 # Copyright (c) 2013 - 2014, Intel Corporation. All rights reserved.<BR>
9 #
10 # This program and the accompanying materials
11 # are licensed and made available under the terms and conditions of the BSD License
12 # which accompanies this distribution. The full text of the license may be found at
13 # http://opensource.org/licenses/bsd-license.php.
14 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
15 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
16 #
17 #
18 ##
19
20 [Defines]
21 INF_VERSION = 0x00010005
22 BASE_NAME = UefiDevicePathLibOptionalDevicePathProtocol
23 MODULE_UNI_FILE = UefiDevicePathLibOptionalDevicePathProtocol.uni
24 FILE_GUID = 3E1C696D-FCF0-45a7-85A7-E86C2A1C1080
25 MODULE_TYPE = UEFI_DRIVER
26 VERSION_STRING = 1.0
27 LIBRARY_CLASS = DevicePathLib|DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER SMM_CORE
28
29 CONSTRUCTOR = UefiDevicePathLibOptionalDevicePathProtocolConstructor
30
31 #
32 # VALID_ARCHITECTURES = IA32 X64 IPF EBC
33 #
34
35 [Sources]
36 DevicePathUtilities.c
37 DevicePathToText.c
38 DevicePathFromText.c
39 UefiDevicePathLibOptionalDevicePathProtocol.c
40 UefiDevicePathLib.h
41
42 [Packages]
43 MdePkg/MdePkg.dec
44
45
46 [LibraryClasses]
47 BaseLib
48 UefiBootServicesTableLib
49 MemoryAllocationLib
50 DebugLib
51 BaseMemoryLib
52 PcdLib
53 PrintLib
54
55 [Guids]
56 ## SOMETIMES_CONSUMES ## GUID
57 gEfiVTUTF8Guid
58 ## SOMETIMES_CONSUMES ## GUID
59 gEfiVT100Guid
60 ## SOMETIMES_CONSUMES ## GUID
61 gEfiVT100PlusGuid
62 ## SOMETIMES_CONSUMES ## GUID
63 gEfiPcAnsiGuid
64 ## SOMETIMES_CONSUMES ## GUID
65 gEfiUartDevicePathGuid
66 ## SOMETIMES_CONSUMES ## GUID
67 gEfiSasDevicePathGuid
68 ## SOMETIMES_CONSUMES ## GUID
69 gEfiVirtualDiskGuid
70 ## SOMETIMES_CONSUMES ## GUID
71 gEfiVirtualCdGuid
72 ## SOMETIMES_CONSUMES ## GUID
73 gEfiPersistentVirtualDiskGuid
74 ## SOMETIMES_CONSUMES ## GUID
75 gEfiPersistentVirtualCdGuid
76
77 [Protocols]
78 gEfiDevicePathProtocolGuid ## SOMETIMES_CONSUMES
79 gEfiDevicePathUtilitiesProtocolGuid ## CONSUMES
80 gEfiDevicePathToTextProtocolGuid ## SOMETIMES_CONSUMES
81 gEfiDevicePathFromTextProtocolGuid ## SOMETIMES_CONSUMES
82 gEfiDebugPortProtocolGuid ## UNDEFINED
83
84 [Pcd]
85 gEfiMdePkgTokenSpaceGuid.PcdMaximumDevicePathNodeCount ## SOMETIMES_CONSUMES
86
87 [Depex.common.DXE_DRIVER, Depex.common.DXE_RUNTIME_DRIVER, Depex.common.DXE_SAL_DRIVER, Depex.common.DXE_SMM_DRIVER]
88 gEfiDevicePathUtilitiesProtocolGuid
89