]> git.proxmox.com Git - mirror_edk2.git/blobdiff - SecurityPkg/UserIdentification/UserProfileManagerDxe/UserProfileAdd.c
SecurityPkg: Remove code under UserIdentification folder.
[mirror_edk2.git] / SecurityPkg / UserIdentification / UserProfileManagerDxe / UserProfileAdd.c
diff --git a/SecurityPkg/UserIdentification/UserProfileManagerDxe/UserProfileAdd.c b/SecurityPkg/UserIdentification/UserProfileManagerDxe/UserProfileAdd.c
deleted file mode 100644 (file)
index 6de7e75..0000000
+++ /dev/null
@@ -1,372 +0,0 @@
-/** @file\r
-  The functions to add a user profile.\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
-#include "UserProfileManager.h"\r
-\r
-\r
-/**\r
-  Get user name from the popup windows.\r
-\r
-  @param[in, out]  UserNameLen  On entry, point to UserName buffer lengh, in bytes.\r
-                                On exit, point to input user name length, in bytes.\r
-  @param[out]      UserName     The buffer to hold the input user name.\r
-\r
-  @retval EFI_ABORTED           It is given up by pressing 'ESC' key.\r
-  @retval EFI_NOT_READY         Not a valid input at all.\r
-  @retval EFI_SUCCESS           Get a user name successfully.\r
-\r
-**/\r
-EFI_STATUS\r
-GetUserNameInput (\r
-  IN OUT  UINTN         *UserNameLen,\r
-     OUT  CHAR16        *UserName\r
-  )\r
-{\r
-  EFI_INPUT_KEY Key;\r
-  UINTN         NameLen;\r
-  CHAR16        Name[USER_NAME_LENGTH];\r
-\r
-  NameLen = 0;\r
-  while (TRUE) {\r
-    Name[NameLen]     = L'_';\r
-    Name[NameLen + 1] = L'\0';\r
-    CreatePopUp (\r
-      EFI_LIGHTGRAY | EFI_BACKGROUND_BLUE,\r
-      &Key,\r
-      L"Input User Name",\r
-      L"---------------------",\r
-      Name,\r
-      NULL\r
-      );\r
-    //\r
-    // Check key.\r
-    //\r
-    if (Key.ScanCode == SCAN_NULL) {\r
-      if (Key.UnicodeChar == CHAR_CARRIAGE_RETURN) {\r
-        //\r
-        // Add the null terminator.\r
-        //\r
-        Name[NameLen] = 0;\r
-        NameLen++;\r
-        break;\r
-      } else if ((Key.UnicodeChar == CHAR_NULL) ||\r
-                 (Key.UnicodeChar == CHAR_TAB) ||\r
-                 (Key.UnicodeChar == CHAR_LINEFEED)\r
-                 ) {\r
-        continue;\r
-      } else {\r
-        if (Key.UnicodeChar == CHAR_BACKSPACE) {\r
-          if (NameLen > 0) {\r
-            NameLen--;\r
-          }\r
-        } else {\r
-          Name[NameLen] = Key.UnicodeChar;\r
-          NameLen++;\r
-          if (NameLen + 1 == USER_NAME_LENGTH) {\r
-            //\r
-            // Add the null terminator.\r
-            //\r
-            Name[NameLen] = 0;\r
-            NameLen++;\r
-            break;\r
-          }\r
-        }\r
-      }\r
-    }\r
-\r
-    if (Key.ScanCode == SCAN_ESC) {\r
-      return EFI_ABORTED;\r
-    }\r
-  }\r
-\r
-  if (NameLen <= 1) {\r
-    return EFI_NOT_READY;\r
-  }\r
-\r
-  if (*UserNameLen < NameLen * sizeof (CHAR16)) {\r
-    return EFI_NOT_READY;\r
-  }\r
-\r
-  *UserNameLen = NameLen * sizeof (CHAR16);\r
-  CopyMem (UserName, Name, *UserNameLen);\r
-\r
-  return EFI_SUCCESS;\r
-}\r
-\r
-/**\r
-  Set a user's username.\r
-\r
-  @param[in]   User          Handle of a user profile .\r
-  @param[in]   UserNameLen   The lengh of UserName.\r
-  @param[in]   UserName      Point to the buffer of user name.\r
-\r
-  @retval EFI_NOT_READY      The usernme in mAddUserName had been used.\r
-  @retval EFI_SUCCESS        Change the user's username successfully with\r
-                             username in mAddUserName.\r
-\r
-**/\r
-EFI_STATUS\r
-SetUserName (\r
-  IN  EFI_USER_PROFILE_HANDLE    User,\r
-  IN  UINTN                      UserNameLen,\r
-  IN  CHAR16                     *UserName\r
-  )\r
-{\r
-  EFI_STATUS              Status;\r
-  EFI_USER_INFO_HANDLE    UserInfo;\r
-  EFI_USER_PROFILE_HANDLE TempUser;\r
-  EFI_USER_INFO           *NewUserInfo;\r
-\r
-  NewUserInfo = AllocateZeroPool (sizeof (EFI_USER_INFO) + UserNameLen);\r
-  ASSERT (NewUserInfo != NULL);\r
-\r
-  NewUserInfo->InfoType    = EFI_USER_INFO_NAME_RECORD;\r
-  NewUserInfo->InfoAttribs = EFI_USER_INFO_STORAGE_PLATFORM_NV |\r
-                             EFI_USER_INFO_PUBLIC |\r
-                             EFI_USER_INFO_EXCLUSIVE;\r
-  NewUserInfo->InfoSize    = (UINT32) (sizeof (EFI_USER_INFO) + UserNameLen);\r
-  CopyMem ((UINT8 *) (NewUserInfo + 1), UserName, UserNameLen);\r
-  TempUser  = NULL;\r
-  Status    = mUserManager->Find (\r
-                              mUserManager,\r
-                              &TempUser,\r
-                              NULL,\r
-                              NewUserInfo,\r
-                              NewUserInfo->InfoSize\r
-                              );\r
-  if (!EFI_ERROR (Status)) {\r
-    //\r
-    // The user name had been used, return error.\r
-    //\r
-    FreePool (NewUserInfo);\r
-    return EFI_NOT_READY;\r
-  }\r
-\r
-  UserInfo = NULL;\r
-  mUserManager->SetInfo (\r
-                  mUserManager,\r
-                  User,\r
-                  &UserInfo,\r
-                  NewUserInfo,\r
-                  NewUserInfo->InfoSize\r
-                  );\r
-  FreePool (NewUserInfo);\r
-  return EFI_SUCCESS;\r
-}\r
-\r
-\r
-/**\r
-  Set create date of the specified user.\r
-\r
-  @param[in]  User               Handle of a user profile.\r
-\r
-**/\r
-VOID\r
-SetCreateDate (\r
-  IN        EFI_USER_PROFILE_HANDLE   User\r
-  )\r
-{\r
-  EFI_STATUS                Status;\r
-  EFI_USER_INFO_HANDLE      UserInfo;\r
-  EFI_USER_INFO_CREATE_DATE Date;\r
-  EFI_USER_INFO             *NewUserInfo;\r
-\r
-  NewUserInfo = AllocateZeroPool (\r
-                  sizeof (EFI_USER_INFO) +\r
-                  sizeof (EFI_USER_INFO_CREATE_DATE)\r
-                  );\r
-  ASSERT (NewUserInfo != NULL);\r
-\r
-  NewUserInfo->InfoType    = EFI_USER_INFO_CREATE_DATE_RECORD;\r
-  NewUserInfo->InfoAttribs = EFI_USER_INFO_STORAGE_PLATFORM_NV |\r
-                             EFI_USER_INFO_PUBLIC |\r
-                             EFI_USER_INFO_EXCLUSIVE;\r
-  NewUserInfo->InfoSize    = sizeof (EFI_USER_INFO) + sizeof (EFI_USER_INFO_CREATE_DATE);\r
-  Status                   = gRT->GetTime (&Date, NULL);\r
-  if (EFI_ERROR (Status)) {\r
-    FreePool (NewUserInfo);\r
-    return ;\r
-  }\r
-\r
-  CopyMem ((UINT8 *) (NewUserInfo + 1), &Date, sizeof (EFI_USER_INFO_CREATE_DATE));\r
-  UserInfo = NULL;\r
-  mUserManager->SetInfo (\r
-                  mUserManager,\r
-                  User,\r
-                  &UserInfo,\r
-                  NewUserInfo,\r
-                  NewUserInfo->InfoSize\r
-                  );\r
-  FreePool (NewUserInfo);\r
-}\r
-\r
-\r
-/**\r
-  Set the default identity policy of the specified user.\r
-\r
-  @param[in]  User               Handle of a user profile.\r
-\r
-**/\r
-VOID\r
-SetIdentityPolicy (\r
-  IN        EFI_USER_PROFILE_HANDLE   User\r
-  )\r
-{\r
-  EFI_USER_INFO_IDENTITY_POLICY *Policy;\r
-  EFI_USER_INFO_HANDLE          UserInfo;\r
-  EFI_USER_INFO                 *NewUserInfo;\r
-\r
-  NewUserInfo = AllocateZeroPool (\r
-                  sizeof (EFI_USER_INFO) +\r
-                  sizeof (EFI_USER_INFO_IDENTITY_POLICY)\r
-                  );\r
-  ASSERT (NewUserInfo != NULL);\r
-\r
-  Policy                   = (EFI_USER_INFO_IDENTITY_POLICY *) (NewUserInfo + 1);\r
-  Policy->Type             = EFI_USER_INFO_IDENTITY_TRUE;\r
-  Policy->Length           = sizeof (EFI_USER_INFO_IDENTITY_POLICY);\r
-\r
-  NewUserInfo->InfoType    = EFI_USER_INFO_IDENTITY_POLICY_RECORD;\r
-  NewUserInfo->InfoAttribs = EFI_USER_INFO_STORAGE_PLATFORM_NV |\r
-                             EFI_USER_INFO_PUBLIC |\r
-                             EFI_USER_INFO_EXCLUSIVE;\r
-  NewUserInfo->InfoSize    = sizeof (EFI_USER_INFO) + Policy->Length;\r
-  UserInfo                 = NULL;\r
-  mUserManager->SetInfo (\r
-                  mUserManager,\r
-                  User,\r
-                  &UserInfo,\r
-                  NewUserInfo,\r
-                  NewUserInfo->InfoSize\r
-                  );\r
-  FreePool (NewUserInfo);\r
-}\r
-\r
-\r
-/**\r
-  Set the default access policy of the specified user.\r
-\r
-  @param[in]  User               Handle of a user profile.\r
-\r
-**/\r
-VOID\r
-SetAccessPolicy (\r
-  IN        EFI_USER_PROFILE_HANDLE   User\r
-  )\r
-{\r
-  EFI_USER_INFO_ACCESS_CONTROL  *Control;\r
-  EFI_USER_INFO_HANDLE          UserInfo;\r
-  EFI_USER_INFO                 *NewUserInfo;\r
-\r
-  NewUserInfo = AllocateZeroPool (\r
-                  sizeof (EFI_USER_INFO) +\r
-                  sizeof (EFI_USER_INFO_ACCESS_CONTROL)\r
-                  );\r
-  ASSERT (NewUserInfo != NULL);\r
-\r
-  Control                  = (EFI_USER_INFO_ACCESS_CONTROL *) (NewUserInfo + 1);\r
-  Control->Type            = EFI_USER_INFO_ACCESS_ENROLL_SELF;\r
-  Control->Size            = sizeof (EFI_USER_INFO_ACCESS_CONTROL);\r
-\r
-  NewUserInfo->InfoType    = EFI_USER_INFO_ACCESS_POLICY_RECORD;\r
-  NewUserInfo->InfoAttribs = EFI_USER_INFO_STORAGE_PLATFORM_NV |\r
-                             EFI_USER_INFO_PUBLIC |\r
-                             EFI_USER_INFO_EXCLUSIVE;\r
-  NewUserInfo->InfoSize    = sizeof (EFI_USER_INFO) + Control->Size;\r
-  UserInfo                 = NULL;\r
-  mUserManager->SetInfo (\r
-                  mUserManager,\r
-                  User,\r
-                  &UserInfo,\r
-                  NewUserInfo,\r
-                  NewUserInfo->InfoSize\r
-                  );\r
-  FreePool (NewUserInfo);\r
-}\r
-\r
-\r
-/**\r
-  Add a new user profile into the user profile database.\r
-\r
-**/\r
-VOID\r
-CallAddUser (\r
-  VOID\r
-  )\r
-{\r
-  EFI_STATUS              Status;\r
-  EFI_INPUT_KEY           Key;\r
-  EFI_USER_PROFILE_HANDLE User;\r
-  UINTN                   UserNameLen;\r
-  CHAR16                  UserName[USER_NAME_LENGTH];\r
-  CHAR16                  *QuestionStr;\r
-  CHAR16                  *PromptStr;\r
-\r
-  QuestionStr = NULL;\r
-  PromptStr   = NULL;\r
-\r
-  //\r
-  // Get user name to add.\r
-  //\r
-  UserNameLen = sizeof (UserName);\r
-  Status = GetUserNameInput (&UserNameLen, UserName);\r
-  if (EFI_ERROR (Status)) {\r
-    if (Status != EFI_ABORTED) {\r
-      QuestionStr = GetStringById (STRING_TOKEN (STR_GET_USERNAME_FAILED));\r
-      PromptStr   = GetStringById (STRING_TOKEN (STR_STROKE_KEY_CONTINUE));\r
-      goto Done;\r
-    }\r
-    return ;\r
-  }\r
-\r
-  //\r
-  // Create a new user profile.\r
-  //\r
-  User    = NULL;\r
-  Status  = mUserManager->Create (mUserManager, &User);\r
-  if (EFI_ERROR (Status)) {\r
-    QuestionStr = GetStringById (STRING_TOKEN (STR_CREATE_PROFILE_FAILED));\r
-    PromptStr   = GetStringById (STRING_TOKEN (STR_STROKE_KEY_CONTINUE));\r
-  } else {\r
-    //\r
-    // Add default user information.\r
-    //\r
-    Status = SetUserName (User, UserNameLen, UserName);\r
-    if (EFI_ERROR (Status)) {\r
-      QuestionStr = GetStringById (STRING_TOKEN (STR_USER_ALREADY_EXISTED));\r
-      PromptStr   = GetStringById (STRING_TOKEN (STR_STROKE_KEY_CONTINUE));\r
-      goto Done;\r
-    }\r
-\r
-    SetCreateDate (User);\r
-    SetIdentityPolicy (User);\r
-    SetAccessPolicy (User);\r
-\r
-    QuestionStr = GetStringById (STRING_TOKEN (STR_CREATE_PROFILE_SUCCESS));\r
-    PromptStr   = GetStringById (STRING_TOKEN (STR_STROKE_KEY_CONTINUE));\r
-  }\r
-\r
-Done:\r
-  CreatePopUp (\r
-    EFI_LIGHTGRAY | EFI_BACKGROUND_BLUE,\r
-    &Key,\r
-    QuestionStr,\r
-    L"",\r
-    PromptStr,\r
-    NULL\r
-    );\r
-  FreePool (QuestionStr);\r
-  FreePool (PromptStr);\r
-}\r
-\r