Lines Matching +full:multi +full:- +full:touch
1 /*-
38 #include "efi-osdep.h"
40 #include "uefi-dplib.h"
46 * hash a11928f3310518ab1c6fd34e8d0fdbb72de9602c 2017-Mar-01
55 The only place where multi-instance device paths are supported is in
56 environment varibles. Multi-instance device paths should never be placed
59 Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>
63 http://opensource.org/licenses/bsd-license.php.
71 // Template for an end-of-device path node.
123 return ((UINTN) DevicePath - (UINTN) Start) + DevicePathNodeLength (DevicePath); in GetDevicePathSize()
159 // Validate the input size big enough to touch the first node. in IsDevicePathValid()
171 if (NodeLength > MAX_UINTN - Size) { in IsDevicePathValid()
177 // Validate next node before touch it. in IsDevicePathValid()
179 if (Size > MaxSize - END_DEVICE_PATH_LENGTH ) { in IsDevicePathValid()
216 return ((const EFI_DEVICE_PATH_PROTOCOL *)(Node))->Type; in DevicePathType()
239 return ((const EFI_DEVICE_PATH_PROTOCOL *)(Node))->SubType; in DevicePathSubType()
243 Returns the 16-bit Length field of a device path node.
245 Returns the 16-bit Length field of the device path node specified by Node.
246 Node is not required to be aligned on a 16-bit boundary, so it is recommended
254 @return The 16-bit Length field of the device path node specified by Node.
264 return ((const EFI_DEVICE_PATH_PROTOCOL *)Node)->Length[0] | in DevicePathNodeLength()
265 (((const EFI_DEVICE_PATH_PROTOCOL *)Node)->Length[1] << 8); in DevicePathNodeLength()
356 END_DEVICE_PATH_LENGTH. Node is not required to be aligned on a 16-bit boundary,
380 a 16-bit boundary, so it is recommended that a function such as WriteUnaligned16()
402 // return WriteUnaligned16 ((UINT16 *)&((EFI_DEVICE_PATH_PROTOCOL *)(Node))->Length[0], (UINT16)(L… in SetDevicePathNodeLength()
403 le16enc(&((EFI_DEVICE_PATH_PROTOCOL *)(Node))->Length[0], (UINT16)(Length)); in SetDevicePathNodeLength()
420 @param NodeSubType The device node sub-type for the new device node.
445 DevicePath->Type = NodeType; in CreateDeviceNode()
446 DevicePath->SubType = NodeSubType; in CreateDeviceNode()
496 to a copy of FirstDevicePath in a newly allocated buffer. Only the end-of-device-path
501 SecondDevicePath are NULL, then a copy of an end-of-device-path is returned.
513 … Or a copy an end-of-device-path if both FirstDevicePath and SecondDevicePath are NULL.
550 Size = Size1 + Size2 - END_DEVICE_PATH_LENGTH; in AppendDevicePath()
560 (Size1 - END_DEVICE_PATH_LENGTH)); in AppendDevicePath()
572 in an allocated buffer. The end-of-device-path device node is moved after the
575 If DevicePath is NULL then a copy of DevicePathNode, followed by an end-of-device
577 If both DevicePathNode and DevicePath are NULL then a copy of an end-of-device-path
589 A copy of DevicePathNode followed by an end-of-device-path node
591 A copy of an end-of-device-path node if both FirstDevicePath