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