From 800dae0d34f8629a34c638a612166b76dda03e27 Mon Sep 17 00:00:00 2001
From: Andrea Adami <andrea.adami@gmail.com>
Date: Sat, 2 Aug 2014 01:13:08 +0200
Subject: [PATCH 3/4] kexecboot: do not hardcode MOUNTPOINT

Avoid to hardcode it: could be requested as a new configure option.

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
---
 cfgparser.c |  6 +++---
 kexecboot.c | 18 ++++++++++--------
 2 files changed, 13 insertions(+), 11 deletions(-)

diff --git a/cfgparser.c b/cfgparser.c
index 8f6688c..dec27b1 100644
--- a/cfgparser.c
+++ b/cfgparser.c
@@ -141,7 +141,7 @@ static int set_kernel(struct cfgdata_t *cfgdata, char *value)
 		return -1;
 	}
 
-	strcpy(sc->kernelpath, "/mnt");
+	strcpy(sc->kernelpath, MOUNTPOINT);
 	strcat(sc->kernelpath, value);
 	return 0;
 }
@@ -155,7 +155,7 @@ static int set_icon(struct cfgdata_t *cfgdata, char *value)
 
 	dispose(sc->iconpath);
 	/* Add our mountpoint, since the enduser won't know it */
-	sc->iconpath = malloc(sizeof(MOUNTPOINT)+strlen(value));
+	sc->iconpath = malloc(strlen(MOUNTPOINT)+strlen(value)+1);
 	if (NULL == sc->iconpath) {
 		DPRINTF("Can't allocate memory to store iconpath '%s'", value);
 		return -1;
@@ -194,7 +194,7 @@ static int set_initrd(struct cfgdata_t *cfgdata, char *value)
 		return -1;
 	}
 
-	strcpy(sc->initrd, "/mnt");
+	strcpy(sc->initrd, MOUNTPOINT);
 	strcat(sc->initrd, value);
 	return 0;
 }
diff --git a/kexecboot.c b/kexecboot.c
index d6657a0..7268d6b 100644
--- a/kexecboot.c
+++ b/kexecboot.c
@@ -57,20 +57,22 @@
 #endif
 
 #ifdef USE_MACHINE_KERNEL
-/* Machine-dependent kernel patch */
+/* Machine-dependent kernel path */
 char *machine_kernel = NULL;
 #endif
 
+#define PREPEND_MOUNTPATH(string) MOUNTPOINT""string
+
 /* NULL-terminated array of kernel search paths
  * First item should be filled with machine-dependent path */
 char *default_kernels[] = {
 #ifdef USE_ZIMAGE
-	"/mnt/boot/zImage",
-	"/mnt/zImage",
+	PREPEND_MOUNTPATH("/boot/zImage"),
+	PREPEND_MOUNTPATH("/zImage"),
 #endif
 #ifdef USE_UIMAGE
-	"/mnt/boot/uImage",
-	"/mnt/uImage",
+	PREPEND_MOUNTPATH("/boot/uImage"),
+	PREPEND_MOUNTPATH("/uImage"),
 #endif
 	NULL
 };
@@ -149,14 +151,14 @@ char *get_machine_kernelpath() {
 			++tmp;
 		}
 
-		/* Prepend "/mnt/boot/zImage-" to hw */
-		tmp = malloc(strlen(hw) + 17 + 1);	/* strlen("/mnt/boot/zImage-") */
+		/* Prepend  MOUNTPOINT"/boot/zImage-" to hw */
+		tmp = malloc(strlen(PREPEND_MOUNTPATH("/boot/zImage-")) + strlen(hw) + 1);
 		if (NULL == tmp) {
 			DPRINTF("Can't allocate memory for machine-specific kernel path");
 			return NULL;
 		}
 
-		strcpy(tmp, "/mnt/boot/zImage-");
+		strcpy(tmp, PREPEND_MOUNTPATH("/boot/zImage-"));
 		strcat(tmp, hw);
 
 		return tmp;
-- 
1.9.1

