summaryrefslogtreecommitdiffstats
path: root/debian/patches/disable-floppies.patch
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches/disable-floppies.patch')
-rw-r--r--debian/patches/disable-floppies.patch37
1 files changed, 37 insertions, 0 deletions
diff --git a/debian/patches/disable-floppies.patch b/debian/patches/disable-floppies.patch
new file mode 100644
index 0000000..ee4ae5a
--- /dev/null
+++ b/debian/patches/disable-floppies.patch
@@ -0,0 +1,37 @@
+From 6a1ff6845e571d2a9885763a3e52a16a9eec54bb Mon Sep 17 00:00:00 2001
+From: Colin Watson <cjwatson@debian.org>
+Date: Mon, 13 Jan 2014 12:12:54 +0000
+Subject: Disable use of floppy devices
+
+An ugly kludge. Should this be merged upstream?
+
+Author: Robert Millan
+
+Patch-Name: disable-floppies.patch
+---
+ grub-core/kern/emu/hostdisk.c | 12 ++++++++++++
+ 1 file changed, 12 insertions(+)
+
+diff --git a/grub-core/kern/emu/hostdisk.c b/grub-core/kern/emu/hostdisk.c
+index d975265b2..f90b6c9ce 100644
+--- a/grub-core/kern/emu/hostdisk.c
++++ b/grub-core/kern/emu/hostdisk.c
+@@ -532,6 +532,18 @@ read_device_map (const char *dev_map)
+ continue;
+ }
+
++ if (! strncmp (p, "/dev/fd", sizeof ("/dev/fd") - 1))
++ {
++ char *q = p + sizeof ("/dev/fd") - 1;
++ if (*q >= '0' && *q <= '9')
++ {
++ free (map[drive].drive);
++ map[drive].drive = NULL;
++ grub_util_info ("`%s' looks like a floppy drive, skipping", p);
++ continue;
++ }
++ }
++
+ /* On Linux, the devfs uses symbolic links horribly, and that
+ confuses the interface very much, so use realpath to expand
+ symbolic links. */