]> git.proxmox.com Git - mirror_edk2.git/blobdiff - SecurityPkg/UserIdentification/UserProfileManagerDxe/UserProfileManager.h
SecurityPkg: Fix typos in comments
[mirror_edk2.git] / SecurityPkg / UserIdentification / UserProfileManagerDxe / UserProfileManager.h
index b7098dc7b67582572722fdfdb3623206f148b932..5ab5457a8f64573b0d0641f8944641d3a9165283 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   The header file for user profile manager driver.\r
     \r
-Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2009 - 2013, 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
@@ -21,8 +21,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #include <Guid/MdeModuleHii.h>\r
 \r
 #include <Protocol/HiiConfigAccess.h>\r
-#include <Protocol/DevicePathToText.h>\r
-#include <Protocol/UserCredential.h>\r
+#include <Protocol/UserCredential2.h>\r
 #include <Protocol/UserManager.h>\r
 \r
 #include <Library/UefiRuntimeServicesTableLib.h>\r
@@ -44,7 +43,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 //\r
 typedef struct {\r
   UINTN                         Count;\r
-  EFI_USER_CREDENTIAL_PROTOCOL  *Provider[1];\r
+  EFI_USER_CREDENTIAL2_PROTOCOL *Provider[1];\r
 } CREDENTIAL_PROVIDER_INFO;\r
 \r
 //\r
@@ -112,11 +111,6 @@ extern UINT8                               UserProfileManagerVfrBin[];
 //\r
 extern UINT8                               UserProfileManagerStrings[];\r
 \r
-//\r
-// Guid used in the form browse.\r
-//\r
-extern EFI_GUID                            mUserProfileManagerGuid;\r
-\r
 //\r
 // The user manager protocol, used in several function.\r
 //\r
@@ -145,6 +139,7 @@ extern USER_INFO                           mUserInfo;
 \r
 extern USER_PROFILE_MANAGER_CALLBACK_INFO  *mCallbackInfo;\r
 \r
+extern EFI_USER_PROFILE_HANDLE             mModifyUser;\r
 \r
 /**\r
   Get string by string id from HII Interface.\r
@@ -259,7 +254,7 @@ AddIdentityPolicyItem (
 /**\r
   Save the identity policy and update UI with it.\r
   \r
-  This funciton will verify the new identity policy, in current implementation, \r
+  This function will verify the new identity policy, in current implementation, \r
   the identity policy can be:  T, P & P & P & ..., P | P | P | ...\r
   Here, "T" means "True", "P" means "Credential Provider", "&" means "and", "|" means "or".\r
   Other identity policies are not supported.  \r
@@ -383,5 +378,67 @@ GetUserNameInput (
   IN OUT  UINTN         *UserNameLen,\r
      OUT  CHAR16        *UserName\r
   );\r
+\r
+/**\r
+  Find the specified info in User profile by the InfoType.\r
+\r
+  @param[in]  User         Handle of the user whose information will be searched.\r
+  @param[in]  InfoType     The user information type to find.\r
+  @param[out] UserInfo     Points to user information handle found.\r
+  \r
+  @retval EFI_SUCCESS      Find the user information successfully.\r
+  @retval Others           Fail to find the user information.\r
+\r
+**/\r
+EFI_STATUS\r
+FindInfoByType (\r
+  IN  EFI_USER_PROFILE_HANDLE                   User,\r
+  IN  UINT8                                     InfoType,\r
+  OUT EFI_USER_INFO_HANDLE                      *UserInfo\r
+  );\r
+\r
+/**\r
+  Convert the identity policy to a unicode string and update the Hii database\r
+  IpStringId string with it.\r
+\r
+  @param[in]  Ip         Points to identity policy.\r
+  @param[in]  IpLen      The identity policy length.\r
+  @param[in]  IpStringId String ID in the HII database to be replaced.\r
+\r
+**/\r
+VOID\r
+ResolveIdentityPolicy (\r
+  IN  UINT8                                     *Ip,\r
+  IN  UINTN                                     IpLen,\r
+  IN  EFI_STRING_ID                             IpStringId\r
+  );\r
+\r
+/**\r
+  Expand access policy memory size.\r
+\r
+  @param[in] ValidLen       The valid access policy length.\r
+  @param[in] ExpandLen      The length that is needed to expand.\r
+    \r
+**/\r
+VOID\r
+ExpandMemory (\r
+  IN      UINTN                                 ValidLen,\r
+  IN      UINTN                                 ExpandLen\r
+  );\r
+\r
+/**\r
+  Delete User's credental from all the providers that exist in User's identity policy.\r
+  \r
+  @param[in]  IdentityPolicy     Point to User's identity policy.\r
+  @param[in]  IdentityPolicyLen  The length of the identity policy.\r
+  @param[in]  User               Points to user profile.\r
+\r
+**/\r
+VOID\r
+DeleteCredentialFromProviders (\r
+  IN     UINT8                                *IdentityPolicy,\r
+  IN     UINTN                                 IdentityPolicyLen,\r
+  IN     EFI_USER_PROFILE_HANDLE               User \r
+  );\r
   \r
 #endif\r