]>
Commit | Line | Data |
---|---|---|
605217e9 AB |
1 | #!/bin/sh |
2 | ############################################################################### | |
3 | # # | |
4 | # IPFire.org - A linux based firewall # | |
5 | # Copyright (C) 2007-2024 IPFire Team <info@ipfire.org> # | |
6 | # # | |
7 | # This program is free software: you can redistribute it and/or modify # | |
8 | # it under the terms of the GNU General Public License as published by # | |
9 | # the Free Software Foundation, either version 3 of the License, or # | |
10 | # (at your option) any later version. # | |
11 | # # | |
12 | # This program is distributed in the hope that it will be useful, # | |
13 | # but WITHOUT ANY WARRANTY; without even the implied warranty of # | |
14 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # | |
15 | # GNU General Public License for more details. # | |
16 | # # | |
17 | # You should have received a copy of the GNU General Public License # | |
18 | # along with this program. If not, see <http://www.gnu.org/licenses/>. # | |
19 | # # | |
20 | ############################################################################### | |
21 | ||
22 | . /etc/sysconfig/rc | |
23 | . $rc_functions | |
24 | ||
25 | eval $(/usr/local/bin/readhash /var/ipfire/ethernet/settings) | |
26 | ||
5cf3bc35 MT |
27 | PIDFILE="/var/run/wsdd.pid" |
28 | ||
06c2bfa3 MT |
29 | case "$1" in |
30 | start) | |
31 | ARGS=( | |
32 | # Launch as non-privileged user | |
33 | "--user" "wsdd:wsdd" | |
bb88fd1b | 34 | |
06c2bfa3 MT |
35 | # Launch in chroot |
36 | "--chroot" "/var/run/wsdd" | |
bb88fd1b | 37 | |
06c2bfa3 MT |
38 | # Only use IPv4 |
39 | "--ipv4only" | |
43c2dc93 | 40 | |
06c2bfa3 MT |
41 | # Configure the workgroup |
42 | "--workgroup" "$(testparm -s --parameter-name workgroup 2>/dev/null)" | |
43 | ) | |
bb88fd1b | 44 | |
06c2bfa3 MT |
45 | # Conditionally add the GREEN/BLUE interface |
46 | for intf in GREEN_DEV BLUE_DEV; do | |
47 | if [ -n "${!intf}" ]; then | |
48 | ARGS+=( "--interface" "${!intf}" ) | |
49 | fi | |
50 | done | |
605217e9 | 51 | |
bf3f602e MT |
52 | # Create chroot directory for wsdd |
53 | mkdir -p /var/run/wsdd | |
54 | ||
2ee8edb8 | 55 | boot_mesg "Starting Web Service Discovery Host Daemon..." |
749b93c6 | 56 | loadproc -b -p "${PIDFILE}" /usr/bin/wsdd "${ARGS[@]}" |
b95afd6a MT |
57 | ;; |
58 | ||
59 | stop) | |
2ee8edb8 | 60 | boot_mesg "Stopping Web Service Discovery Host Daemon..." |
b95afd6a MT |
61 | killproc -p "${PIDFILE}" /usr/bin/wsdd |
62 | ;; | |
63 | ||
64 | status) | |
5cf3bc35 | 65 | statusproc /usr/bin/wsdd |
b95afd6a MT |
66 | ;; |
67 | ||
c082a0cc MT |
68 | restart) |
69 | $0 stop | |
70 | $0 start | |
71 | ;; | |
72 | ||
b95afd6a | 73 | *) |
c082a0cc | 74 | echo "Usage: $0 (start|stop|status|restart)" |
b95afd6a MT |
75 | exit 1 |
76 | ;; | |
605217e9 AB |
77 | esac |
78 |