#!/bin/sh

# Source networking configuration.
. /etc/sysconfig/network
 
#if [ -f /etc/sysconfig/samba ]; then
#   . /etc/sysconfig/samba
#fi
# We currently don't care about /etc/sysconfig/samba, but that may change.

status=$(/sbin/e-smith/config getprop smb status)
if [ "$status" = "disabled" ]
then
    /sbin/e-smith/config setprop smbd status disabled
    sv d .
    exit
fi

smbd=/usr/sbin/smbd

[ -f $smbd ] || exit 1
 
# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 1
 
# Check that smb.conf exists.
[ -f /etc/samba/smb.conf ] || exit 1
 
# Check that we can write to it... so non-root users stop here
[ -w /etc/samba/smb.conf ] || exit 1

# Delete the printing.tdb file if it exists to force it to rebuild.
rm -f /var/cache/samba/printing.tdb

# Backup critical tdb files
for tdb in /etc/samba/secrets \
           /var/cache/samba/account_policy \
           /var/cache/samba/group_mapping \
           /var/cache/samba/ntdrivers \
           /var/cache/samba/ntforms \
           /var/cache/samba/ntprinters \
           /var/cache/samba/registry \
           /var/cache/samba/share_info
do
    [ -r "$tdb.tdb" ] && tdbbackup "$tdb.tdb" .bak
done

exec 2>&1
exec $smbd -F
