/** @file\r
Locate handle functions\r
\r
- Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved.<BR>\r
- This program and the accompanying materials are licensed and made available \r
- under the terms and conditions of the BSD License which accompanies this \r
- distribution. The full text of the license may be found at \r
- http://opensource.org/licenses/bsd-license.php \r
+ Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved.<BR>\r
+ This program and the accompanying materials are licensed and made available\r
+ under the terms and conditions of the BSD License which accompanies this\r
+ distribution. The full text of the license may be found at\r
+ http://opensource.org/licenses/bsd-license.php\r
\r
- THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
- WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
+ THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
\r
**/\r
\r
PROTOCOL_NOTIFY *ProtNotify;\r
IHANDLE *Handle;\r
\r
- if (Interface == NULL) {\r
+ if ((Interface == NULL) || (Protocol == NULL)) {\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
- if (Protocol == NULL) {\r
- return EFI_NOT_FOUND;\r
- }\r
-\r
*Interface = NULL;\r
Status = EFI_SUCCESS;\r
\r
break;\r
\r
case ByRegisterNotify:\r
+ GetNext = SmmGetNextLocateByRegisterNotify;\r
//\r
// Must have SearchKey for locate ByRegisterNotify\r
//\r
if (SearchKey == NULL) {\r
Status = EFI_INVALID_PARAMETER;\r
- break;\r
}\r
- GetNext = SmmGetNextLocateByRegisterNotify;\r
break;\r
\r
case ByProtocol:\r
*BufferSize = ResultSize;\r
\r
if (SearchType == ByRegisterNotify && !EFI_ERROR(Status)) {\r
+ ASSERT (SearchKey != NULL);\r
//\r
// If this is a search by register notify and a handle was\r
// returned, update the register notification position\r
@retval EFI_NOT_FOUND No handles match the search.\r
@retval EFI_OUT_OF_RESOURCES There is not enough pool memory to store the\r
matching results.\r
- @retval EFI_INVALID_PARAMETER One or more paramters are not valid.\r
+ @retval EFI_INVALID_PARAMETER One or more parameters are not valid.\r
\r
**/\r
EFI_STATUS\r