From 4e489203090b1657654ce10bca9e4bcbb8170f80 Mon Sep 17 00:00:00 2001 From: Kroese Date: Fri, 24 Oct 2025 01:19:38 +0200 Subject: [PATCH] fix: Do not assume Podman never has privileges (#1096) --- src/network.sh | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/network.sh b/src/network.sh index 78f639f..55eb41c 100644 --- a/src/network.sh +++ b/src/network.sh @@ -403,7 +403,6 @@ configureNAT() { # Create the necessary file structure for /dev/net/tun if [ ! -c /dev/net/tun ]; then - [[ "$PODMAN" == [Yy1]* ]] && return 1 [ ! -d /dev/net ] && mkdir -m 755 /dev/net if mknod /dev/net/tun c 10 200; then chmod 666 /dev/net/tun @@ -411,6 +410,7 @@ configureNAT() { fi if [ ! -c /dev/net/tun ]; then + [[ "$PODMAN" == [Yy1]* ]] && return 1 warn "$tuntap" && return 1 fi @@ -418,6 +418,7 @@ configureNAT() { if [[ $(< /proc/sys/net/ipv4/ip_forward) -eq 0 ]]; then { sysctl -w net.ipv4.ip_forward=1 > /dev/null 2>&1; rc=$?; } || : if (( rc != 0 )) || [[ $(< /proc/sys/net/ipv4/ip_forward) -eq 0 ]]; then + [[ "$PODMAN" == [Yy1]* ]] && return 1 warn "IP forwarding is disabled. $ADD_ERR --sysctl net.ipv4.ip_forward=1" return 1 fi @@ -444,6 +445,7 @@ configureNAT() { { ip link add dev "$VM_NET_BRIDGE" type bridge ; rc=$?; } || : if (( rc != 0 )); then + [[ "$PODMAN" == [Yy1]* ]] && return 1 warn "failed to create bridge. $ADD_ERR --cap-add NET_ADMIN" && return 1 fi @@ -458,6 +460,7 @@ configureNAT() { # QEMU Works with taps, set tap to the bridge created if ! ip tuntap add dev "$VM_NET_TAP" mode tap; then + [[ "$PODMAN" == [Yy1]* ]] && return 1 warn "$tuntap" && return 1 fi @@ -737,13 +740,6 @@ getInfo() { GATEWAY_MAC=$(echo "$VM_NET_MAC" | md5sum | sed 's/^\(..\)\(..\)\(..\)\(..\)\(..\).*$/02:\1:\2:\3:\4:\5/') - if [[ "$PODMAN" == [Yy1]* && "$DHCP" != [Yy1]* ]]; then - if [ -z "$NETWORK" ] || [[ "${NETWORK^^}" == "Y" ]]; then - # By default Podman has no permissions for NAT networking - NETWORK="user" - fi - fi - if [[ "$DEBUG" == [Yy1]* ]]; then line="Host: $HOST IP: $IP Gateway: $GATEWAY Interface: $VM_NET_DEV MAC: $VM_NET_MAC MTU: $mtu" [[ "$MTU" != "0" && "$MTU" != "$mtu" ]] && line+=" ($MTU)" @@ -805,8 +801,12 @@ else closeBridge NETWORK="user" - msg="falling back to user-mode networking!" - msg="failed to setup NAT networking, $msg" + + if [[ "$PODMAN" != [Yy1]* ]]; then + msg="falling back to user-mode networking!" + msg="failed to setup NAT networking, $msg" + warn "$msg" + fi fi ;;