From patchwork Sat Dec 19 15:27:21 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Victor Dorneanu X-Patchwork-Id: 41464 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [199.232.76.165]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id D6CECB6F16 for ; Sun, 20 Dec 2009 02:30:23 +1100 (EST) Received: from localhost ([127.0.0.1]:42396 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NM1G7-0005QG-Ly for incoming@patchwork.ozlabs.org; Sat, 19 Dec 2009 10:30:19 -0500 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NM1FX-0005OL-3w for qemu-devel@nongnu.org; Sat, 19 Dec 2009 10:29:43 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1NM1FR-0005KN-L4 for qemu-devel@nongnu.org; Sat, 19 Dec 2009 10:29:41 -0500 Received: from [199.232.76.173] (port=50366 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NM1FR-0005KK-G7 for qemu-devel@nongnu.org; Sat, 19 Dec 2009 10:29:37 -0500 Received: from relay2.mail.vrmd.de ([81.28.224.28]:40857) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1NM1FR-0005ps-5o for qemu-devel@nongnu.org; Sat, 19 Dec 2009 10:29:37 -0500 Received: from [188.103.24.194] (helo=[192.168.178.21]) by relay2.mail.vrmd.de with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.69) (envelope-from ) id 1NM1FI-00039t-SI for qemu-devel@nongnu.org; Sat, 19 Dec 2009 16:29:29 +0100 Message-ID: <4B2CF0D9.3020700@dornea.nu> Date: Sat, 19 Dec 2009 16:27:21 +0100 From: Victor Dorneanu User-Agent: Thunderbird 2.0.0.23 (X11/20091017) MIME-Version: 1.0 To: qemu-devel@nongnu.org X-Enigmail-Version: 0.96.0 X-Relay-User: victor@dornea.nu X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6 (newer, 3) Subject: [Qemu-devel] [Fwd: qemu-0.11.1 / tap device bug] X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Hi there! I send you some bug report I've reported to NetBSD's mailing lists. --- net.c.orig 2009-12-18 18:24:20.000000000 +0100 +++ net.c 2009-12-18 18:19:07.000000000 +0100 @@ -116,7 +116,7 @@ #include "sysemu.h" #include "qemu-timer.h" #include "qemu-char.h" -#include "audio/audio.h" +#include "audio/qaudio.h" #include "qemu_socket.h" #include "qemu-log.h" @@ -1461,11 +1461,27 @@ { int fd; char *dev; + char tap_dev[1024]; struct stat s; - TFR(fd = open("/dev/tap", O_RDWR)); +#if defined (__NetBSD__) + // Concatenate dev path (/dev/) and tap device name (e.g. tap0) + if (strlcpy(tap_dev, "/dev/", sizeof(tap_dev)) >= sizeof(tap_dev)) { + fprintf(stderr, "error: tap device name too long\n"); + return -1; + } + + if (strlcat(tap_dev, ifname, sizeof(tap_dev)) >= sizeof(tap_dev)) { + fprintf(stderr, "error: tap device name too long\n"); + return -1; + } +#else + tap_dev="/dev/tap"; +#endif + TFR(fd = open(tap_dev, O_RDWR)); + if (fd < 0) { - fprintf(stderr, "warning: could not open /dev/tap: no virtual network emulation\n"); + fprintf(stderr, "warning: could not open %s: no virtual network emulation\n",tap_dev); return -1; }