All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] fix usability problem in FreeBSD loader
@ 2009-08-01 13:40 Robert Millan
  2009-08-01 13:49 ` Vladimir 'phcoder' Serbinenko
  0 siblings, 1 reply; 4+ messages in thread
From: Robert Millan @ 2009-08-01 13:40 UTC (permalink / raw)
  To: grub-devel

[-- Attachment #1: Type: text/plain, Size: 366 bytes --]


There's a minor usability problem with FreeBSD loader.  E.g. if user runs
freebsd_module first, the error message is confusing.

-- 
Robert Millan

  The DRM opt-in fallacy: "Your data belongs to us. We will decide when (and
  how) you may access your data; but nobody's threatening your freedom: we
  still allow you to remove your data and not access it at all."

[-- Attachment #2: freebsd.diff --]
[-- Type: text/x-diff, Size: 1805 bytes --]

2009-08-01  Robert Millan  <rmh.grub@aybabtu.com>

	* loader/i386/bsd.c (grub_cmd_freebsd_loadenv, grub_cmd_freebsd_module)
	(grub_cmd_freebsd_module_elf): Abort with "You need to load the
	kernel first." when `kernel_type' is set to KERNEL_TYPE_NONE.

Index: loader/i386/bsd.c
===================================================================
--- loader/i386/bsd.c	(revision 2461)
+++ loader/i386/bsd.c	(working copy)
@@ -47,7 +47,7 @@
 
 #define MOD_BUF_ALLOC_UNIT	4096
 
-static int kernel_type;
+static int kernel_type; /* 0 == KERNEL_TYPE_NONE */
 static grub_dl_t my_mod;
 static grub_addr_t entry, entry_hi, kern_start, kern_end;
 static grub_uint32_t bootflags;
@@ -914,6 +914,10 @@ grub_cmd_freebsd_loadenv (grub_command_t
   char *buf = 0, *curr, *next;
   int len;
 
+  if (kernel_type == KERNEL_TYPE_NONE)
+    return grub_error (GRUB_ERR_BAD_ARGUMENT,
+		       "You need to load the kernel first.");
+
   if (kernel_type != KERNEL_TYPE_FREEBSD)
     return grub_error (GRUB_ERR_BAD_ARGUMENT,
 		       "only freebsd support environment");
@@ -1004,6 +1008,10 @@ grub_cmd_freebsd_module (grub_command_t 
   char **modargv;
   char *type;
 
+  if (kernel_type == KERNEL_TYPE_NONE)
+    return grub_error (GRUB_ERR_BAD_ARGUMENT,
+		       "You need to load the kernel first.");
+
   if (kernel_type != KERNEL_TYPE_FREEBSD)
     return grub_error (GRUB_ERR_BAD_ARGUMENT,
 		       "only freebsd support module");
@@ -1066,6 +1074,10 @@ grub_cmd_freebsd_module_elf (grub_comman
   grub_file_t file = 0;
   grub_err_t err;
 
+  if (kernel_type == KERNEL_TYPE_NONE)
+    return grub_error (GRUB_ERR_BAD_ARGUMENT,
+		       "You need to load the kernel first.");
+
   if (kernel_type != KERNEL_TYPE_FREEBSD)
     return grub_error (GRUB_ERR_BAD_ARGUMENT,
 		       "only freebsd support module");

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2009-08-10 15:43 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-08-01 13:40 [PATCH] fix usability problem in FreeBSD loader Robert Millan
2009-08-01 13:49 ` Vladimir 'phcoder' Serbinenko
2009-08-01 14:28   ` Robert Millan
2009-08-10 15:42     ` Robert Millan

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.