summaryrefslogtreecommitdiffstats
path: root/scripts/poky-qemu-ifdown
diff options
context:
space:
mode:
authorJeff Dike <jdike@x86_64.user-mode-linux.org>2010-08-05 12:31:01 -0400
committerRichard Purdie <rpurdie@linux.intel.com>2010-08-20 16:20:10 +0100
commit6ea1ed5f7b51b7c04e8aca29319c970846ddf1b8 (patch)
tree11577d6dc4afe7939489128e96b83e02f5e191f9 /scripts/poky-qemu-ifdown
parentf35a8d4079777453a2b60b7df5524b217260d252 (diff)
downloadpoky-6ea1ed5f7b51b7c04e8aca29319c970846ddf1b8.tar.gz
poky-qemu-[ifup|ifdown]: Use native tunctl
poky-qemu-ifup can run standalone by root in order to configure a bank of tap devices for later qemu use. These devices will, if possible, be owned by a specified group to which qemu users must belong. If the kernel is too old to support TUNSETGROUP, then it falls back to setting the tap device to be owned by a particular user, and that user will be the only one allowed to use it. Also overall usability improvements to the scripts, usage() help, etc. Signed-off-by: Jeff Dike <jdike@linux.intel.com> Signed-off-by: Scott Garman <scott.a.garman@intel.com>
Diffstat (limited to 'scripts/poky-qemu-ifdown')
-rwxr-xr-xscripts/poky-qemu-ifdown34
1 files changed, 27 insertions, 7 deletions
diff --git a/scripts/poky-qemu-ifdown b/scripts/poky-qemu-ifdown
index d9e9e95861..93a87559af 100755
--- a/scripts/poky-qemu-ifdown
+++ b/scripts/poky-qemu-ifdown
@@ -1,8 +1,8 @@
1#!/bin/sh 1#!/bin/bash
2 2#
3# QEMU network interface configuration script 3# QEMU network interface configuration script.
4# 4#
5# Copyright (C) 2006-2007 OpenedHand Ltd. 5# Copyright (c) 2006-2010 Intel Corp.
6# 6#
7# This program is free software; you can redistribute it and/or modify 7# This program is free software; you can redistribute it and/or modify
8# it under the terms of the GNU General Public License version 2 as 8# it under the terms of the GNU General Public License version 2 as
@@ -10,16 +10,36 @@
10# 10#
11# This program is distributed in the hope that it will be useful, 11# This program is distributed in the hope that it will be useful,
12# but WITHOUT ANY WARRANTY; without even the implied warranty of 12# but WITHOUT ANY WARRANTY; without even the implied warranty of
13# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14# GNU General Public License for more details. 14# GNU General Public License for more details.
15# 15#
16# You should have received a copy of the GNU General Public License along 16# You should have received a copy of the GNU General Public License along
17# with this program; if not, write to the Free Software Foundation, Inc., 17# with this program; if not, write to the Free Software Foundation, Inc.,
18# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. 18# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
19 19
20usage() {
21 echo "$0 <tap-dev> <native-sysroot-basedir>"
22}
23
24if [ $# -ne 2 ]; then
25 usage
26 exit 1
27fi
28
20TAP=$1 29TAP=$1
30NATIVE_SYSROOT_DIR=$2
31
32TUNCTL=$NATIVE_SYSROOT_DIR/usr/bin/tunctl
33if [ ! -e "$TUNCTL" ]; then
34 echo "Error: Unable to find tunctl binary in '$NATIVE_SYSROOT_DIR/usr/bin'"
35
36 if [[ "$NATIVE_SYSROOT_DIR" =~ ^\/opt\/poky ]]; then
37 echo "This shouldn't happen - something is wrong with your toolchain installation"
38 else
39 echo "Have you run 'bitbake qemu-helper-native'?"
40 fi
21 41
22TUNCTL=`which tunctl` 42 exit 1
23[ "$TUNCTL" = "" ] && TUNCTL=/usr/sbin/tunctl 43fi
24 44
25$TUNCTL -d $TAP 45$TUNCTL -d $TAP