]> git.proxmox.com Git - mirror_edk2.git/blobdiff - SecurityPkg/UserIdentification/UserIdentifyManagerDxe/UserIdentifyManager.h
SecurityPkg: Remove code under UserIdentification folder.
[mirror_edk2.git] / SecurityPkg / UserIdentification / UserIdentifyManagerDxe / UserIdentifyManager.h
diff --git a/SecurityPkg/UserIdentification/UserIdentifyManagerDxe/UserIdentifyManager.h b/SecurityPkg/UserIdentification/UserIdentifyManagerDxe/UserIdentifyManager.h
deleted file mode 100644 (file)
index 1c449b0..0000000
+++ /dev/null
@@ -1,413 +0,0 @@
-/** @file\r
-  The header file for User identify Manager driver.\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 _USER_IDENTIFY_MANAGER_H_\r
-#define _USER_IDENTIFY_MANAGER_H_\r
-\r
-#include <Uefi.h>\r
-\r
-#include <Guid/GlobalVariable.h>\r
-#include <Guid/MdeModuleHii.h>\r
-\r
-#include <Protocol/FormBrowser2.h>\r
-#include <Protocol/HiiDatabase.h>\r
-#include <Protocol/HiiConfigAccess.h>\r
-#include <Protocol/HiiString.h>\r
-#include <Protocol/HiiConfigRouting.h>\r
-#include <Protocol/UserCredential2.h>\r
-#include <Protocol/UserManager.h>\r
-#include <Protocol/DeferredImageLoad.h>\r
-#include <Protocol/SimpleTextOut.h>\r
-#include <Protocol/SimpleTextIn.h>\r
-#include <Protocol/SimpleTextInEx.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
-\r
-#include "UserIdentifyManagerData.h"\r
-\r
-//\r
-// This is the generated IFR binary data for each formset defined in VFR.\r
-// This data array is ready to be used as input of HiiAddPackages() to\r
-// create a packagelist.\r
-//\r
-extern UINT8                UserIdentifyManagerVfrBin[];\r
-\r
-//\r
-// This is the generated String package data for all .UNI files.\r
-// This data array is ready to be used as input of HiiAddPackages() to\r
-// create a packagelist.\r
-//\r
-extern UINT8                UserIdentifyManagerStrings[];\r
-\r
-#define   USER_NUMBER_INC           32\r
-#define   DEFAULT_PROFILE_SIZE      512\r
-#define   INFO_PAYLOAD_SIZE         64\r
-\r
-//\r
-// Credential Provider Information.\r
-//\r
-typedef struct {\r
-  UINTN                         Count;\r
-  EFI_USER_CREDENTIAL2_PROTOCOL *Provider[1];\r
-} CREDENTIAL_PROVIDER_INFO;\r
-\r
-//\r
-// Internal user profile entry.\r
-//\r
-typedef struct {\r
-  UINTN   MaxProfileSize;\r
-  UINTN   UserProfileSize;\r
-  CHAR16  UserVarName[9];\r
-  UINT8   *ProfileInfo;\r
-} USER_PROFILE_ENTRY;\r
-\r
-//\r
-// Internal user profile database.\r
-//\r
-typedef struct {\r
-  UINTN                   UserProfileNum;\r
-  UINTN                   MaxProfileNum;\r
-  EFI_USER_PROFILE_HANDLE UserProfile[1];\r
-} USER_PROFILE_DB;\r
-\r
-#define USER_MANAGER_SIGNATURE  SIGNATURE_32 ('U', 'I', 'M', 'S')\r
-\r
-typedef struct {\r
-  UINTN                           Signature;\r
-  EFI_HANDLE                      DriverHandle;\r
-  EFI_HII_HANDLE                  HiiHandle;\r
-\r
-  //\r
-  // Consumed protocol.\r
-  //\r
-  EFI_HII_DATABASE_PROTOCOL       *HiiDatabase;\r
-  EFI_HII_STRING_PROTOCOL         *HiiString;\r
-  EFI_HII_CONFIG_ROUTING_PROTOCOL *HiiConfigRouting;\r
-  EFI_FORM_BROWSER2_PROTOCOL      *FormBrowser2;\r
-\r
-  //\r
-  // Produced protocol.\r
-  //\r
-  EFI_HII_CONFIG_ACCESS_PROTOCOL  ConfigAccess;\r
-} USER_MANAGER_CALLBACK_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
-/**\r
-  Register an event notification function for the user profile changed.\r
-\r
-  @param[in]  ImageHandle     Image handle this driver.\r
-\r
-**/\r
-VOID\r
-LoadDeferredImageInit (\r
-  IN EFI_HANDLE        ImageHandle\r
-  );\r
-\r
-\r
-/**\r
-  This function creates a new user profile with only\r
-  a new user identifier attached and returns its handle.\r
-  The user profile is non-volatile, but the handle User\r
-  can change across reboots.\r
-\r
-  @param[in]   This               Protocol EFI_USER_MANAGER_PROTOCOL instance\r
-                                  pointer.\r
-  @param[out]  User               Handle of a new user profile.\r
-\r
-  @retval EFI_SUCCESS             User profile was successfully created.\r
-  @retval EFI_ACCESS_DENIED       Current user does not have sufficient permissions\r
-                                  to create a user profile.\r
-  @retval EFI_UNSUPPORTED         Creation of new user profiles is not supported.\r
-  @retval EFI_INVALID_PARAMETER   User is NULL.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-UserProfileCreate (\r
-  IN CONST  EFI_USER_MANAGER_PROTOCOL           *This,\r
-  OUT       EFI_USER_PROFILE_HANDLE             *User\r
-  );\r
-\r
-\r
-/**\r
-  Delete an existing user profile.\r
-\r
-  @param  This                    Protocol EFI_USER_MANAGER_PROTOCOL instance\r
-                                  pointer.\r
-  @param  User                    User profile handle.\r
-\r
-  @retval EFI_SUCCESS             User profile was successfully deleted.\r
-  @retval EFI_ACCESS_DENIED       Current user does not have sufficient permissions\r
-                                  to delete a user profile or there is only one\r
-                                  user profile.\r
-  @retval EFI_UNSUPPORTED         Deletion of new user profiles is not supported.\r
-  @retval EFI_INVALID_PARAMETER   User does not refer to a valid user profile.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-UserProfileDelete (\r
-  IN CONST  EFI_USER_MANAGER_PROTOCOL           *This,\r
-  IN        EFI_USER_PROFILE_HANDLE             User\r
-  );\r
-\r
-\r
-/**\r
-  Get next user profile from the user profile database.\r
-\r
-  @param[in]       This           Protocol EFI_USER_MANAGER_PROTOCOL instance\r
-                                  pointer.\r
-  @param[in, out]  User           User profile handle.\r
-\r
-  @retval EFI_SUCCESS             Next enrolled user profile successfully returned.\r
-  @retval EFI_INVALID_PARAMETER   User is NULL.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-UserProfileGetNext (\r
-  IN CONST  EFI_USER_MANAGER_PROTOCOL           *This,\r
-  IN OUT    EFI_USER_PROFILE_HANDLE             *User\r
-  );\r
-\r
-\r
-/**\r
-  This function returns the current user profile handle.\r
-\r
-  @param[in]  This                Protocol EFI_USER_MANAGER_PROTOCOL instance pointer.\r
-  @param[out]  CurrentUser        User profile handle.\r
-\r
-  @retval EFI_SUCCESS             Current user profile handle returned successfully.\r
-  @retval EFI_INVALID_PARAMETER   CurrentUser is NULL.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-UserProfileCurrent (\r
-  IN CONST  EFI_USER_MANAGER_PROTOCOL           *This,\r
-  OUT       EFI_USER_PROFILE_HANDLE             *CurrentUser\r
-  );\r
-\r
-\r
-/**\r
-  Identify the user and, if authenticated, returns the user handle and changes\r
-  the current user profile.\r
-\r
-  @param  This                    Protocol EFI_USER_MANAGER_PROTOCOL instance pointer.\r
-  @param  CurrentUser             User profile handle.\r
-\r
-  @retval EFI_SUCCESS             User was successfully identified.\r
-  @retval EFI_INVALID_PARAMETER   User is NULL.\r
-  @retval EFI_ACCESS_DENIED       User was not successfully identified.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-UserProfileIdentify (\r
-  IN CONST  EFI_USER_MANAGER_PROTOCOL           *This,\r
-  OUT       EFI_USER_PROFILE_HANDLE             *User\r
-  );\r
-\r
-\r
-/**\r
-  Find a user using a user information record.\r
-\r
-  This function searches all user profiles for the specified user information record.\r
-  The search starts with the user information record handle following UserInfo and\r
-  continues until either the information is found or there are no more user profiles.\r
-  A match occurs when the Info.InfoType field matches the user information record\r
-  type and the user information record data matches the portion of Info passed the\r
-  EFI_USER_INFO header.\r
-\r
-  @param[in]      This     Points to this instance of the EFI_USER_MANAGER_PROTOCOL.\r
-  @param[in, out] User     On entry, points to the previously returned user profile\r
-                           handle, or NULL to start searching with the first user profile.\r
-                           On return, points to the user profile handle, or NULL if not\r
-                           found.\r
-  @param[in, out] UserInfo On entry, points to the previously returned user information\r
-                           handle, or NULL to start searching with the first. On return,\r
-                           points to the user information handle of the user information\r
-                           record, or NULL if not found. Can be NULL, in which case only\r
-                           one user information record per user can be returned.\r
-  @param[in]      Info     Points to the buffer containing the user information to be\r
-                           compared to the user information record. If NULL, then only\r
-                           the user information record type is compared. If InfoSize is 0,\r
-                           then the user information record must be empty.\r
-\r
-  @param[in]      InfoSize The size of Info, in bytes.\r
-\r
-  @retval EFI_SUCCESS      User information was found. User points to the user profile handle,\r
-                           and UserInfo points to the user information handle.\r
-  @retval EFI_NOT_FOUND    User information was not found. User points to NULL and UserInfo\r
-                           points to NULL.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-UserProfileFind (\r
-  IN     CONST EFI_USER_MANAGER_PROTOCOL        *This,\r
-  IN OUT EFI_USER_PROFILE_HANDLE                *User,\r
-  IN OUT EFI_USER_INFO_HANDLE                   *UserInfo OPTIONAL,\r
-  IN     CONST EFI_USER_INFO                    *Info,\r
-  IN     UINTN                                  InfoSize\r
-  );\r
-\r
-\r
-/**\r
-  This function returns user information.\r
-\r
-  @param  This                    Protocol EFI_USER_MANAGER_PROTOCOL instance\r
-                                  pointer.\r
-  @param  User                    Handle of the user whose profile will be\r
-                                  retrieved.\r
-  @param  UserInfo                Handle of the user information data record.\r
-  @param  Info                    On entry, points to a buffer of at least\r
-                                  *InfoSize bytes.  On exit, holds the user\r
-                                  information.\r
-  @param  InfoSize                On entry, points to the size of Info. On return,\r
-                                  points to the size of the user information.\r
-\r
-  @retval EFI_SUCCESS             Information returned successfully.\r
-  @retval EFI_ACCESS_DENIED       The information about the specified user cannot\r
-                                  be accessed  by the current user.\r
-                                  EFI_BUFFER_TOO_SMALL- The number of bytes\r
-                                  specified by *InfoSize is too small to hold the\r
-                                  returned data.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-UserProfileGetInfo (\r
-  IN CONST  EFI_USER_MANAGER_PROTOCOL           *This,\r
-  IN        EFI_USER_PROFILE_HANDLE             User,\r
-  IN        EFI_USER_INFO_HANDLE                UserInfo,\r
-  OUT       EFI_USER_INFO                       *Info,\r
-  IN OUT    UINTN                               *InfoSize\r
-  );\r
-\r
-\r
-/**\r
-  This function changes user information.\r
-\r
-  @param  This                    Protocol EFI_USER_MANAGER_PROTOCOL instance\r
-                                  pointer.\r
-  @param  User                    Handle of the user whose profile will be\r
-                                  retrieved.\r
-  @param  UserInfo                Handle of the user information data record.\r
-  @param  Info                    Points to the user information.\r
-  @param  InfoSize                The size of Info, in bytes.\r
-\r
-  @retval EFI_SUCCESS             User profile information was successfully\r
-                                  changed/added.\r
-  @retval EFI_ACCESS_DENIED       The record is exclusive.\r
-  @retval EFI_SECURITY_VIOLATION  The current user does not have permission to\r
-                                  change  the specified user profile or user\r
-                                  information record.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-UserProfileSetInfo (\r
-  IN CONST  EFI_USER_MANAGER_PROTOCOL           *This,\r
-  IN        EFI_USER_PROFILE_HANDLE             User,\r
-  IN OUT    EFI_USER_INFO_HANDLE                *UserInfo,\r
-  IN CONST  EFI_USER_INFO                       *Info,\r
-  IN        UINTN                               InfoSize\r
-  );\r
-\r
-\r
-/**\r
-  This function allows the credential provider to notify the User Identity Manager\r
-  when user status has changed while deselected.\r
-\r
-  @param  This                    Protocol EFI_USER_MANAGER_PROTOCOL instance\r
-                                  pointer.\r
-  @param  Changed                 Points to the instance of the\r
-                                  EFI_USER_CREDENTIAL_PROTOCOL  where the user has\r
-                                  changed.\r
-\r
-  @retval EFI_SUCCESS             The User Identity Manager has handled the\r
-                                  notification.\r
-  @retval EFI_NOT_READY           The function was called while the specified\r
-                                  credential  provider was not selected.\r
-  @retval EFI_UNSUPPORTED         The User Identity Manager doesn't support\r
-                                  asynchronous  notifications.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-UserProfileNotify (\r
-  IN CONST  EFI_USER_MANAGER_PROTOCOL           *This,\r
-  IN        EFI_HANDLE                          Changed\r
-  );\r
-\r
-\r
-/**\r
-  Delete the user information attached to the user profile specified by the UserInfo.\r
-\r
-  @param  This                    Protocol EFI_USER_MANAGER_PROTOCOL instance pointer.\r
-  @param  User                    Handle of the user whose profile will be retrieved.\r
-  @param  UserInfo                Handle of the user information data record.\r
-\r
-  @retval EFI_SUCCESS             User information deleted successfully.\r
-  @retval EFI_ACCESS_DENIED       The current user does not have permission to\r
-                                  delete this user in-formation.\r
-  @retval EFI_NOT_FOUND           User information record UserInfo does not exist\r
-                                  in the user pro-file.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-UserProfileDeleteInfo (\r
-  IN CONST  EFI_USER_MANAGER_PROTOCOL           *This,\r
-  IN        EFI_USER_PROFILE_HANDLE             User,\r
-  IN        EFI_USER_INFO_HANDLE                UserInfo\r
-  );\r
-\r
-\r
-/**\r
-  This function returns the next user information record.\r
-\r
-  @param  This                    Protocol EFI_USER_MANAGER_PROTOCOL instance pointer.\r
-  @param  User                    Handle of the user whose profile will be retrieved.\r
-  @param  UserInfo                Handle of the user information data record.\r
-\r
-  @retval EFI_SUCCESS             User information returned.\r
-  @retval EFI_NOT_FOUND           No more user information found.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-UserProfileGetNextInfo (\r
-  IN CONST  EFI_USER_MANAGER_PROTOCOL           *This,\r
-  IN        EFI_USER_PROFILE_HANDLE             User,\r
-  IN OUT    EFI_USER_INFO_HANDLE                *UserInfo\r
-  );\r
-\r
-#endif\r