  /* Check a password for correctness.  Returns 0 if password was
     correct, and a value != 0 for error, similarly to strcmp. */
  int
-@@ -3612,6 +3638,188 @@
-   {"delete",		0,		0x7f,	0,	0x53}
- };
+@@ -3171,6 +3197,188 @@
+   return 0;
+ }
  
 +#ifdef SUPPORT_EMULAB
 +static int

+  "testbed_boot",
+  tbboot_func,
+  BUILTIN_CMDLINE | BUILTIN_MENU | BUILTIN_HELP_LIST,
+  "testbed_boot",
+  "testbed booting magic",
+};
+#endif /* SUPPORT_EMULAB */
+
 static struct builtin builtin_setkey =
 {
   "setkey",
@@ -4864,6 +5083,9 @@
 #endif /* SUPPORT_SERIAL */
   &builtin_setkey,
   &builtin_setup,
+#if defined(SUPPORT_EMULAB)
+  &builtin_tbboot,
+#endif /* SUPPORT_EMULAB */
 #if defined(SUPPORT_SERIAL) || defined(SUPPORT_HERCULES)
   &builtin_terminal,
 #endif /* SUPPORT_SERIAL || SUPPORT_HERCULES */

+
+		if (biosdev == MAX_BIOS_DRIVE) {
+			errnum = ERR_BOOT_FAILURE;
+			grub_printf("no biosdev found for testbed boot\n");
+		}
+	}
+
