fix: Samba for user-mode networking (#288)

This commit is contained in:
Kroese 2025-03-18 19:35:09 +01:00 committed by GitHub
parent 76bc9799ea
commit afba96b912
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 23 additions and 3 deletions

View file

@ -628,6 +628,8 @@ updateXML() {
local language="$2"
local culture region user admin pass keyboard
sed -i "s/ 20.20.20.1 / ${VM_NET_IP%.*}.1 /g" "$asset"
[ -z "$HEIGHT" ] && HEIGHT="720"
[ -z "$WIDTH" ] && WIDTH="1280"

View file

@ -14,6 +14,10 @@ if [[ "$DHCP" == [Yy1]* ]]; then
interface="$VM_NET_DEV"
fi
if [[ "${NETWORK,,}" == "user"* ]]; then
interface="127.0.0.1"
fi
addShare() {
local dir="$1"
local name="$2"
@ -107,10 +111,24 @@ done
if ! smbd; then
error "Samba daemon failed to start!"
smbd -i --debug-stdout || true
else
if [[ "${NETWORK,,}" == "user"* ]]; then
NET_OPTS="${NET_OPTS/,hostfwd/,guestfwd=tcp:${VM_NET_IP%.*}.1:445-tcp:127.0.0.1:445,hostfwd}"
fi
fi
# Enable Web Service Discovery
wsdd -i "$interface" -p -n "$hostname" &
echo "$!" > /var/run/wsdd.pid
[[ "${NETWORK,,}" == "user"* ]] && return 0
if [[ "${BOOT_MODE:-}" == "windows_legacy" ]]; then
# Enable NetBIOS on Windows 7 and lower
if ! nmbd; then
error "NetBIOS daemon failed to start!"
nmbd -i --debug-stdout || true
fi
else
# Enable Web Service Discovery on Vista and up
wsdd -i "$interface" -p -n "$hostname" &
echo "$!" > /var/run/wsdd.pid
fi
return 0