Don't compute attributes string twice.
[paraslash.git] / server.ggo
1 section "General options"
2 #~~~~~~~~~~~~~~~~~~~~~~~~
3
4 option "loglevel" l
5 #~~~~~~~~~~~~~~~~~~
6
7 "set loglevel (0-6)"
8
9 int typestr="level"
10 default="4"
11 optional
12
13 option "port" p
14 #~~~~~~~~~~~~~~
15
16 "listening port"
17
18 int typestr="portnumber"
19 default="2990"
20 optional
21
22 option "daemon" d
23 #~~~~~~~~~~~~~~~~
24
25 "run as background daemon"
26
27 flag off
28
29 option "user" u
30 #~~~~~~~~~~~~~~
31
32 "run as user 'name'. para_server does not
33 need any special privileges. If started as
34 root (EUID == 0) this option must be given at
35 the command line (not in the configuration
36 file) so that para_server can drop the root
37 privileges right after parsing the command
38 line options, but before parsing the
39 configuration file. In this case,
40 real/effective/saved UID are all set to the
41 UID of 'name'. As the configuration file
42 is read afterwards, those options that have a
43 default value depending on the UID (e.g. the
44 directory for the configuration file) are
45 computed by using the uid of 'name'.
46 This option has no effect if para_server is
47 started as a non-root user (i.e. EUID != 0)"
48
49 string typestr="name"
50 optional
51
52
53 option "group" g
54 #~~~~~~~~~~~~~~~
55
56 "set group id to according to 'group'. This
57 option is silently ignored if EUID != 0.
58 Otherwise, real/effective GID and the saved
59 set-group ID are all set to the GID given by
60 'group'. Must not be given in the config file."
61
62 string typestr="group"
63 optional
64
65
66
67 section "Configuration files"
68 #~~~~~~~~~~~~~~~~~~~~~~~~~~~~
69
70
71 option "logfile" L
72 #~~~~~~~~~~~~~~~~~
73
74 "(default=stdout/stderr)"
75
76 string typestr="filename"
77 optional
78
79 option "config_file" c
80 #~~~~~~~~~~~~~~~~~~~~~
81
82 "(default='~/.paraslash/server.conf'"
83
84 string typestr="filename"
85 optional
86
87 option "user_list" -
88 #~~~~~~~~~~~~~~~~~~~
89
90 "(default='~/.paraslash/server.users')"
91
92 string typestr="filename"
93 optional
94
95
96
97 section "virtual streaming system"
98 #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
99
100
101 option "autoplay" a
102 #~~~~~~~~~~~~~~~~~~
103
104 "start playing on startup"
105
106 flag off
107
108 option "autoplay_delay" -
109 #~~~~~~~~~~~~~~~~~~~~~~~~
110 "Time to wait before autoplay starts. Ignored if
111 autoplay is off."
112 int typestr="milliseconds"
113 default="0"
114 optional
115
116
117 option "announce_time" A
118 #~~~~~~~~~~~~~~~~~~~~~~~
119
120 "Delay betweeen announcing the stream and sending data"
121
122 int typestr="milliseconds"
123 default="300"
124 optional
125
126
127 option "selector" S
128 #~~~~~~~~~~~~~~~~~~
129
130 "(default=random)"
131
132 string typestr="name"
133 optional
134
135 #############################
136 section "audio file selector"
137 #############################
138
139 option "afs_database_dir" D
140 #~~~~~~~~~~~~~~~~~~~~~~~~~~
141
142 "Directory containing the osl database of the
143 audio file selector.
144 (default='~/.paraslash/afs_database'"
145
146 string typestr="path"
147 optional
148
149
150 option "afs_socket" s
151 #~~~~~~~~~~~~~~~~~~~~
152
153 "Command socket for the audio file selector"
154
155 string typestr="path"
156 default="/var/paraslash/afs_command_socket"
157 optional
158
159 option "afs_initial_mode" i
160 #~~~~~~~~~~~~~~~~~~~~~~~~~~
161
162 "Mood or playlist to load on startup. Must be
163 prefixed with either 'p:' or 'm:' to indicate
164 whether a playlist or a mood should be
165 loaded. Example:
166 --afs_initial_mode p:foo
167 loads the playlist named 'foo'."
168
169 string typestr="aspecifier>:<name>"
170 optional
171
172
173
174 section "http sender"
175 #~~~~~~~~~~~~~~~~~~~~
176
177
178 option "http_port" -
179 #~~~~~~~~~~~~~~~~~~~
180
181 "tcp port for http streaming"
182
183 int typestr="portnumber"
184 default="8000"
185 optional
186
187 option "http_default_deny" -
188 #~~~~~~~~~~~~~~~~~~~~~~~~~~~
189
190 "deny connections from hosts which are not
191 explicitly allowed"
192
193 flag off
194
195 option "http_access" -
196 #~~~~~~~~~~~~~~~~~~~~~
197
198 "Add given host/network to access control
199 list (whitelist if http_default_deny was
200 given, blacklist otherwise) before opening
201 the tcp port. This option can be given
202 multiple times. Example: '192.168.0.0/24'
203 whitelists/blacklists the 256 hosts
204 192.168.0.x"
205
206 string typestr="a.b.c.d/n"
207 optional
208 multiple
209
210 option "http_no_autostart" -
211 #~~~~~~~~~~~~~~~~~~~~~~~~~~~
212
213 "do not open tcp port on server startup"
214
215 flag off
216
217 option "http_max_clients" -
218 #~~~~~~~~~~~~~~~~~~~~~~~~~~
219
220 "maximal simultaneous connections,
221 non-positive value means unlimited"
222
223 int typestr="number"
224 default="-1"
225 optional
226
227
228
229
230 section "dccp sender"
231 #~~~~~~~~~~~~~~~~~~~~
232
233
234 option "dccp_port" -
235 #~~~~~~~~~~~~~~~~~~~
236
237 "port for dccp streaming"
238
239 int typestr="portnumber"
240 default="5001"
241 optional
242
243
244
245
246 section "ortp sender"
247 #~~~~~~~~~~~~~~~~~~~~
248
249 option "ortp_target" -
250 #~~~~~~~~~~~~~~~~~~~~~
251
252 "Add given host/port to the list of targets.
253 This option can be given multiple times.
254 Example: '224.0.1.38:1500' instructs the ortp
255 sender to send to udp port 1500 on host
256 224.0.1.38 (unassigned ip in the Local
257 Network Control Block 224.0.0/24). This is
258 useful for LAN-streaming."
259
260 string typestr="a.b.c.d:p"
261 optional
262 multiple
263
264 option "ortp_no_autostart" -
265 #~~~~~~~~~~~~~~~~~~~~~~~~~~~
266
267 "do not start to send automatically"
268
269 flag off
270
271 option "ortp_default_port" -
272 #~~~~~~~~~~~~~~~~~~~~~~~~~~~
273
274 "default udp port if not specified"
275
276 int typestr="portnumber"
277 default="1500"
278 optional
279
280 option "ortp_header_interval" H
281 #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
282
283 "time between extra header sends"
284
285 int typestr="milliseconds"
286 default="2000"
287 optional
288
289 option "ortp_jitter_compensation" j
290 #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
291
292 "non-zero values enable ortp's adaptive
293 jitter compensation"
294
295 int typestr="milliseconds"
296 default="400"
297 optional