This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


[Xen-devel] [PATCH] Uninitialized ifname can cause qemu to quit

To: xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-devel] [PATCH] Uninitialized ifname can cause qemu to quit
From: Steve Dobbelstein <steved@xxxxxxxxxx>
Date: Wed, 26 Jul 2006 10:38:55 -0500
Delivery-date: Wed, 26 Jul 2006 08:39:29 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Posting an updated version of the patch (fix the #ifdef _WIN32 case, as
well), this time with a signed-off-by line.

Signed-off-by: Steve Dobbelstein <steved@xxxxxxxxxx>


Uninitialized ifname can cause qemu to quit.  If the first character of the
ifname is not \0, qemu will think that the junk in ifname is valid and
will configure /dev/net/tun to use it.  The configuration fails and qemu

--- a/tools/ioemu/vl.c  2006-07-17 10:25:07.000000000 -0500
+++ b/tools/ioemu/vl.c  2006-07-26 09:43:32.000000000 -0500
@@ -3266,6 +3266,7 @@
 #ifdef _WIN32
     if (!strcmp(device, "tap")) {
         char ifname[64];
+        ifname[0] = '\0';
         if (get_param_value(ifname, sizeof(ifname), "ifname", p) <= 0) {
             fprintf(stderr, "tap: no interface name\n");
             return -1;
@@ -3278,6 +3279,7 @@
         char setup_script[1024];
         char bridge[16];
         int fd;
+        ifname[0] = setup_script[0] = bridge[0] = '\0';
         if (get_param_value(buf, sizeof(buf), "fd", p) > 0) {
             fd = strtol(buf, NULL, 0);
             ret = -1;

(See attached file: qemu-ifname.patch)

Attachment: qemu-ifname.patch
Description: Binary data

Xen-devel mailing list
<Prev in Thread] Current Thread [Next in Thread>