
- Drop the native-sysroot-basedir parameter still allow it to keep backward compatibility write a warning to stderr - Add a space after ! in the if as suggested by shellcheck - Support the new OE_TAP_NAME variable as well (From OE-Core rev: be72e5e32da5a251db14b42d3e9c0951178e216d) Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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 ip utility
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/runqemu-ifup
ALL=NOPASSWD: /path/to/runqemu-ifdown
Copyright (c) 2006-2011 Linux Foundation
SPDX-License-Identifier: GPL-2.0-only
usage() { echo "sudo $(basename $0) " }
if [ $EUID -ne 0 ]; then echo "Error: This script (runqemu-ifdown) must be run with root privileges" exit 1 fi
if [ $# -gt 2 ] || [ $# -lt 1 ]; then usage exit 1 fi
backward compatibility
if [ $# -eq 2 ] ; then echo "Warning: native-sysroot-basedir parameter is ignored. It is no longer needed." >&2 fi
TAP=$1
if ! ip tuntap del $TAP mode tap 2>/dev/null; then echo "Error: Unable to run up tuntap del" exit 1 fi
IPTOOL=which ip 2> /dev/null
if [ "x$IPTOOL" = "x" ]; then
# better than nothing...
IPTOOL=/sbin/ip
fi
if [ -x "$IPTOOL" ]; then
if $IPTOOL link show $TAP > /dev/null 2>&1
; then
$IPTOOL link del $TAP
fi
fi
cleanup the remaining iptables rules
IPTABLES=which iptables 2> /dev/null
if [ "x$IPTABLES" = "x" ]; then
IPTABLES=/sbin/iptables
fi
if [ ! -x "$IPTABLES" ]; then
echo "$IPTABLES cannot be executed"
exit 1
fi
if [ -z "$OE_TAP_NAME" ]; then OE_TAP_NAME=tap fi
n=$[ (echo $TAP | sed "s/$OE_TAP_NAME//"
* 2) + 1 ]
dest=$[ (echo $TAP | sed "s/$OE_TAP_NAME//"
* 2) + 2 ]
$IPTABLES -D POSTROUTING -t nat -j MASQUERADE -s 192.168.7.$n/32
$IPTABLES -D POSTROUTING -t nat -j MASQUERADE -s 192.168.7.$dest/32
true