Signed-off-by: Michael Kinney <michael.d.kinney@intel.com>
Reviewed-by: Jaben Carsey <Jaben.carsey@intel.com>
1) ShellPkg/Library/UefiHandleParsingLib
a. UefiHandleParsingLib.c – ConvertHandleToHandleIndex() and ConvertHandleIndexToHandle()
i. Update to work correctly when handles are destroyed due to driver disconnect operations. Same handle index is never reused.
b. UefiHandleParsingLib.c – ParseHandleDatabaseByRelationshipWithType() and ParseHandleDatabaseForChildControllers()
i. Expand to handle Service Binding Protocol usage such as Network stack.
2) ShellPkg/Library/UefiShellDriver1CommandsLib
a. DevTree.c – Fix bug where the same handle is shown more than once.
b. Dh.c – Fix use of GetDriverName() and GetDriverImageName(). The status returned must always be evaluated.
c. Disconnect.c – Remove requirement that a handle being disconnected must support Device Path Protocol. This prevents driver model handles without device paths from being disconnected (i.e. Network Stack)
d. OpenInfo.c – Fix bug when showing open info about a ControllerHandle that has been destroyed due to a disconnect or an unload operation.
e. UefiShellDriver1CommandsLib.uni – Fix “drivers” command formatting when handle indexes have more than 2 characters.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13786 6f19259b-4bc3-4df7-8a09-765794883524
This indirectly updates the DH command since it will automatically call the new function.
signed-off-by: jcarsey
reviewed-by: leegrosenbaum
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12922 6f19259b-4bc3-4df7-8a09-765794883524
This adds lots of pointer verification with ASSERTs only used when the condition should be impossible and never for memory allocation.
signed-off-by: jcarsey
reviewed-by: geekboy15a
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12523 6f19259b-4bc3-4df7-8a09-765794883524