From: Kevin Wolf <kwolf@suse.de>
To: FOSS@AtlasTechnologiesInc.com
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH] Add args for quiet and prompt
Date: Thu, 12 Feb 2009 11:42:36 +0100 [thread overview]
Message-ID: <4993FD1C.50906@suse.de> (raw)
In-Reply-To: <1234421329-8119-3-git-send-email-FOSS@AtlasTechnologiesInc.com>
Cory Fields schrieb:
> Syntax is -boot [cad],prompt=x,quiet=x where x is [0,1,true,false]
> Boot drive is mandatory
> If prompt is set user will see "Press f12 for boot menu"
> This behavior has changed, it is now off by default
>
> If quiet is set user will see no normal text output from bios.
> Errors will stil be displayed.
>
> Signed-off-by: Cory Fields <FOSS@AtlasTechnologiesInc.com>
> ---
> vl.c | 48 ++++++++++++++++++++++++++++++++++++++++++++----
> 1 files changed, 44 insertions(+), 4 deletions(-)
>
> diff --git a/vl.c b/vl.c
> index 3676537..b2da109 100644
> --- a/vl.c
> +++ b/vl.c
> @@ -230,6 +230,9 @@ int no_shutdown = 0;
> int cursor_hide = 1;
> int graphic_rotate = 0;
> int daemonize = 0;
> +int biosprompt = 0;
> +int quietbios = 0;
> +
> const char *option_rom[MAX_OPTION_ROMS];
> int nb_option_roms;
> int semihosting_enabled = 0;
> @@ -3875,6 +3878,10 @@ static void help(int exitcode)
> "-sd file use 'file' as SecureDigital card image\n"
> "-pflash file use 'file' as a parallel flash image\n"
> "-boot [a|c|d|n] boot on floppy (a), hard disk (c), CD-ROM (d), or network (n)\n"
> + " [,quiet=true|false]\n"
> + " hide bios text [default=false]\n"
> + " [,prompt=true|false]\n"
> + " hide boot menu prompt [default=true]\n"
> "-snapshot write to temporary files instead of disk image files\n"
> "-m megs set virtual RAM size to megs MB [default=%d]\n"
> #ifndef _WIN32
> @@ -4556,7 +4563,7 @@ int main(int argc, char **argv, char **envp)
> int snapshot, linux_boot, net_boot;
> const char *initrd_filename;
> const char *kernel_filename, *kernel_cmdline;
> - const char *boot_devices = "";
> + char boot_devices[32] = "";
> DisplayState *ds;
> DisplayChangeListener *dcl;
> int cyls, heads, secs, translation;
What is the reason for this change? You could still split optarg in the
code below and keep boot_devices as a pointer...
> @@ -4829,14 +4836,15 @@ int main(int argc, char **argv, char **envp)
> drive_add(optarg, CDROM_ALIAS);
> break;
> case QEMU_OPTION_boot:
> - boot_devices = optarg;
> /* We just do some generic consistency checks */
> {
> /* Could easily be extended to 64 devices if needed */
> const char *p;
> + int num_drive_letters = 0;
> + char boot_opts[128];
>
> boot_devices_bitmap = 0;
> - for (p = boot_devices; *p != '\0'; p++) {
> + for (p = optarg; *p != '\0' && *p != ','; p++) {
> /* Allowed boot devices are:
> * a b : floppy disk drives
> * c ... f : IDE disk drives
> @@ -4856,6 +4864,38 @@ int main(int argc, char **argv, char **envp)
> exit(1);
> }
> boot_devices_bitmap |= 1 << (*p - 'a');
> + boot_devices[num_drive_letters]=*p;
...so you would avoid a buffer overflow here...
> + num_drive_letters++;
> +
> + }
> +
> + strcpy(boot_opts,optarg);
...and here. ;-)
Kevin
next prev parent reply other threads:[~2009-02-12 10:35 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-02-12 6:48 [Qemu-devel] [PATCH 0/4] Cory Fields
2009-02-12 6:48 ` [Qemu-devel] [PATCH] Define a new route for sending data to bios Cory Fields
2009-02-12 6:41 ` Gleb Natapov
2009-02-12 15:50 ` Blue Swirl
2009-02-12 6:48 ` [Qemu-devel] [PATCH] Add args for quiet and prompt Cory Fields
2009-02-12 10:42 ` Kevin Wolf [this message]
2009-02-14 22:27 ` Anthony Liguori
2009-02-15 0:07 ` Cory Fields
2009-02-12 6:48 ` [Qemu-devel] [PATCH] enable quietbios and biosprompt checks Cory Fields
2009-02-14 22:28 ` Anthony Liguori
2009-02-15 0:09 ` Cory Fields
2009-02-12 6:48 ` [Qemu-devel] [PATCH] enable quietbios check Cory Fields
-- strict thread matches above, loose matches on Subject: below --
2009-02-14 23:57 [Qemu-devel] [PATCH 0/4] Option to suppress bios output and prompt (v2) Cory Fields
2009-02-14 23:57 ` [Qemu-devel] [PATCH] Add args for quiet and prompt Cory Fields
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4993FD1C.50906@suse.de \
--to=kwolf@suse.de \
--cc=FOSS@AtlasTechnologiesInc.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).