You've already forked edk2-platforms
mirror of
https://github.com/Dasharo/edk2-platforms.git
synced 2026-03-06 14:51:43 -08:00
Adds a new feature package for the User Authentication feature. Cc: Dandan Bi <dandan.bi@intel.com> Cc: Liming Gao <liming.gao@intel.com> Signed-off-by: Michael Kubacki <michael.a.kubacki@intel.com> Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com>
71 lines
2.2 KiB
C
71 lines
2.2 KiB
C
/** @file
|
|
Provides services to set/verify password and return if the password is set.
|
|
|
|
Copyright (c) 2019, Intel Corporation. All rights reserved.<BR>
|
|
SPDX-License-Identifier: BSD-2-Clause-Patent
|
|
|
|
**/
|
|
|
|
#ifndef __USER_PASSWORD_LIB_H__
|
|
#define __USER_PASSWORD_LIB_H__
|
|
|
|
/**
|
|
Validate if the password is correct.
|
|
|
|
@param[in] Password The user input password.
|
|
@param[in] PasswordSize The size of Password in byte.
|
|
|
|
@retval EFI_SUCCESS The password is correct.
|
|
@retval EFI_SECURITY_VIOLATION The password is incorrect.
|
|
@retval EFI_INVALID_PARAMETER The password or size is invalid.
|
|
@retval EFI_OUT_OF_RESOURCES Insufficient resources to verify the password.
|
|
@retval EFI_ACCESS_DENIED Password retry count reach.
|
|
**/
|
|
EFI_STATUS
|
|
EFIAPI
|
|
VerifyPassword (
|
|
IN CHAR16 *Password,
|
|
IN UINTN PasswordSize
|
|
);
|
|
|
|
/**
|
|
Set a new password.
|
|
|
|
@param[in] NewPassword The user input new password.
|
|
NULL means clear password.
|
|
@param[in] NewPasswordSize The size of NewPassword in byte.
|
|
@param[in] OldPassword The user input old password.
|
|
NULL means no old password.
|
|
@param[in] OldPasswordSize The size of OldPassword in byte.
|
|
|
|
@retval EFI_SUCCESS The NewPassword is set successfully.
|
|
@retval EFI_SECURITY_VIOLATION The OldPassword is incorrect.
|
|
@retval EFI_INVALID_PARAMETER The password or size is invalid.
|
|
@retval EFI_OUT_OF_RESOURCES Insufficient resources to set the password.
|
|
@retval EFI_ACCESS_DENIED Password retry count reach.
|
|
@retval EFI_UNSUPPORTED NewPassword is not strong enough.
|
|
@retval EFI_ALREADY_STARTED NewPassword is in history.
|
|
**/
|
|
EFI_STATUS
|
|
EFIAPI
|
|
SetPassword (
|
|
IN CHAR16 *NewPassword, OPTIONAL
|
|
IN UINTN NewPasswordSize,
|
|
IN CHAR16 *OldPassword, OPTIONAL
|
|
IN UINTN OldPasswordSize
|
|
);
|
|
|
|
/**
|
|
Return if the password is set.
|
|
|
|
@retval TRUE The password is set.
|
|
@retval FALSE The password is not set.
|
|
**/
|
|
BOOLEAN
|
|
EFIAPI
|
|
IsPasswordInstalled (
|
|
VOID
|
|
);
|
|
|
|
#endif
|