]> git.proxmox.com Git - mirror_edk2.git/blobdiff - SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfig.vfr
SecurityPkg/SecureBootConfigImpl.c: Secure Boot DBX UI Enhancement
[mirror_edk2.git] / SecurityPkg / VariableAuthenticated / SecureBootConfigDxe / SecureBootConfig.vfr
index bbecff2b085dfa83a867283fc34b286ddb9dd9eb..296b9c9b9e92adfdfd4dbb733b2c4d007bd265de 100644 (file)
@@ -316,11 +316,11 @@ formset
 \r
     subtitle text = STRING_TOKEN(STR_NULL);\r
 \r
-    goto SECUREBOOT_DELETE_SIGNATURE_FROM_DBX,\r
+    goto SECUREBOOT_DELETE_SIGNATURE_LIST_FORM,\r
     prompt = STRING_TOKEN (STR_SECURE_BOOT_DELETE_SIGNATURE),\r
     help   = STRING_TOKEN (STR_SECURE_BOOT_DELETE_SIGNATURE),\r
     flags  = INTERACTIVE,\r
-    key    = SECUREBOOT_DELETE_SIGNATURE_FROM_DBX;\r
+    key    = KEY_VALUE_FROM_DBX_TO_LIST_FORM;\r
 \r
   endform;\r
 \r
@@ -360,17 +360,58 @@ formset
   endform;\r
 \r
   //\r
-  // Form: 'Delete Signature' for DBX Options.\r
+  // Form: Display Signature List.\r
   //\r
-  form formid = SECUREBOOT_DELETE_SIGNATURE_FROM_DBX,\r
-    title  = STRING_TOKEN(STR_SECURE_BOOT_DELETE_SIGNATURE);\r
+  form formid = SECUREBOOT_DELETE_SIGNATURE_LIST_FORM,\r
+    title  = STRING_TOKEN(STR_SECURE_BOOT_DELETE_LIST_FORM);\r
+\r
+    subtitle text = STRING_TOKEN(STR_NULL);\r
+\r
+    grayoutif ideqval SECUREBOOT_CONFIGURATION.ListCount == 0;\r
+      label LABEL_DELETE_ALL_LIST_BUTTON;\r
+      //\r
+      // Will create a goto button dynamically here.\r
+      //\r
+      label LABEL_END;\r
+   endif;\r
+\r
+   subtitle text = STRING_TOKEN(STR_NULL);\r
+   label LABEL_SIGNATURE_LIST_START;\r
+   label LABEL_END;\r
+   subtitle text = STRING_TOKEN(STR_NULL);\r
 \r
-    label LABEL_DBX_DELETE;\r
+  endform;\r
+\r
+  //\r
+  // Form: Display Signature Data.\r
+  //\r
+  form formid = SECUREBOOT_DELETE_SIGNATURE_DATA_FORM,\r
+    title = STRING_TOKEN(STR_SECURE_BOOT_DELETE_DATA_FORM);\r
+\r
+    subtitle text = STRING_TOKEN(STR_NULL);\r
+\r
+    goto SECUREBOOT_DELETE_SIGNATURE_LIST_FORM,\r
+      prompt = STRING_TOKEN(STR_SECURE_BOOT_DELETE_ALL_DATA),\r
+      help   = STRING_TOKEN(STR_SECURE_BOOT_DELETE_ALL_DATA_HELP),\r
+      flags  = INTERACTIVE,\r
+      key    = KEY_SECURE_BOOT_DELETE_ALL_DATA;\r
+\r
+    grayoutif ideqval SECUREBOOT_CONFIGURATION.CheckedDataCount == 0;\r
+      goto SECUREBOOT_DELETE_SIGNATURE_LIST_FORM,\r
+        prompt = STRING_TOKEN(STR_SECURE_BOOT_DELETE_CHECK_DATA),\r
+        help   = STRING_TOKEN(STR_SECURE_BOOT_DELETE_CHECK_DATA_HELP),\r
+        flags  = INTERACTIVE,\r
+        key    = KEY_SECURE_BOOT_DELETE_CHECK_DATA;\r
+    endif;\r
+\r
+    subtitle text = STRING_TOKEN(STR_NULL);\r
+    label LABEL_SIGNATURE_DATA_START;\r
     label LABEL_END;\r
     subtitle text = STRING_TOKEN(STR_NULL);\r
 \r
   endform;\r
 \r
+\r
   //\r
   // Form: 'Delete Signature' for DBT Options.\r
   //\r