aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/lguest/lguest.c
diff options
context:
space:
mode:
authorPaul Bolle <pebolle@tiscali.nl>2008-03-10 11:39:03 -0400
committerRusty Russell <rusty@rustcorp.com.au>2008-03-10 18:35:58 -0400
commit1ef36fa64e65079de18ff5179a51af58e44d49a6 (patch)
tree3c59c9e4ed6327327191e916051c5f088e7478bf /Documentation/lguest/lguest.c
parent4357bd9453b81e0a41db1dec16e06d74256b7560 (diff)
lguest: Do not append space to guests kernel command line
The lguest launcher appends a space to the kernel command line (if kernel arguments are specified on its command line). This space is unneeded. More importantly, this appended space will make Red Hat's nash script interpreter (used in a Fedora style initramfs) add an empty argument to init's command line. This empty argument will make kernel arguments like "init=/bin/bash" fail (because the shell will try to execute a script with an empty name). This could be considered a bug in nash, but is easily fixed in the lguest launcher too. Signed-off-by: Paul Bolle <pebolle@tiscali.nl> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Diffstat (limited to 'Documentation/lguest/lguest.c')
-rw-r--r--Documentation/lguest/lguest.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/Documentation/lguest/lguest.c b/Documentation/lguest/lguest.c
index 0f23d67f958f..bec5a32e4095 100644
--- a/Documentation/lguest/lguest.c
+++ b/Documentation/lguest/lguest.c
@@ -486,9 +486,12 @@ static void concat(char *dst, char *args[])
486 unsigned int i, len = 0; 486 unsigned int i, len = 0;
487 487
488 for (i = 0; args[i]; i++) { 488 for (i = 0; args[i]; i++) {
489 if (i) {
490 strcat(dst+len, " ");
491 len++;
492 }
489 strcpy(dst+len, args[i]); 493 strcpy(dst+len, args[i]);
490 strcat(dst+len, " "); 494 len += strlen(args[i]);
491 len += strlen(args[i]) + 1;
492 } 495 }
493 /* In case it's empty. */ 496 /* In case it's empty. */
494 dst[len] = '\0'; 497 dst[len] = '\0';