Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 28938 | Differences between
and this patch

Collapse All | Expand All

(-)samba (-12 / +49 lines)
Lines 5-38 Link Here
5
5
6
opts="${opts} reload"
6
opts="${opts} reload"
7
7
8
DAEMONTOOLSDIR="/var/daemontools/smbd"
9
DAEMONTOOLSDIR2="/var/daemontools/nmbd"
10
8
depend() {
11
depend() {
9
	need net
12
	need net
10
	use cupsd
13
	use cupsd
11
}
14
}
12
15
13
start() {
16
start() {
14
	ebegin "Starting samba"
17
	if [ -x /usr/bin/svc ] && [ -x "${DAEMONTOOLSDIR}/run" ] \
15
	start-stop-daemon --start --quiet --exec /usr/sbin/smbd
18
		&& [ ! -f "${DAEMONTOOLSDIR}/noinit" ]
16
	result=$?
19
	then
17
	start-stop-daemon --start --quiet --exec /usr/sbin/nmbd
20
		ebegin "Starting supervised samba"
21
		/usr/bin/pgrphack /usr/bin/supervise "${DAEMONTOOLSDIR}" | \
22
			/usr/bin/pgrphack /usr/bin/supervise "${DAEMONTOOLSDIR}/log" &
23
		result=$?
24
		/usr/bin/pgrphack /usr/bin/supervise "${DAEMONTOOLSDIR2}" | \
25
			/usr/bin/pgrphack /usr/bin/supervise "${DAEMONTOOLSDIR2}/log" &
26
	else
27
		ebegin "Starting samba"
28
		start-stop-daemon --start --quiet --exec /usr/sbin/smbd
29
		result=$?
30
		start-stop-daemon --start --quiet --exec /usr/sbin/nmbd
31
	fi
18
	result=$(( $result + $? ))
32
	result=$(( $result + $? ))
19
	eend $result
33
	eend $result
20
}
34
}
21
35
22
stop() {
36
stop() {
23
	ebegin "Stopping samba"
37
	ebegin "Stopping samba"
24
	start-stop-daemon --stop --quiet --pidfile /var/run/samba/smbd.pid
38
	if [ -x /usr/bin/svok ] && /usr/bin/svok "$DAEMONTOOLSDIR"
25
	result=$?
39
	then
26
	start-stop-daemon --stop --quiet --pidfile /var/run/samba/nmbd.pid
40
		/usr/bin/svc -dx "${DAEMONTOOLSDIR}" "${DAEMONTOOLSDIR}/log" \
27
	result=$(( $result + $? ))
41
			"${DAEMONTOOLSDIR2}" "${DAEMONTOOLSDIR2}/log"
42
		result=$?
43
	else
44
		start-stop-daemon --stop --quiet --pidfile /var/run/samba/smbd.pid
45
		result=$?
46
		start-stop-daemon --stop --quiet --pidfile /var/run/samba/nmbd.pid
47
		result=$(( $result + $? ))
48
	fi
28
	eend $result
49
	eend $result
29
}
50
}
30
51
31
reload() {
52
reload() {
32
	ebegin "Reloading samba"
53
	ebegin "Reloading samba"
33
	killall -HUP smbd &>/dev/null
54
	if [ -x /usr/bin/svok ] && /usr/bin/svok "$DAEMONTOOLSDIR"
34
	result=$?
55
	then
35
	killall -HUP nmbd &>/dev/null
56
		/usr/bin/svc -h "${DAEMONTOOLSDIR}" "${DAEMONTOOLSDIR2}"
36
	result=$(( $result + $? ))
57
		result=$?
58
	else
59
		killall -HUP smbd &>/dev/null
60
		result=$?
61
		killall -HUP nmbd &>/dev/null
62
		result=$(( $result + $? ))
63
	fi
37
	eend $result
64
	eend $result
38
}
65
}
66
67
status() {
68
	if [ -x /usr/bin/svok ] && /usr/bin/svok "$DAEMONTOOLSDIR"
69
	then
70
		einfo `/usr/bin/svstat "${DAEMONTOOLSDIR}"`
71
		einfo `/usr/bin/svstat "${DAEMONTOOLSDIR}/log"`
72
		einfo `/usr/bin/svstat "${DAEMONTOOLSDIR2}"`
73
		einfo `/usr/bin/svstat "${DAEMONTOOLSDIR2}/log"`
74
	fi
75
}

Return to bug 28938