Files
poky/scripts/poky-qemu-ifdown
Scott Garman c8a181e847 poky-qemu-ifup/ifdown: Require root privileges to run
This fixes [BUGID #232], requiring root privileges to run these scripts
and giving an error prompt when that requirement is not met.

The tunctl uid fallback code has also been removed, as we can rely on
the specific version of tunctl run from the native sysroot.

Signed-off-by: Scott Garman <scott.a.garman@intel.com>
2010-10-07 19:48:17 +01:00

1.7 KiB
Executable File

#!/bin/bash

QEMU network configuration script to bring down tap devices. This

utility needs to be run as root, and will use the tunctl binary

from a Poky sysroot.

If you find yourself calling this script a lot, you can add the

the following to your /etc/sudoers file to be able to run this

command without entering your password each time:

ALL=NOPASSWD: /path/to/poky-qemu-ifup

ALL=NOPASSWD: /path/to/poky-qemu-ifdown

Copyright (c) 2006-2010 Intel Corp.

This program is free software; you can redistribute it and/or modify

it under the terms of the GNU General Public License version 2 as

published by the Free Software Foundation.

This program is distributed in the hope that it will be useful,

but WITHOUT ANY WARRANTY; without even the implied warranty of

MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the

GNU General Public License for more details.

You should have received a copy of the GNU General Public License along

with this program; if not, write to the Free Software Foundation, Inc.,

51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.

usage() { echo "sudo $0 " }

if [ $EUID -ne 0 ]; then echo "Error: This script (poky-qemu-ifdown) must be run with root privileges" exit 1 fi

if [ $# -ne 2 ]; then usage exit 1 fi

TAP=$1 NATIVE_SYSROOT_DIR=$2

TUNCTL=$NATIVE_SYSROOT_DIR/usr/bin/tunctl if [ ! -e "$TUNCTL" ]; then echo "Error: Unable to find tunctl binary in '$NATIVE_SYSROOT_DIR/usr/bin'"

if [[ "$NATIVE_SYSROOT_DIR" =~ ^\/opt\/poky ]]; then
	echo "This shouldn't happen - something is wrong with your toolchain installation"
else
	echo "Have you run 'bitbake qemu-helper-native'?"
fi

exit 1

fi

$TUNCTL -d $TAP