SecurityPkg: Clean up source files
1. Do not use tab characters 2. No trailing white space in one line 3. All files must end with CRLF Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Liming Gao <liming.gao@intel.com>
This commit is contained in:
@@ -1,13 +1,13 @@
|
||||
/** @file
|
||||
Usb Credential Provider driver implemenetation.
|
||||
|
||||
Copyright (c) 2009 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||
This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions of the BSD License
|
||||
which accompanies this distribution. The full text of the license may be found at
|
||||
|
||||
Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions of the BSD License
|
||||
which accompanies this distribution. The full text of the license may be found at
|
||||
http://opensource.org/licenses/bsd-license.php
|
||||
|
||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||
|
||||
**/
|
||||
@@ -78,7 +78,7 @@ ExpandTableSize (
|
||||
sizeof (CREDENTIAL_TABLE) - sizeof (USB_INFO) +
|
||||
Count * sizeof (USB_INFO)
|
||||
);
|
||||
ASSERT (NewTable != NULL);
|
||||
ASSERT (NewTable != NULL);
|
||||
|
||||
NewTable->MaxCount = Count;
|
||||
NewTable->Count = mUsbTable->Count;
|
||||
@@ -87,8 +87,8 @@ ExpandTableSize (
|
||||
// Copy old entries.
|
||||
//
|
||||
CopyMem (
|
||||
&NewTable->UserInfo,
|
||||
&mUsbTable->UserInfo,
|
||||
&NewTable->UserInfo,
|
||||
&mUsbTable->UserInfo,
|
||||
mUsbTable->Count * sizeof (USB_INFO)
|
||||
);
|
||||
FreePool (mUsbTable);
|
||||
@@ -100,8 +100,8 @@ ExpandTableSize (
|
||||
Add, update or delete info in table, and sync with NV variable.
|
||||
|
||||
@param[in] Index The index of the password in table. If index is found in
|
||||
table, update the info, else add the into to table.
|
||||
@param[in] Info The new credential info to add into table. If Info is NULL,
|
||||
table, update the info, else add the into to table.
|
||||
@param[in] Info The new credential info to add into table. If Info is NULL,
|
||||
delete the info by Index.
|
||||
|
||||
@retval EFI_INVALID_PARAMETER Info is NULL when save the info.
|
||||
@@ -117,7 +117,7 @@ ModifyTable (
|
||||
{
|
||||
EFI_STATUS Status;
|
||||
USB_INFO *NewUsbInfo;
|
||||
|
||||
|
||||
NewUsbInfo = NULL;
|
||||
if (Index < mUsbTable->Count) {
|
||||
if (Info == NULL) {
|
||||
@@ -127,7 +127,7 @@ ModifyTable (
|
||||
mUsbTable->Count--;
|
||||
if (Index != mUsbTable->Count) {
|
||||
NewUsbInfo = &mUsbTable->UserInfo[mUsbTable->Count];
|
||||
}
|
||||
}
|
||||
} else {
|
||||
//
|
||||
// Update the specified entry.
|
||||
@@ -190,9 +190,9 @@ InitCredentialTable (
|
||||
VarSize = 0;
|
||||
Var = NULL;
|
||||
Status = gRT->GetVariable (
|
||||
L"UsbCredential",
|
||||
&gUsbCredentialProviderGuid,
|
||||
NULL,
|
||||
L"UsbCredential",
|
||||
&gUsbCredentialProviderGuid,
|
||||
NULL,
|
||||
&VarSize,
|
||||
Var
|
||||
);
|
||||
@@ -202,9 +202,9 @@ InitCredentialTable (
|
||||
return EFI_OUT_OF_RESOURCES;
|
||||
}
|
||||
Status = gRT->GetVariable (
|
||||
L"UsbCredential",
|
||||
&gUsbCredentialProviderGuid,
|
||||
NULL,
|
||||
L"UsbCredential",
|
||||
&gUsbCredentialProviderGuid,
|
||||
NULL,
|
||||
&VarSize,
|
||||
Var
|
||||
);
|
||||
@@ -212,13 +212,13 @@ InitCredentialTable (
|
||||
if (EFI_ERROR (Status) && (Status != EFI_NOT_FOUND)) {
|
||||
return Status;
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Init Usb credential table.
|
||||
//
|
||||
mUsbTable = AllocateZeroPool (
|
||||
sizeof (CREDENTIAL_TABLE) - sizeof (USB_INFO) +
|
||||
USB_TABLE_INC * sizeof (USB_INFO) +
|
||||
USB_TABLE_INC * sizeof (USB_INFO) +
|
||||
VarSize
|
||||
);
|
||||
if (mUsbTable == NULL) {
|
||||
@@ -306,7 +306,7 @@ GetFileData (
|
||||
if (EFI_ERROR (Status)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
|
||||
Status = SimpleFileSystem->OpenVolume (
|
||||
SimpleFileSystem,
|
||||
&RootFs
|
||||
@@ -314,7 +314,7 @@ GetFileData (
|
||||
if (EFI_ERROR (Status)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
|
||||
Status = RootFs->Open (
|
||||
RootFs,
|
||||
&FileHandle,
|
||||
@@ -324,7 +324,7 @@ GetFileData (
|
||||
);
|
||||
if (!EFI_ERROR (Status)) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -335,7 +335,7 @@ GetFileData (
|
||||
Status = EFI_NOT_FOUND;
|
||||
goto Done;
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Figure out how big the file is.
|
||||
//
|
||||
@@ -352,7 +352,7 @@ GetFileData (
|
||||
goto Done;
|
||||
}
|
||||
|
||||
FileInfo = AllocateZeroPool (ScratchBufferSize);
|
||||
FileInfo = AllocateZeroPool (ScratchBufferSize);
|
||||
if (FileInfo == NULL) {
|
||||
DEBUG ((DEBUG_ERROR, "Can not allocate enough memory for the token file!\n"));
|
||||
Status = EFI_OUT_OF_RESOURCES;
|
||||
@@ -370,18 +370,18 @@ GetFileData (
|
||||
Status = EFI_DEVICE_ERROR;
|
||||
goto Done;
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Allocate a buffer for the file.
|
||||
//
|
||||
*BufferSize = (UINT32) FileInfo->FileSize;
|
||||
*Buffer = AllocateZeroPool (*BufferSize);
|
||||
*Buffer = AllocateZeroPool (*BufferSize);
|
||||
if (*Buffer == NULL) {
|
||||
DEBUG ((DEBUG_ERROR, "Can not allocate a buffer for the file!\n"));
|
||||
Status = EFI_OUT_OF_RESOURCES;
|
||||
goto Done;
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Load file into the allocated memory.
|
||||
//
|
||||
@@ -392,7 +392,7 @@ GetFileData (
|
||||
Status = EFI_DEVICE_ERROR;
|
||||
goto Done;
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Close file.
|
||||
//
|
||||
@@ -416,13 +416,13 @@ Done:
|
||||
/**
|
||||
Hash the data to get credential.
|
||||
|
||||
@param[in] Buffer Points to the data buffer
|
||||
@param[in] Buffer Points to the data buffer
|
||||
@param[in] BufferSize The size of data in buffer, in bytes.
|
||||
@param[out] Credential Points to the hashed result
|
||||
|
||||
@retval TRUE Hash the data successfully.
|
||||
@retval FALSE Failed to hash the data.
|
||||
|
||||
|
||||
**/
|
||||
BOOLEAN
|
||||
GenerateCredential (
|
||||
@@ -434,23 +434,23 @@ GenerateCredential (
|
||||
BOOLEAN Status;
|
||||
UINTN HashSize;
|
||||
VOID *Hash;
|
||||
|
||||
|
||||
HashSize = Sha1GetContextSize ();
|
||||
Hash = AllocatePool (HashSize);
|
||||
ASSERT (Hash != NULL);
|
||||
|
||||
|
||||
Status = Sha1Init (Hash);
|
||||
if (!Status) {
|
||||
goto Done;
|
||||
}
|
||||
|
||||
|
||||
Status = Sha1Update (Hash, Buffer, BufferSize);
|
||||
if (!Status) {
|
||||
goto Done;
|
||||
}
|
||||
|
||||
|
||||
Status = Sha1Final (Hash, Credential);
|
||||
|
||||
|
||||
Done:
|
||||
FreePool (Hash);
|
||||
return Status;
|
||||
@@ -464,7 +464,7 @@ Done:
|
||||
|
||||
@retval EFI_SUCCESS Read a Token successfully.
|
||||
@retval Others Fails to read a Token.
|
||||
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
GetToken (
|
||||
@@ -484,14 +484,14 @@ GetToken (
|
||||
DEBUG ((DEBUG_ERROR, "Read file %s from USB error! Status=(%r)\n", TokenFile, Status));
|
||||
return Status;
|
||||
}
|
||||
|
||||
|
||||
if (!GenerateCredential (Buffer, BufSize, Token)) {
|
||||
DEBUG ((DEBUG_ERROR, "Generate credential from read data failed!\n"));
|
||||
FreePool (Buffer);
|
||||
return EFI_SECURITY_VIOLATION;
|
||||
}
|
||||
|
||||
FreePool (Buffer);
|
||||
|
||||
FreePool (Buffer);
|
||||
return EFI_SUCCESS;
|
||||
}
|
||||
|
||||
@@ -499,16 +499,16 @@ GetToken (
|
||||
/**
|
||||
Find a user infomation record by the information record type.
|
||||
|
||||
This function searches all user information records of User from beginning
|
||||
This function searches all user information records of User from beginning
|
||||
until either the information is found or there are no more user infomation
|
||||
record. A match occurs when a Info.InfoType field matches the user information
|
||||
record type.
|
||||
|
||||
@param[in] User Points to the user profile record to search.
|
||||
@param[in] User Points to the user profile record to search.
|
||||
@param[in] InfoType The infomation type to be searched.
|
||||
@param[out] Info Points to the user info found, the caller is responsible
|
||||
to free.
|
||||
|
||||
|
||||
@retval EFI_SUCCESS Find the user information successfully.
|
||||
@retval Others Fail to find the user information.
|
||||
|
||||
@@ -525,7 +525,7 @@ FindUserInfoByType (
|
||||
UINTN UserInfoSize;
|
||||
EFI_USER_INFO_HANDLE UserInfoHandle;
|
||||
EFI_USER_MANAGER_PROTOCOL *UserManager;
|
||||
|
||||
|
||||
//
|
||||
// Find user information by information type.
|
||||
//
|
||||
@@ -588,7 +588,7 @@ FindUserInfoByType (
|
||||
if (UserInfo->InfoType == InfoType) {
|
||||
*Info = UserInfo;
|
||||
return EFI_SUCCESS;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (UserInfo != NULL) {
|
||||
@@ -611,7 +611,7 @@ InitFormBrowser (
|
||||
)
|
||||
{
|
||||
USB_PROVIDER_CALLBACK_INFO *CallbackInfo;
|
||||
|
||||
|
||||
//
|
||||
// Initialize driver private data.
|
||||
//
|
||||
@@ -619,7 +619,7 @@ InitFormBrowser (
|
||||
if (CallbackInfo == NULL) {
|
||||
return EFI_OUT_OF_RESOURCES;
|
||||
}
|
||||
|
||||
|
||||
CallbackInfo->DriverHandle = NULL;
|
||||
|
||||
//
|
||||
@@ -643,24 +643,24 @@ InitFormBrowser (
|
||||
/**
|
||||
Enroll a user on a credential provider.
|
||||
|
||||
This function enrolls a user on this credential provider. If the user exists on
|
||||
this credential provider, update the user information on this credential provider;
|
||||
This function enrolls a user on this credential provider. If the user exists on
|
||||
this credential provider, update the user information on this credential provider;
|
||||
otherwise add the user information on credential provider.
|
||||
|
||||
|
||||
@param[in] This Points to this instance of EFI_USER_CREDENTIAL2_PROTOCOL.
|
||||
@param[in] User The user profile to enroll.
|
||||
|
||||
|
||||
@retval EFI_SUCCESS User profile was successfully enrolled.
|
||||
@retval EFI_ACCESS_DENIED Current user profile does not permit enrollment on the
|
||||
user profile handle. Either the user profile cannot enroll
|
||||
on any user profile or cannot enroll on a user profile
|
||||
on any user profile or cannot enroll on a user profile
|
||||
other than the current user profile.
|
||||
@retval EFI_UNSUPPORTED This credential provider does not support enrollment in
|
||||
the pre-OS.
|
||||
@retval EFI_DEVICE_ERROR The new credential could not be created because of a device
|
||||
error.
|
||||
@retval EFI_INVALID_PARAMETER User does not refer to a valid user profile handle.
|
||||
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
@@ -681,7 +681,7 @@ CredentialEnroll (
|
||||
if ((This == NULL) || (User == NULL)) {
|
||||
return EFI_INVALID_PARAMETER;
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Get User Identifier
|
||||
//
|
||||
@@ -695,16 +695,16 @@ CredentialEnroll (
|
||||
return EFI_INVALID_PARAMETER;
|
||||
}
|
||||
|
||||
CopyMem (UsbInfo.UserId, (UINT8 *) (UserInfo + 1), sizeof (EFI_USER_INFO_IDENTIFIER));
|
||||
CopyMem (UsbInfo.UserId, (UINT8 *) (UserInfo + 1), sizeof (EFI_USER_INFO_IDENTIFIER));
|
||||
FreePool (UserInfo);
|
||||
|
||||
|
||||
//
|
||||
// Get Token and User ID to UsbInfo.
|
||||
//
|
||||
Status = GetToken (UsbInfo.Token);
|
||||
if (EFI_ERROR (Status)) {
|
||||
QuestionStr = GetStringById (STRING_TOKEN (STR_READ_USB_TOKEN_ERROR));
|
||||
PromptStr = GetStringById (STRING_TOKEN (STR_INSERT_USB_TOKEN));
|
||||
PromptStr = GetStringById (STRING_TOKEN (STR_INSERT_USB_TOKEN));
|
||||
CreatePopUp (
|
||||
EFI_LIGHTGRAY | EFI_BACKGROUND_BLUE,
|
||||
&Key,
|
||||
@@ -716,21 +716,21 @@ CredentialEnroll (
|
||||
FreePool (QuestionStr);
|
||||
FreePool (PromptStr);
|
||||
return Status;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Check whether User is ever enrolled in the provider.
|
||||
//
|
||||
//
|
||||
for (Index = 0; Index < mUsbTable->Count; Index++) {
|
||||
UserId = (UINT8 *) &mUsbTable->UserInfo[Index].UserId;
|
||||
if (CompareMem (UserId, (UINT8 *) &UsbInfo.UserId, sizeof (EFI_USER_INFO_IDENTIFIER)) == 0) {
|
||||
//
|
||||
// User already exists, update the password.
|
||||
//
|
||||
//
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Enroll the User to the provider.
|
||||
//
|
||||
@@ -748,7 +748,7 @@ CredentialEnroll (
|
||||
|
||||
This function returns information about the form used when interacting with the
|
||||
user during user identification. The form is the first enabled form in the form-set
|
||||
class EFI_HII_USER_CREDENTIAL_FORMSET_GUID installed on the HII handle HiiHandle. If
|
||||
class EFI_HII_USER_CREDENTIAL_FORMSET_GUID installed on the HII handle HiiHandle. If
|
||||
the user credential provider does not require a form to identify the user, then this
|
||||
function should return EFI_NOT_FOUND.
|
||||
|
||||
@@ -756,13 +756,13 @@ CredentialEnroll (
|
||||
@param[out] Hii On return, holds the HII database handle.
|
||||
@param[out] FormSetId On return, holds the identifier of the form set which contains
|
||||
the form used during user identification.
|
||||
@param[out] FormId On return, holds the identifier of the form used during user
|
||||
@param[out] FormId On return, holds the identifier of the form used during user
|
||||
identification.
|
||||
|
||||
|
||||
@retval EFI_SUCCESS Form returned successfully.
|
||||
@retval EFI_NOT_FOUND Form not returned.
|
||||
@retval EFI_INVALID_PARAMETER Hii is NULL or FormSetId is NULL or FormId is NULL.
|
||||
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
@@ -773,7 +773,7 @@ CredentialForm (
|
||||
OUT EFI_FORM_ID *FormId
|
||||
)
|
||||
{
|
||||
if ((This == NULL) || (Hii == NULL) ||
|
||||
if ((This == NULL) || (Hii == NULL) ||
|
||||
(FormSetId == NULL) || (FormId == NULL)) {
|
||||
return EFI_INVALID_PARAMETER;
|
||||
}
|
||||
@@ -786,22 +786,22 @@ CredentialForm (
|
||||
|
||||
This optional function returns a bitmap which is less than or equal to the number
|
||||
of pixels specified by Width and Height. If no such bitmap exists, then EFI_NOT_FOUND
|
||||
is returned.
|
||||
is returned.
|
||||
|
||||
@param[in] This Points to this instance of the EFI_USER_CREDENTIAL2_PROTOCOL.
|
||||
@param[in, out] Width On entry, points to the desired bitmap width. If NULL then no
|
||||
bitmap information will be returned. On exit, points to the
|
||||
@param[in, out] Width On entry, points to the desired bitmap width. If NULL then no
|
||||
bitmap information will be returned. On exit, points to the
|
||||
width of the bitmap returned.
|
||||
@param[in, out] Height On entry, points to the desired bitmap height. If NULL then no
|
||||
bitmap information will be returned. On exit, points to the
|
||||
bitmap information will be returned. On exit, points to the
|
||||
height of the bitmap returned.
|
||||
@param[out] Hii On return, holds the HII database handle.
|
||||
@param[out] Image On return, holds the HII image identifier.
|
||||
|
||||
@param[out] Hii On return, holds the HII database handle.
|
||||
@param[out] Image On return, holds the HII image identifier.
|
||||
|
||||
@retval EFI_SUCCESS Image identifier returned successfully.
|
||||
@retval EFI_NOT_FOUND Image identifier not returned.
|
||||
@retval EFI_INVALID_PARAMETER Hii is NULL or Image is NULL.
|
||||
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
@@ -824,16 +824,16 @@ CredentialTile (
|
||||
Returns string used to describe the credential provider type.
|
||||
|
||||
This function returns a string which describes the credential provider. If no
|
||||
such string exists, then EFI_NOT_FOUND is returned.
|
||||
such string exists, then EFI_NOT_FOUND is returned.
|
||||
|
||||
@param[in] This Points to this instance of the EFI_USER_CREDENTIAL2_PROTOCOL.
|
||||
@param[out] Hii On return, holds the HII database handle.
|
||||
@param[out] String On return, holds the HII string identifier.
|
||||
|
||||
|
||||
@retval EFI_SUCCESS String identifier returned successfully.
|
||||
@retval EFI_NOT_FOUND String identifier not returned.
|
||||
@retval EFI_INVALID_PARAMETER Hii is NULL or String is NULL.
|
||||
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
@@ -860,23 +860,23 @@ CredentialTitle (
|
||||
Return the user identifier associated with the currently authenticated user.
|
||||
|
||||
This function returns the user identifier of the user authenticated by this credential
|
||||
provider. This function is called after the credential-related information has been
|
||||
provider. This function is called after the credential-related information has been
|
||||
submitted on a form OR after a call to Default() has returned that this credential is
|
||||
ready to log on.
|
||||
|
||||
@param[in] This Points to this instance of the EFI_USER_CREDENTIAL2_PROTOCOL.
|
||||
@param[in] User The user profile handle of the user profile currently being
|
||||
@param[in] User The user profile handle of the user profile currently being
|
||||
considered by the user identity manager. If NULL, then no user
|
||||
profile is currently under consideration.
|
||||
@param[out] Identifier On return, points to the user identifier.
|
||||
|
||||
@param[out] Identifier On return, points to the user identifier.
|
||||
|
||||
@retval EFI_SUCCESS User identifier returned successfully.
|
||||
@retval EFI_NOT_READY No user identifier can be returned.
|
||||
@retval EFI_ACCESS_DENIED The user has been locked out of this user credential.
|
||||
@retval EFI_INVALID_PARAMETER This is NULL, or Identifier is NULL.
|
||||
@retval EFI_NOT_FOUND User is not NULL, and the specified user handle can't be
|
||||
found in user profile database.
|
||||
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
@@ -891,16 +891,16 @@ CredentialUser (
|
||||
EFI_USER_INFO *UserInfo;
|
||||
UINT8 *UserId;
|
||||
UINT8 *NewUserId;
|
||||
UINT8 *UserToken;
|
||||
UINT8 *UserToken;
|
||||
UINT8 ReadToken[HASHED_CREDENTIAL_LEN];
|
||||
EFI_INPUT_KEY Key;
|
||||
CHAR16 *QuestionStr;
|
||||
CHAR16 *PromptStr;
|
||||
|
||||
|
||||
if ((This == NULL) || (Identifier == NULL)) {
|
||||
return EFI_INVALID_PARAMETER;
|
||||
}
|
||||
|
||||
|
||||
if (User == NULL) {
|
||||
//
|
||||
// Verify the auto logon user, get user id by matched token.
|
||||
@@ -908,7 +908,7 @@ CredentialUser (
|
||||
if (mUsbTable->Count == 0) {
|
||||
return EFI_NOT_READY;
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// No user selected, get token first and verify the user existed in user database.
|
||||
//
|
||||
@@ -916,7 +916,7 @@ CredentialUser (
|
||||
if (EFI_ERROR (Status)) {
|
||||
return EFI_NOT_READY;
|
||||
}
|
||||
|
||||
|
||||
for (Index = 0; Index < mUsbTable->Count; Index++) {
|
||||
//
|
||||
// find the specified credential in the Usb credential database.
|
||||
@@ -929,15 +929,15 @@ CredentialUser (
|
||||
}
|
||||
}
|
||||
|
||||
return EFI_NOT_READY;
|
||||
return EFI_NOT_READY;
|
||||
}
|
||||
|
||||
//
|
||||
// User is not NULL here. Read a token, and check whether the token matches with
|
||||
// the selected user's Token. If not, try to find a token in token DB to matches
|
||||
|
||||
//
|
||||
// User is not NULL here. Read a token, and check whether the token matches with
|
||||
// the selected user's Token. If not, try to find a token in token DB to matches
|
||||
// with read token.
|
||||
//
|
||||
|
||||
//
|
||||
|
||||
Status = GetToken (ReadToken);
|
||||
if (EFI_ERROR (Status)) {
|
||||
QuestionStr = GetStringById (STRING_TOKEN (STR_READ_USB_TOKEN_ERROR));
|
||||
@@ -961,8 +961,8 @@ CredentialUser (
|
||||
Status = FindUserInfoByType (User, EFI_USER_INFO_IDENTIFIER_RECORD, &UserInfo);
|
||||
if (EFI_ERROR (Status)) {
|
||||
return EFI_NOT_FOUND;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
//
|
||||
// Check the selected user's Token with the read token.
|
||||
//
|
||||
@@ -981,12 +981,12 @@ CredentialUser (
|
||||
CopyMem (Identifier, UserId, sizeof (EFI_USER_INFO_IDENTIFIER));
|
||||
FreePool (UserInfo);
|
||||
return EFI_SUCCESS;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
FreePool (UserInfo);
|
||||
|
||||
FreePool (UserInfo);
|
||||
|
||||
return EFI_NOT_READY;
|
||||
}
|
||||
|
||||
@@ -994,17 +994,17 @@ CredentialUser (
|
||||
/**
|
||||
Indicate that user interface interaction has begun for the specified credential.
|
||||
|
||||
This function is called when a credential provider is selected by the user. If
|
||||
This function is called when a credential provider is selected by the user. If
|
||||
AutoLogon returns FALSE, then the user interface will be constructed by the User
|
||||
Identity Manager.
|
||||
Identity Manager.
|
||||
|
||||
@param[in] This Points to this instance of the EFI_USER_CREDENTIAL2_PROTOCOL.
|
||||
@param[out] AutoLogon On return, points to the credential provider's capabilities
|
||||
after the credential provider has been selected by the user.
|
||||
|
||||
@param[out] AutoLogon On return, points to the credential provider's capabilities
|
||||
after the credential provider has been selected by the user.
|
||||
|
||||
@retval EFI_SUCCESS Credential provider successfully selected.
|
||||
@retval EFI_INVALID_PARAMETER AutoLogon is NULL.
|
||||
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
@@ -1029,9 +1029,9 @@ CredentialSelect (
|
||||
This function is called when a credential provider is deselected by the user.
|
||||
|
||||
@param[in] This Points to this instance of the EFI_USER_CREDENTIAL2_PROTOCOL.
|
||||
|
||||
|
||||
@retval EFI_SUCCESS Credential provider successfully deselected.
|
||||
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
@@ -1049,15 +1049,15 @@ CredentialDeselect (
|
||||
/**
|
||||
Return the default logon behavior for this user credential.
|
||||
|
||||
This function reports the default login behavior regarding this credential provider.
|
||||
This function reports the default login behavior regarding this credential provider.
|
||||
|
||||
@param[in] This Points to this instance of the EFI_USER_CREDENTIAL2_PROTOCOL.
|
||||
@param[out] AutoLogon On return, holds whether the credential provider should be used
|
||||
by default to automatically log on the user.
|
||||
|
||||
by default to automatically log on the user.
|
||||
|
||||
@retval EFI_SUCCESS Default information successfully returned.
|
||||
@retval EFI_INVALID_PARAMETER AutoLogon is NULL.
|
||||
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
@@ -1078,24 +1078,24 @@ CredentialDefault (
|
||||
/**
|
||||
Return information attached to the credential provider.
|
||||
|
||||
This function returns user information.
|
||||
This function returns user information.
|
||||
|
||||
@param[in] This Points to this instance of the EFI_USER_CREDENTIAL2_PROTOCOL.
|
||||
@param[in] UserInfo Handle of the user information data record.
|
||||
@param[in] UserInfo Handle of the user information data record.
|
||||
@param[out] Info On entry, points to a buffer of at least *InfoSize bytes. On
|
||||
exit, holds the user information. If the buffer is too small
|
||||
to hold the information, then EFI_BUFFER_TOO_SMALL is returned
|
||||
and InfoSize is updated to contain the number of bytes actually
|
||||
required.
|
||||
@param[in, out] InfoSize On entry, points to the size of Info. On return, points to the
|
||||
size of the user information.
|
||||
|
||||
@param[in, out] InfoSize On entry, points to the size of Info. On return, points to the
|
||||
size of the user information.
|
||||
|
||||
@retval EFI_SUCCESS Information returned successfully.
|
||||
@retval EFI_BUFFER_TOO_SMALL The size specified by InfoSize is too small to hold all of the
|
||||
user information. The size required is returned in *InfoSize.
|
||||
@retval EFI_INVALID_PARAMETER Info is NULL or InfoSize is NULL.
|
||||
@retval EFI_NOT_FOUND The specified UserInfo does not refer to a valid user info handle.
|
||||
|
||||
@retval EFI_NOT_FOUND The specified UserInfo does not refer to a valid user info handle.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
@@ -1108,7 +1108,7 @@ CredentialGetInfo (
|
||||
{
|
||||
EFI_USER_INFO *CredentialInfo;
|
||||
UINTN Index;
|
||||
|
||||
|
||||
if ((This == NULL) || (InfoSize == NULL) || (Info == NULL)) {
|
||||
return EFI_INVALID_PARAMETER;
|
||||
}
|
||||
@@ -1116,7 +1116,7 @@ CredentialGetInfo (
|
||||
if ((UserInfo == NULL) || (mUsbInfoHandle == NULL)) {
|
||||
return EFI_NOT_FOUND;
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Find information handle in credential info table.
|
||||
//
|
||||
@@ -1130,12 +1130,12 @@ CredentialGetInfo (
|
||||
*InfoSize = CredentialInfo->InfoSize;
|
||||
return EFI_BUFFER_TOO_SMALL;
|
||||
}
|
||||
|
||||
CopyMem (Info, CredentialInfo, CredentialInfo->InfoSize);
|
||||
return EFI_SUCCESS;
|
||||
|
||||
CopyMem (Info, CredentialInfo, CredentialInfo->InfoSize);
|
||||
return EFI_SUCCESS;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return EFI_NOT_FOUND;
|
||||
}
|
||||
|
||||
@@ -1146,17 +1146,17 @@ CredentialGetInfo (
|
||||
This function returns the next user information record. To retrieve the first user
|
||||
information record handle, point UserInfo at a NULL. Each subsequent call will retrieve
|
||||
another user information record handle until there are no more, at which point UserInfo
|
||||
will point to NULL.
|
||||
will point to NULL.
|
||||
|
||||
@param[in] This Points to this instance of the EFI_USER_CREDENTIAL2_PROTOCOL.
|
||||
@param[in, out] UserInfo On entry, points to the previous user information handle or NULL
|
||||
to start enumeration. On exit, points to the next user information
|
||||
handle or NULL if there is no more user information.
|
||||
|
||||
|
||||
@retval EFI_SUCCESS User information returned.
|
||||
@retval EFI_NOT_FOUND No more user information found.
|
||||
@retval EFI_INVALID_PARAMETER UserInfo is NULL.
|
||||
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
@@ -1170,7 +1170,7 @@ CredentialGetNextInfo (
|
||||
UINTN InfoLen;
|
||||
UINTN Index;
|
||||
UINTN ProvStrLen;
|
||||
|
||||
|
||||
if ((This == NULL) || (UserInfo == NULL)) {
|
||||
return EFI_INVALID_PARAMETER;
|
||||
}
|
||||
@@ -1192,13 +1192,13 @@ CredentialGetNextInfo (
|
||||
InfoLen = sizeof (EFI_USER_INFO) + sizeof (EFI_GUID);
|
||||
Info = AllocateZeroPool (InfoLen);
|
||||
ASSERT (Info != NULL);
|
||||
|
||||
|
||||
Info->InfoType = EFI_USER_INFO_CREDENTIAL_PROVIDER_RECORD;
|
||||
Info->InfoSize = (UINT32) InfoLen;
|
||||
Info->InfoAttribs = EFI_USER_INFO_PROTECTED;
|
||||
CopyGuid (&Info->Credential, &gUsbCredentialProviderGuid);
|
||||
CopyGuid ((EFI_GUID *)(Info + 1), &gUsbCredentialProviderGuid);
|
||||
|
||||
|
||||
mUsbInfoHandle->Info[0] = Info;
|
||||
mUsbInfoHandle->Count++;
|
||||
|
||||
@@ -1210,14 +1210,14 @@ CredentialGetNextInfo (
|
||||
InfoLen = sizeof (EFI_USER_INFO) + ProvStrLen;
|
||||
Info = AllocateZeroPool (InfoLen);
|
||||
ASSERT (Info != NULL);
|
||||
|
||||
|
||||
Info->InfoType = EFI_USER_INFO_CREDENTIAL_PROVIDER_NAME_RECORD;
|
||||
Info->InfoSize = (UINT32) InfoLen;
|
||||
Info->InfoAttribs = EFI_USER_INFO_PROTECTED;
|
||||
CopyGuid (&Info->Credential, &gUsbCredentialProviderGuid);
|
||||
CopyMem ((UINT8*)(Info + 1), ProvNameStr, ProvStrLen);
|
||||
FreePool (ProvNameStr);
|
||||
|
||||
|
||||
mUsbInfoHandle->Info[1] = Info;
|
||||
mUsbInfoHandle->Count++;
|
||||
|
||||
@@ -1227,16 +1227,16 @@ CredentialGetNextInfo (
|
||||
InfoLen = sizeof (EFI_USER_INFO) + sizeof (EFI_GUID);
|
||||
Info = AllocateZeroPool (InfoLen);
|
||||
ASSERT (Info != NULL);
|
||||
|
||||
|
||||
Info->InfoType = EFI_USER_INFO_CREDENTIAL_TYPE_RECORD;
|
||||
Info->InfoSize = (UINT32) InfoLen;
|
||||
Info->InfoAttribs = EFI_USER_INFO_PROTECTED;
|
||||
CopyGuid (&Info->Credential, &gUsbCredentialProviderGuid);
|
||||
CopyGuid ((EFI_GUID *)(Info + 1), &gEfiUserCredentialClassSecureCardGuid);
|
||||
|
||||
|
||||
mUsbInfoHandle->Info[2] = Info;
|
||||
mUsbInfoHandle->Count++;
|
||||
|
||||
|
||||
//
|
||||
// The fourth information, Credential Provider type name info.
|
||||
//
|
||||
@@ -1245,18 +1245,18 @@ CredentialGetNextInfo (
|
||||
InfoLen = sizeof (EFI_USER_INFO) + ProvStrLen;
|
||||
Info = AllocateZeroPool (InfoLen);
|
||||
ASSERT (Info != NULL);
|
||||
|
||||
|
||||
Info->InfoType = EFI_USER_INFO_CREDENTIAL_PROVIDER_NAME_RECORD;
|
||||
Info->InfoSize = (UINT32) InfoLen;
|
||||
Info->InfoAttribs = EFI_USER_INFO_PROTECTED;
|
||||
CopyGuid (&Info->Credential, &gUsbCredentialProviderGuid);
|
||||
CopyMem ((UINT8*)(Info + 1), ProvNameStr, ProvStrLen);
|
||||
FreePool (ProvNameStr);
|
||||
|
||||
|
||||
mUsbInfoHandle->Info[3] = Info;
|
||||
mUsbInfoHandle->Count++;
|
||||
}
|
||||
|
||||
|
||||
if (*UserInfo == NULL) {
|
||||
//
|
||||
// Return the first info handle.
|
||||
@@ -1264,7 +1264,7 @@ CredentialGetNextInfo (
|
||||
*UserInfo = (EFI_USER_INFO_HANDLE) mUsbInfoHandle->Info[0];
|
||||
return EFI_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Find information handle in credential info table.
|
||||
//
|
||||
@@ -1283,7 +1283,7 @@ CredentialGetNextInfo (
|
||||
}
|
||||
Index++;
|
||||
*UserInfo = (EFI_USER_INFO_HANDLE)mUsbInfoHandle->Info[Index];
|
||||
return EFI_SUCCESS;
|
||||
return EFI_SUCCESS;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1295,15 +1295,15 @@ CredentialGetNextInfo (
|
||||
/**
|
||||
Delete a user on this credential provider.
|
||||
|
||||
This function deletes a user on this credential provider.
|
||||
This function deletes a user on this credential provider.
|
||||
|
||||
@param[in] This Points to this instance of the EFI_USER_CREDENTIAL2_PROTOCOL.
|
||||
@param[in] User The user profile handle to delete.
|
||||
|
||||
@retval EFI_SUCCESS User profile was successfully deleted.
|
||||
@retval EFI_ACCESS_DENIED Current user profile does not permit deletion on the user profile handle.
|
||||
Either the user profile cannot delete on any user profile or cannot delete
|
||||
on a user profile other than the current user profile.
|
||||
@retval EFI_ACCESS_DENIED Current user profile does not permit deletion on the user profile handle.
|
||||
Either the user profile cannot delete on any user profile or cannot delete
|
||||
on a user profile other than the current user profile.
|
||||
@retval EFI_UNSUPPORTED This credential provider does not support deletion in the pre-OS.
|
||||
@retval EFI_DEVICE_ERROR The new credential could not be deleted because of a device error.
|
||||
@retval EFI_INVALID_PARAMETER User does not refer to a valid user profile handle.
|
||||
@@ -1320,7 +1320,7 @@ CredentialDelete (
|
||||
UINT8 *UserId;
|
||||
UINT8 *NewUserId;
|
||||
UINTN Index;
|
||||
|
||||
|
||||
if ((This == NULL) || (User == NULL)) {
|
||||
return EFI_INVALID_PARAMETER;
|
||||
}
|
||||
@@ -1340,7 +1340,7 @@ CredentialDelete (
|
||||
|
||||
//
|
||||
// Find the user by user identifier in mPwdTable.
|
||||
//
|
||||
//
|
||||
for (Index = 0; Index < mUsbTable->Count; Index++) {
|
||||
UserId = (UINT8 *) &mUsbTable->UserInfo[Index].UserId;
|
||||
NewUserId = (UINT8 *) (UserInfo + 1);
|
||||
@@ -1388,7 +1388,7 @@ UsbProviderInit (
|
||||
if (EFI_ERROR (Status)) {
|
||||
return Status;
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Init Form Browser
|
||||
//
|
||||
@@ -1396,7 +1396,7 @@ UsbProviderInit (
|
||||
if (EFI_ERROR (Status)) {
|
||||
return Status;
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Install protocol interfaces for the Usb Credential Provider.
|
||||
//
|
||||
|
Reference in New Issue
Block a user