#!/bin/bash

CONF_FILE="$HOME/.smb/retro-smb.conf"

start() {
    if [ ! -f "$CONF_FILE" ]; then
        echo "Fehler: Konfigurationsdatei $CONF_FILE nicht gefunden!"
        exit 1
    fi

    if pgrep -f "smbd -s $CONF_FILE" > /dev/null; then
        echo "Retro-Samba läuft bereits."
        exit 0
    fi

    echo "Starte isolierten Retro-Samba Server..."
    sudo smbd -s "$CONF_FILE"
    sudo nmbd -s "$CONF_FILE"
    echo "Retro-Samba erfolgreich gestartet."
    echo "Füge Firewall Regeln hinzu (sichere derzeitigen Zustand)..."
    retro-ufw.sh start
}

stop() {
    echo "Stoppe Retro-Samba Server..."
    sudo pkill -f "smbd -s $CONF_FILE" 2>/dev/null
    sudo pkill -f "nmbd -s $CONF_FILE" 2>/dev/null
    echo "Retro-Samba erfolgreich gestoppt."
    echo "Entferne Firewall Regeln (zurück zum vorherigen Zustand)..."
    retro-ufw.sh stop
}

status() {
    if pgrep -f "smbd -s $CONF_FILE" > /dev/null; then
        echo "Status: Aktiv (Retro-Samba läuft)"
    else
        echo "Status: Inaktiv (Retro-Samba ist gestoppt)"
    fi
    retro-ufw.sh status
}

case "$1" in
    start)
        start
        ;;
    stop)
        stop
        ;;
    restart)
        stop
        sleep 1
        start
        ;;
    status)
        status
        ;;
    *)
        echo "Verwendung: $0 {start|stop|restart|status}"
        exit 1
esac

