]>
Commit | Line | Data |
---|---|---|
5050c3ce | 1 | #!/bin/sh |
13e64915 | 2 | # chkconfig: 345 91 35 |
3 | # description: This package enables Linux to talk to Macintosh computers via the \ | |
4 | # AppleTalk networking protocol. It includes a daemon to allow Linux \ | |
5 | # to act as a file server over EtherTalk or IP for Mac's. | |
5050c3ce | 6 | # processname: atalkd |
7 | # pidfile: /var/run/atalkd.pid | |
8 | # config: /etc/atalk/* | |
9 | ||
10 | # Source function library. | |
11 | . /etc/rc.d/init.d/functions | |
12 | ||
13 | # Source networking configuration. | |
14 | . /etc/sysconfig/network | |
15 | ||
16 | # Source Appletalk configuration | |
17 | . /etc/sysconfig/netatalk | |
18 | ||
19 | # Check that networking is up. | |
f4861628 | 20 | if is_yes "${NETWORKING}"; then |
21 | if [ ! -f /var/lock/subsys/network ]; then | |
22 | msg_network_down AppleTalk | |
23 | exit 1 | |
24 | fi | |
25 | else | |
26 | exit 0 | |
5050c3ce | 27 | fi |
f4861628 | 28 | |
5050c3ce | 29 | #check atalkd.conf exit |
30 | #[ -f /etc/atalk/atalkd.conf ] || exit 0 | |
f4861628 | 31 | |
151dda4f | 32 | RETVAL=0 |
5050c3ce | 33 | case "$1" in |
13e64915 | 34 | start) |
151dda4f | 35 | if [ ! -f /var/lock/subsys/atalk ]; then |
36 | _insmod single -f /lib/modules/`uname -r`/misc/appletalk.o | |
37 | if [ "$ATALK_BGROUND" = yes ]; then | |
38 | # nls -n "(backgrounded)" | |
39 | msg_starting AppleTalk | |
40 | daemon atalkd | |
41 | nbprgstr -p 4 "${ATALK_NAME}:Workstation" | |
42 | nbprgstr -p 4 "${ATALK_NAME}:netatalk" | |
b6a0f372 | 43 | if [ ${PAPD_RUN} = yes ]; then |
151dda4f | 44 | msg_starting papd |
45 | daemon papd | |
46 | fi | |
b6a0f372 | 47 | if [ ${AFPD_RUN} = yes ]; then |
151dda4f | 48 | msg_starting afpd |
49 | daemon afpd -c ${AFPD_MAX_CLIENTS} -n ${ATALK_NAME} | |
50 | fi | |
51 | >/dev/null & | |
5050c3ce | 52 | fi |
151dda4f | 53 | else |
54 | msg_already_running AppleTalk | |
13e64915 | 55 | fi |
5050c3ce | 56 | touch /var/lock/subsys/atalk |
13e64915 | 57 | ;; |
58 | stop) | |
151dda4f | 59 | if [ -f /var/lock/subsys/atalk ]; then |
60 | if [ "$ATALK_BGROUND" = yes ]; then | |
61 | msg_stopping afpd | |
62 | killproc afpd | |
63 | msg_stopping papd | |
64 | killproc papd | |
65 | nbpunrgstr "${ATALK_NAME}:Workstation@*" | |
66 | nbpunrgstr "${ATALK_NAME}:netatalk@*" | |
67 | msg_stopping AppleTalk | |
68 | killproc atalkd | |
69 | fi | |
70 | # Attempt to zap the module, so that we can restart the | |
71 | # Appletalk daemons cleanly | |
b6a0f372 | 72 | if [ -e /proc/modules ] && [ -x /sbin/modprobe ]; then |
151dda4f | 73 | modprobe -r appletalk |
74 | fi | |
13e64915 | 75 | rm -f /var/lock/subsys/atalk >/dev/null 2>&1 |
76 | else | |
151dda4f | 77 | msg_not_running AppleTalk |
13e64915 | 78 | fi |
5050c3ce | 79 | ;; |
151dda4f | 80 | restart|force-reload) |
5050c3ce | 81 | $0 stop |
82 | $0 start | |
151dda4f | 83 | exit $? |
5050c3ce | 84 | ;; |
13e64915 | 85 | status) |
5050c3ce | 86 | status atalkd |
151dda4f | 87 | RETVAL=? |
5050c3ce | 88 | status papd |
151dda4f | 89 | [ $RETVAL -eq 0 ] && RETVAL=? |
5050c3ce | 90 | status afpd |
151dda4f | 91 | [ $RETVAL -eq 0 ] && RETVAL=? |
5050c3ce | 92 | ;; |
13e64915 | 93 | *) |
151dda4f | 94 | msg_usage "$0 {start|stop|restart|force-reload|status}" |
95 | exit 3 | |
5050c3ce | 96 | esac |
97 | ||
151dda4f | 98 | exit $RETVAL |