summaryrefslogtreecommitdiff
path: root/source3/script/tests/functions
diff options
context:
space:
mode:
Diffstat (limited to 'source3/script/tests/functions')
-rw-r--r--source3/script/tests/functions38
1 files changed, 38 insertions, 0 deletions
diff --git a/source3/script/tests/functions b/source3/script/tests/functions
index 0969c98724..4cc8d4a2c0 100644
--- a/source3/script/tests/functions
+++ b/source3/script/tests/functions
@@ -2,3 +2,41 @@
## library file for test functions
##
+##
+## start/stop smbd daemon
+##
+check_smbd_running()
+{
+ ## the smbcontrol ping will return a 0 on success
+ smbcontrol $CONFIGURATION smbd ping 2>&1 > /dev/null
+}
+
+start_smbd()
+{
+ echo "Starting smbd...."
+
+ smbd $CONFIGURATION || return $?
+
+ sleep 1
+
+ smbcontrol $CONFIGURATION `cat $PIDDIR/smbd.pid` ping 2>&1 > /dev/null || return $?
+}
+
+stop_smbd()
+{
+ smbd_pid=`cat $PIDDIR/smbd.pid`
+ echo "Shutting down smbd (pid $smbd_pid)..."
+
+ ## belt and braces; first kill and then send a shutdown message
+
+ kill -TERM $smbd_pid
+ smbcontrol $CONFIGURATION smbd shutdown
+
+ ## check to see if smbd is already running
+ check_smbd_running
+ if test $? == 0; then
+ echo "Unable to stop smbd!"
+ exit 2
+ fi
+}
+