-/* Yaboot - secondary boot loader for Linux on ppc.
-
- Copyright (C) 1999 Benjamin Herrenschmidt
-
- portions based on poof
-
- Copyright (C) 1999 Marius Vollmer
-
- portions based on quik
-
- Copyright (C) 1996 Paul Mackerras.
-
- Because this program is derived from the corresponding file in the
- silo-0.64 distribution, it is also
-
- Copyright (C) 1996 Pete A. Zaitcev
- 1996 Maurizio Plaza
- 1996 David S. Miller
- 1996 Miguel de Icaza
- 1996 Jakub Jelinek
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-*/
+/*
+ * Yaboot - secondary boot loader for Linux on PowerPC.
+ *
+ * Copyright (C) 2001, 2002 Ethan Benson
+ *
+ * Copyright (C) 1999, 2000, 2001 Benjamin Herrenschmidt
+ *
+ * IBM CHRP support
+ *
+ * Copyright (C) 2001 Peter Bergner
+ *
+ * portions based on poof
+ *
+ * Copyright (C) 1999 Marius Vollmer
+ *
+ * portions based on quik
+ *
+ * Copyright (C) 1996 Paul Mackerras.
+ *
+ * Because this program is derived from the corresponding file in the
+ * silo-0.64 distribution, it is also
+ *
+ * Copyright (C) 1996 Pete A. Zaitcev
+ * 1996 Maurizio Plaza
+ * 1996 David S. Miller
+ * 1996 Miguel de Icaza
+ * 1996 Jakub Jelinek
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ */
#include "stdarg.h"
#include "string.h"
{
int i;
+ prom_printf("\n%s", str);
for (i = 0; i < 3; i++) {
- prom_printf ("\n%sassword: ", str);
+ prom_printf ("\nPassword: ");
passwdbuff[0] = 0;
cmdedit ((void (*)(void)) 0, 1);
prom_printf ("\n");
if (!strcmp (password, passwdbuff))
return;
#endif /* USE_MD5_PASSWORDS */
- if (i < 2)
- prom_printf ("Password incorrect. Please try again...");
+ if (i < 2) {
+ prom_sleep(1);
+ prom_printf ("Incorrect password. Try again.");
+ }
}
- prom_printf ("Seems like you don't know the access password. Go away!\n");
- prom_sleep(3);
+ prom_printf(" ___________________\n< Permission denied >\n -------------------\n"
+ " \\ ^__^\n \\ (oo)\\_______\n (__)\\ )\\/\\\n"
+ " ||----w |\n || ||\n");
+ prom_sleep(4);
prom_interpret("reset-all");
}
restricted = 1;
if (label) {
if (params->args && password && restricted)
- check_password ("To specify image arguments you must enter the p");
+ check_password ("To specify arguments for this image "
+ "you must enter the password.");
else if (password && !restricted)
- check_password ("P");
+ check_password ("This image is restricted.");
}
params->args = make_params(label, params->args);
}
}
if (!strcmp (imagename, "help")) {
+ /* FIXME: defdevice shouldn't need to be reset all over the place */
+ if(!defdevice) defdevice = boot.dev;
prom_printf(
"\nPress the tab key for a list of defined images.\n"
"The label marked with a \"*\" is is the default image, "
if (!strcmp (imagename, "halt")) {
if (password)
- check_password ("P");
+ check_password ("Restricted command.");
prom_pause();
return 0;
}
if (!strcmp (imagename, "bye")) {
if (password) {
- check_password ("P");
+ check_password ("Restricted command.");
return 1;
}
return 1;
if (imagename[0] == '$') {
/* forth command string */
if (password)
- check_password ("P");
+ check_password ("OpenFirmware commands are restricted.");
prom_interpret(imagename+1);
return 0;
}
strncpy(imagepath, imagename, 1024);
if (!label && password)
- check_password ("To boot a custom image you must enter the p");
+ check_password ("To boot a custom image you must enter the password.");
if (!parse_device_path(imagepath, defdevice, defpart,
"/vmlinux", ¶ms->kernel)) {