]> git.proxmox.com Git - mirror_edk2.git/blobdiff - SecurityPkg/UserIdentification/PwdCredentialProviderDxe/PwdCredentialProvider.h
SecurityPkg: Remove code under UserIdentification folder.
[mirror_edk2.git] / SecurityPkg / UserIdentification / PwdCredentialProviderDxe / PwdCredentialProvider.h
diff --git a/SecurityPkg/UserIdentification/PwdCredentialProviderDxe/PwdCredentialProvider.h b/SecurityPkg/UserIdentification/PwdCredentialProviderDxe/PwdCredentialProvider.h
deleted file mode 100644 (file)
index fd78254..0000000
+++ /dev/null
@@ -1,374 +0,0 @@
-/** @file\r
-  Password Credential Provider driver header file.\r
-\r
-Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved.<BR>\r
-This program and the accompanying materials\r
-are licensed and made available under the terms and conditions of the BSD License\r
-which accompanies this 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
-\r
-**/\r
-\r
-#ifndef _PASSWORD_CREDENTIAL_PROVIDER_H_\r
-#define _PASSWORD_CREDENTIAL_PROVIDER_H_\r
-\r
-#include <Uefi.h>\r
-\r
-#include <Guid/GlobalVariable.h>\r
-\r
-#include <Protocol/HiiConfigAccess.h>\r
-#include <Protocol/UserCredential2.h>\r
-#include <Protocol/UserManager.h>\r
-\r
-#include <Library/UefiRuntimeServicesTableLib.h>\r
-#include <Library/UefiBootServicesTableLib.h>\r
-#include <Library/MemoryAllocationLib.h>\r
-#include <Library/BaseMemoryLib.h>\r
-#include <Library/DevicePathLib.h>\r
-#include <Library/DebugLib.h>\r
-#include <Library/UefiLib.h>\r
-#include <Library/PrintLib.h>\r
-#include <Library/HiiLib.h>\r
-#include <Library/BaseCryptLib.h>\r
-\r
-#include "PwdCredentialProviderData.h"\r
-\r
-extern UINT8      PwdCredentialProviderStrings[];\r
-extern UINT8      PwdCredentialProviderVfrBin[];\r
-\r
-#define PASSWORD_TABLE_INC  16\r
-#define CREDENTIAL_LEN      20\r
-\r
-//\r
-// Password credential information.\r
-//\r
-typedef struct {\r
-  EFI_USER_INFO_IDENTIFIER  UserId;\r
-  CHAR8                     Password[CREDENTIAL_LEN];\r
-} PASSWORD_INFO;\r
-\r
-//\r
-// Password credential table.\r
-//\r
-typedef struct {\r
-  UINTN         Count;\r
-  UINTN         MaxCount;\r
-  UINTN         ValidIndex;\r
-  PASSWORD_INFO UserInfo[1];\r
-} CREDENTIAL_TABLE;\r
-\r
-//\r
-// The user information on the password provider.\r
-//\r
-typedef struct {\r
-  UINTN                         Count;\r
-  EFI_USER_INFO                 *Info[1];\r
-} PASSWORD_CREDENTIAL_INFO;\r
-\r
-///\r
-/// HII specific Vendor Device Path definition.\r
-///\r
-typedef struct {\r
-  VENDOR_DEVICE_PATH        VendorDevicePath;\r
-  EFI_DEVICE_PATH_PROTOCOL  End;\r
-} HII_VENDOR_DEVICE_PATH;\r
-\r
-#define PWD_PROVIDER_SIGNATURE  SIGNATURE_32 ('P', 'W', 'D', 'P')\r
-\r
-typedef struct {\r
-  UINTN                           Signature;\r
-  EFI_HANDLE                      DriverHandle;\r
-  EFI_HII_HANDLE                  HiiHandle;\r
-  //\r
-  // Produced protocol.\r
-  //\r
-  EFI_HII_CONFIG_ACCESS_PROTOCOL  ConfigAccess;\r
-} PWD_PROVIDER_CALLBACK_INFO;\r
-\r
-\r
-/**\r
-  Enroll a user on a credential provider.\r
-\r
-  This function enrolls a user on this credential provider. If the user exists on\r
-  this credential provider, update the user information on this credential provider;\r
-  otherwise delete the user information on credential provider.\r
-\r
-  @param[in] This                Points to this instance of EFI_USER_CREDENTIAL2_PROTOCOL.\r
-  @param[in] User                The user profile to enroll.\r
-\r
-  @retval EFI_SUCCESS            User profile was successfully enrolled.\r
-  @retval EFI_ACCESS_DENIED      Current user profile does not permit enrollment on the\r
-                                 user profile handle. Either the user profile cannot enroll\r
-                                 on any user profile or cannot enroll on a user profile\r
-                                 other than the current user profile.\r
-  @retval EFI_UNSUPPORTED        This credential provider does not support enrollment in\r
-                                 the pre-OS.\r
-  @retval EFI_DEVICE_ERROR       The new credential could not be created because of a device\r
-                                 error.\r
-  @retval EFI_INVALID_PARAMETER  User does not refer to a valid user profile handle.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-CredentialEnroll (\r
-  IN CONST  EFI_USER_CREDENTIAL2_PROTOCOL       *This,\r
-  IN        EFI_USER_PROFILE_HANDLE             User\r
-  );\r
-\r
-/**\r
-  Returns the user interface information used during user identification.\r
-\r
-  This function returns information about the form used when interacting with the\r
-  user during user identification. The form is the first enabled form in the form-set\r
-  class EFI_HII_USER_CREDENTIAL_FORMSET_GUID installed on the HII handle HiiHandle. If\r
-  the user credential provider does not require a form to identify the user, then this\r
-  function should return EFI_NOT_FOUND.\r
-\r
-  @param[in]  This       Points to this instance of the EFI_USER_CREDENTIAL2_PROTOCOL.\r
-  @param[out] Hii        On return, holds the HII database handle.\r
-  @param[out] FormSetId  On return, holds the identifier of the form set which contains\r
-                         the form used during user identification.\r
-  @param[out] FormId     On return, holds the identifier of the form used during user\r
-                         identification.\r
-\r
-  @retval EFI_SUCCESS            Form returned successfully.\r
-  @retval EFI_NOT_FOUND          Form not returned.\r
-  @retval EFI_INVALID_PARAMETER  Hii is NULL or FormSetId is NULL or FormId is NULL.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-CredentialForm (\r
-  IN CONST  EFI_USER_CREDENTIAL2_PROTOCOL       *This,\r
-  OUT       EFI_HII_HANDLE                      *Hii,\r
-  OUT       EFI_GUID                            *FormSetId,\r
-  OUT       EFI_FORM_ID                         *FormId\r
-  );\r
-\r
-/**\r
-  Returns bitmap used to describe the credential provider type.\r
-\r
-  This optional function returns a bitmap which is less than or equal to the number\r
-  of pixels specified by Width and Height. If no such bitmap exists, then EFI_NOT_FOUND\r
-  is returned.\r
-\r
-  @param[in]      This    Points to this instance of the EFI_USER_CREDENTIAL2_PROTOCOL.\r
-  @param[in, out] Width   On entry, points to the desired bitmap width. If NULL then no\r
-                          bitmap information will be returned. On exit, points to the\r
-                          width of the bitmap returned.\r
-  @param[in, out] Height  On entry, points to the desired bitmap height. If NULL then no\r
-                          bitmap information will be returned. On exit, points to the\r
-                          height of the bitmap returned\r
-  @param[out]     Hii     On return, holds the HII database handle.\r
-  @param[out]     Image   On return, holds the HII image identifier.\r
-\r
-  @retval EFI_SUCCESS            Image identifier returned successfully.\r
-  @retval EFI_NOT_FOUND          Image identifier not returned.\r
-  @retval EFI_INVALID_PARAMETER  Hii is NULL or Image is NULL.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-CredentialTile (\r
-  IN  CONST  EFI_USER_CREDENTIAL2_PROTOCOL       *This,\r
-  IN  OUT    UINTN                               *Width,\r
-  IN  OUT    UINTN                               *Height,\r
-      OUT    EFI_HII_HANDLE                      *Hii,\r
-      OUT    EFI_IMAGE_ID                        *Image\r
-  );\r
-\r
-/**\r
-  Returns string used to describe the credential provider type.\r
-\r
-  This function returns a string which describes the credential provider. If no\r
-  such string exists, then EFI_NOT_FOUND is returned.\r
-\r
-  @param[in]  This       Points to this instance of the EFI_USER_CREDENTIAL2_PROTOCOL.\r
-  @param[out] Hii        On return, holds the HII database handle.\r
-  @param[out] String     On return, holds the HII string identifier.\r
-\r
-  @retval EFI_SUCCESS            String identifier returned successfully.\r
-  @retval EFI_NOT_FOUND          String identifier not returned.\r
-  @retval EFI_INVALID_PARAMETER  Hii is NULL or String is NULL.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-CredentialTitle (\r
-  IN CONST  EFI_USER_CREDENTIAL2_PROTOCOL       *This,\r
-  OUT       EFI_HII_HANDLE                      *Hii,\r
-  OUT       EFI_STRING_ID                       *String\r
-  );\r
-\r
-/**\r
-  Return the user identifier associated with the currently authenticated user.\r
-\r
-  This function returns the user identifier of the user authenticated by this credential\r
-  provider. This function is called after the credential-related information has been\r
-  submitted on a form OR after a call to Default() has returned that this credential is\r
-  ready to log on.\r
-\r
-  @param[in]  This           Points to this instance of the EFI_USER_CREDENTIAL2_PROTOCOL.\r
-  @param[in]  User           The user profile handle of the user profile currently being\r
-                             considered by the user identity manager. If NULL, then no user\r
-                             profile is currently under consideration.\r
-  @param[out] Identifier     On return, points to the user identifier.\r
-\r
-  @retval EFI_SUCCESS            User identifier returned successfully.\r
-  @retval EFI_NOT_READY          No user identifier can be returned.\r
-  @retval EFI_ACCESS_DENIED      The user has been locked out of this user credential.\r
-  @retval EFI_INVALID_PARAMETER  This is NULL, or Identifier is NULL.\r
-  @retval EFI_NOT_FOUND          User is not NULL, and the specified user handle can't be\r
-                                 found in user profile database\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-CredentialUser (\r
-  IN CONST  EFI_USER_CREDENTIAL2_PROTOCOL       *This,\r
-  IN        EFI_USER_PROFILE_HANDLE             User,\r
-  OUT       EFI_USER_INFO_IDENTIFIER            *Identifier\r
-  );\r
-\r
-/**\r
-  Indicate that user interface interaction has begun for the specified credential.\r
-\r
-  This function is called when a credential provider is selected by the user. If\r
-  AutoLogon returns FALSE, then the user interface will be constructed by the User\r
-  Identity Manager.\r
-\r
-  @param[in]  This       Points to this instance of the EFI_USER_CREDENTIAL2_PROTOCOL.\r
-  @param[out] AutoLogon  On return, points to the credential provider's capabilities\r
-                         after the credential provider has been selected by the user.\r
-\r
-  @retval EFI_SUCCESS            Credential provider successfully selected.\r
-  @retval EFI_INVALID_PARAMETER  AutoLogon is NULL.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-CredentialSelect (\r
-  IN  CONST  EFI_USER_CREDENTIAL2_PROTOCOL   *This,\r
-  OUT        EFI_CREDENTIAL_LOGON_FLAGS      *AutoLogon\r
-  );\r
-\r
-/**\r
-  Indicate that user interface interaction has ended for the specified credential.\r
-\r
-  This function is called when a credential provider is deselected by the user.\r
-\r
-  @param[in] This        Points to this instance of the EFI_USER_CREDENTIAL2_PROTOCOL.\r
-\r
-  @retval EFI_SUCCESS    Credential provider successfully deselected.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-CredentialDeselect (\r
-  IN CONST  EFI_USER_CREDENTIAL2_PROTOCOL       *This\r
-  );\r
-\r
-/**\r
-  Return the default logon behavior for this user credential.\r
-\r
-  This function reports the default login behavior regarding this credential provider.\r
-\r
-  @param[in]  This       Points to this instance of the EFI_USER_CREDENTIAL2_PROTOCOL.\r
-  @param[out] AutoLogon  On return, holds whether the credential provider should be used\r
-                         by default to automatically log on the user.\r
-\r
-  @retval EFI_SUCCESS            Default information successfully returned.\r
-  @retval EFI_INVALID_PARAMETER  AutoLogon is NULL.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-CredentialDefault (\r
-  IN CONST  EFI_USER_CREDENTIAL2_PROTOCOL       *This,\r
-  OUT       EFI_CREDENTIAL_LOGON_FLAGS          *AutoLogon\r
-  );\r
-\r
-/**\r
-  Return information attached to the credential provider.\r
-\r
-  This function returns user information.\r
-\r
-  @param[in]      This          Points to this instance of the EFI_USER_CREDENTIAL2_PROTOCOL.\r
-  @param[in]      UserInfo      Handle of the user information data record.\r
-  @param[out]     Info          On entry, points to a buffer of at least *InfoSize bytes. On\r
-                                exit, holds the user information. If the buffer is too small\r
-                                to hold the information, then EFI_BUFFER_TOO_SMALL is returned\r
-                                and InfoSize is updated to contain the number of bytes actually\r
-                                required.\r
-  @param[in, out] InfoSize      On entry, points to the size of Info. On return, points to the\r
-                                size of the user information.\r
-\r
-  @retval EFI_SUCCESS           Information returned successfully.\r
-  @retval EFI_BUFFER_TOO_SMALL  The size specified by InfoSize is too small to hold all of the\r
-                                user information. The size required is returned in *InfoSize.\r
-  @retval EFI_INVALID_PARAMETER Info is NULL or InfoSize is NULL.\r
-  @retval EFI_NOT_FOUND         The specified UserInfo does not refer to a valid user info handle.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-CredentialGetInfo (\r
-  IN CONST  EFI_USER_CREDENTIAL2_PROTOCOL       *This,\r
-  IN        EFI_USER_INFO_HANDLE                UserInfo,\r
-  OUT       EFI_USER_INFO                       *Info,\r
-  IN OUT    UINTN                               *InfoSize\r
-  );\r
-\r
-\r
-/**\r
-  Enumerate all of the user informations on the credential provider.\r
-\r
-  This function returns the next user information record. To retrieve the first user\r
-  information record handle, point UserInfo at a NULL. Each subsequent call will retrieve\r
-  another user information record handle until there are no more, at which point UserInfo\r
-  will point to NULL.\r
-\r
-  @param[in]      This     Points to this instance of the EFI_USER_CREDENTIAL2_PROTOCOL.\r
-  @param[in, out] UserInfo On entry, points to the previous user information handle or NULL\r
-                           to start enumeration. On exit, points to the next user information\r
-                           handle or NULL if there is no more user information.\r
-\r
-  @retval EFI_SUCCESS            User information returned.\r
-  @retval EFI_NOT_FOUND          No more user information found.\r
-  @retval EFI_INVALID_PARAMETER  UserInfo is NULL.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-CredentialGetNextInfo (\r
-  IN CONST  EFI_USER_CREDENTIAL2_PROTOCOL       *This,\r
-  IN OUT    EFI_USER_INFO_HANDLE                *UserInfo\r
-  );\r
-\r
-/**\r
-  Delete a user on this credential provider.\r
-\r
-  This function deletes a user on this credential provider.\r
-\r
-  @param[in]     This            Points to this instance of the EFI_USER_CREDENTIAL2_PROTOCOL.\r
-  @param[in]     User            The user profile handle to delete.\r
-\r
-  @retval EFI_SUCCESS            User profile was successfully deleted.\r
-  @retval EFI_ACCESS_DENIED      Current user profile does not permit deletion on the user profile handle.\r
-                                 Either the user profile cannot delete on any user profile or cannot delete\r
-                                 on a user profile other than the current user profile.\r
-  @retval EFI_UNSUPPORTED        This credential provider does not support deletion in the pre-OS.\r
-  @retval EFI_DEVICE_ERROR       The new credential could not be deleted because of a device error.\r
-  @retval EFI_INVALID_PARAMETER  User does not refer to a valid user profile handle.\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-CredentialDelete (\r
-  IN CONST  EFI_USER_CREDENTIAL2_PROTOCOL       *This,\r
-  IN        EFI_USER_PROFILE_HANDLE             User\r
-  );\r
-\r
-#endif\r