1 /*
2 * Copyright (C) 1998,1999,2000,2001 Ross Combs (rocombs@cs.nmsu.edu)
3 * Copyright (C) 1999 Rob Crittenden (rcrit@greyoak.com)
4 * Copyright (C) 1999 Mark Baysinger (mbaysing@ucsd.edu)
5 * Copyright (C) 2004,2005 Dizzy
6 *
7 * This program is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU General Public License
9 * as published by the Free Software Foundation; either version 2
10 * of the License, or (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, write to the Free Software
19 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
20 */
21 #define PREFS_INTERNAL_ACCESS
22 #include "common/setup_before.h"
23 #include <stdio.h>
24 #ifdef HAVE_STDDEF_H
25 # include <stddef.h>
26 #else
27 # ifndef NULL
28 # define NULL ((void *)0)
29 # endif
30 #endif
31 #ifdef STDC_HEADERS
32 # include <stdlib.h>
33 #else
34 # ifdef HAVE_MALLOC_H
35 # include <malloc.h>
36 # endif
37 #endif
38 #ifdef HAVE_STRING_H
39 # include <string.h>
40 #else
41 # ifdef HAVE_STRINGS_H
42 # include <strings.h>
43 # endif
44 #endif
45 #include "compat/strdup.h"
46 #include "compat/strcasecmp.h"
47 #include <errno.h>
48 #include "compat/strerror.h"
49 #include <ctype.h>
50 #include "common/util.h"
51 #include "common/eventlog.h"
52 #include "common/xalloc.h"
53 #include "common/conf.h"
54 #include "prefs.h"
55 #include "common/setup_after.h"
56
57 #define NONE 0
58
59 static struct {
60 /* files and paths */
61 char const * filedir;
62 char const * storage_path;
63 char const * logfile;
64 char const * loglevels;
65 char const * motdfile;
66 char const * newsfile;
67 char const * channelfile;
68 char const * pidfile;
69 char const * adfile;
70 char const * topicfile;
71 char const * DBlayoutfile;
72
73 unsigned int usersync;
74 unsigned int userflush;
75 unsigned int userstep;
76
77 char const * servername;
78 char const * hostname;
79
80 unsigned int track;
81 char const * location;
82 char const * description;
83 char const * url;
84 char const * contact_name;
85 char const * contact_email;
86 unsigned int latency;
87 unsigned int irc_latency;
88 unsigned int shutdown_delay;
89 unsigned int shutdown_decr;
90 unsigned int new_accounts;
91 unsigned int max_accounts;
92 unsigned int kick_old_login;
93 unsigned int ask_new_channel;
94 unsigned int hide_pass_games;
95 unsigned int hide_started_games;
96 unsigned int hide_temp_channels;
97 unsigned int hide_addr;
98 unsigned int enable_conn_all;
99 unsigned int extra_commands;
100 char const * reportdir;
101 unsigned int report_all_games;
102 unsigned int report_diablo_games;
103 char const * iconfile;
104 char const * war3_iconfile;
105 char const * star_iconfile;
106 char const * tosfile;
107 char const * mpqfile;
108 char const * trackaddrs;
109 char const * servaddrs;
110 char const * w3routeaddr;
111 char const * ircaddrs;
112 unsigned int use_keepalive;
113 unsigned int udptest_port;
114 char const * ipbanfile;
115 unsigned int disc_is_loss;
116 char const * helpfile;
117 char const * fortunecmd;
118 char const * transfile;
119 unsigned int chanlog;
120 char const * chanlogdir;
121 unsigned int quota;
122 unsigned int quota_lines;
123 unsigned int quota_time;
124 unsigned int quota_wrapline;
125 unsigned int quota_maxline;
126 unsigned int ladder_init_rating;
127 unsigned int quota_dobae;
128 char const * realmfile;
129 char const * issuefile;
130 char const * effective_user;
131 char const * effective_group;
132 unsigned int nullmsg;
133 unsigned int mail_support;
134 unsigned int mail_quota;
135 char const * maildir;
136 char const * log_notice;
137 unsigned int savebyname;
138 unsigned int skip_versioncheck;
139 unsigned int allow_bad_version;
140 unsigned int allow_unknown_version;
141 char const * versioncheck_file;
142 unsigned int d2cs_version;
143 unsigned int allow_d2cs_setname;
144 unsigned int hashtable_size;
145 char const * telnetaddrs;
146 unsigned int ipban_check_int;
147 char const * version_exeinfo_match;
148 unsigned int version_exeinfo_maxdiff;
149 unsigned int max_concurrent_logins;
150 char const * server_info;
151 char const * mapsfile;
152 char const * xplevelfile;
153 char const * xpcalcfile;
154 unsigned int initkill_timer;
155 unsigned int war3_ladder_update_secs;
156 unsigned int output_update_secs;
157 char const * ladderdir;
158 char const * statusdir;
159 unsigned int XML_output_ladder;
160 unsigned int XML_status_output;
161 char const * account_allowed_symbols;
162 unsigned int account_force_username;
163 char const * command_groups_file;
164 char const * tournament_file;
165 char const * aliasfile;
166 char const * anongame_infos_file;
167 unsigned int max_conns_per_IP;
168 unsigned int max_friends;
169 unsigned int clan_newer_time;
170 unsigned int clan_max_members;
171 unsigned int clan_channel_default_private;
172 unsigned int passfail_count;
173 unsigned int passfail_bantime;
174 unsigned int maxusers_per_channel;
175 char const * supportfile;
176 char const * allowed_clients;
177 char const * ladder_games;
178 char const * ladder_prefix;
179 unsigned int max_connections;
180 unsigned int sync_on_logoff;
181 char const * irc_network_name;
182
183 char const * woladdrs;
184 char const * woltimezone;
185 char const * wollongitude;
186 char const * wollatitude;
187 } prefs_runtime_config;
188
189 static int conf_set_filedir(const char *valstr);
190 static const char *conf_get_filedir(void);
191 static int conf_setdef_filedir(void);
192
193 static int conf_set_storage_path(const char *valstr);
194 static const char *conf_get_storage_path(void);
195 static int conf_setdef_storage_path(void);
196
197 static int conf_set_logfile(const char *valstr);
198 static const char *conf_get_logfile(void);
199 static int conf_setdef_logfile(void);
200
201 static int conf_set_loglevels(const char *valstr);
202 static const char *conf_get_loglevels(void);
203 static int conf_setdef_loglevels(void);
204
205 static int conf_set_motdfile(const char *valstr);
206 static const char *conf_get_motdfile(void);
207 static int conf_setdef_motdfile(void);
208
209 static int conf_set_newsfile(const char *valstr);
210 static const char *conf_get_newsfile(void);
211 static int conf_setdef_newsfile(void);
212
213 static int conf_set_channelfile(const char *valstr);
214 static const char *conf_get_channelfile(void);
215 static int conf_setdef_channelfile(void);
216
217 static int conf_set_pidfile(const char *valstr);
218 static const char *conf_get_pidfile(void);
219 static int conf_setdef_pidfile(void);
220
221 static int conf_set_adfile(const char *valstr);
222 static const char *conf_get_adfile(void);
223 static int conf_setdef_adfile(void);
224
225 static int conf_set_topicfile(const char *valstr);
226 static const char *conf_get_topicfile(void);
227 static int conf_setdef_topicfile(void);
228
229 static int conf_set_DBlayoutfile(const char *valstr);
230 static const char *conf_get_DBlayoutfile(void);
231 static int conf_setdef_DBlayoutfile(void);
232
233 static int conf_set_supportfile(const char *valstr);
234 static const char *conf_get_supportfile(void);
235 static int conf_setdef_supportfile(void);
236
237 static int conf_set_usersync(const char *valstr);
238 static const char *conf_get_usersync(void);
239 static int conf_setdef_usersync(void);
240
241 static int conf_set_userflush(const char *valstr);
242 static const char *conf_get_userflush(void);
243 static int conf_setdef_userflush(void);
244
245 static int conf_set_userstep(const char *valstr);
246 static const char *conf_get_userstep(void);
247 static int conf_setdef_userstep(void);
248
249 static int conf_set_servername(const char *valstr);
250 static const char *conf_get_servername(void);
251 static int conf_setdef_servername(void);
252
253 static int conf_set_hostname(const char *valstr);
254 static const char *conf_get_hostname(void);
255 static int conf_setdef_hostname(void);
256
257 static int conf_set_track(const char *valstr);
258 static const char *conf_get_track(void);
259 static int conf_setdef_track(void);
260
261 static int conf_set_location(const char *valstr);
262 static const char *conf_get_location(void);
263 static int conf_setdef_location(void);
264
265 static int conf_set_description(const char *valstr);
266 static const char *conf_get_description(void);
267 static int conf_setdef_description(void);
268
269 static int conf_set_url(const char *valstr);
270 static const char *conf_get_url(void);
271 static int conf_setdef_url(void);
272
273 static int conf_set_contact_name(const char *valstr);
274 static const char *conf_get_contact_name(void);
275 static int conf_setdef_contact_name(void);
276
277 static int conf_set_contact_email(const char *valstr);
278 static const char *conf_get_contact_email(void);
279 static int conf_setdef_contact_email(void);
280
281 static int conf_set_latency(const char *valstr);
282 static const char *conf_get_latency(void);
283 static int conf_setdef_latency(void);
284
285 static int conf_set_irc_latency(const char *valstr);
286 static const char *conf_get_irc_latency(void);
287 static int conf_setdef_irc_latency(void);
288
289 static int conf_set_shutdown_delay(const char *valstr);
290 static const char *conf_get_shutdown_delay(void);
291 static int conf_setdef_shutdown_delay(void);
292
293 static int conf_set_shutdown_decr(const char *valstr);
294 static const char *conf_get_shutdown_decr(void);
295 static int conf_setdef_shutdown_decr(void);
296
297 static int conf_set_new_accounts(const char *valstr);
298 static const char *conf_get_new_accounts(void);
299 static int conf_setdef_new_accounts(void);
300
301 static int conf_set_max_accounts(const char *valstr);
302 static const char *conf_get_max_accounts(void);
303 static int conf_setdef_max_accounts(void);
304
305 static int conf_set_kick_old_login(const char *valstr);
306 static const char *conf_get_kick_old_login(void);
307 static int conf_setdef_kick_old_login(void);
308
309 static int conf_set_ask_new_channel(const char *valstr);
310 static const char *conf_get_ask_new_channel(void);
311 static int conf_setdef_ask_new_channel(void);
312
313 static int conf_set_hide_pass_games(const char *valstr);
314 static const char *conf_get_hide_pass_games(void);
315 static int conf_setdef_hide_pass_games(void);
316
317 static int conf_set_hide_started_games(const char *valstr);
318 static const char *conf_get_hide_started_games(void);
319 static int conf_setdef_hide_started_games(void);
320
321 static int conf_set_hide_temp_channels(const char *valstr);
322 static const char *conf_get_hide_temp_channels(void);
323 static int conf_setdef_hide_temp_channels(void);
324
325 static int conf_set_hide_addr(const char *valstr);
326 static const char *conf_get_hide_addr(void);
327 static int conf_setdef_hide_addr(void);
328
329 static int conf_set_enable_conn_all(const char *valstr);
330 static const char *conf_get_enable_conn_all(void);
331 static int conf_setdef_enable_conn_all(void);
332
333 static int conf_set_extra_commands(const char *valstr);
334 static const char *conf_get_extra_commands(void);
335 static int conf_setdef_extra_commands(void);
336
337 static int conf_set_reportdir(const char *valstr);
338 static const char *conf_get_reportdir(void);
339 static int conf_setdef_reportdir(void);
340
341 static int conf_set_report_all_games(const char *valstr);
342 static const char *conf_get_report_all_games(void);
343 static int conf_setdef_report_all_games(void);
344
345 static int conf_set_report_diablo_games(const char *valstr);
346 static const char *conf_get_report_diablo_games(void);
347 static int conf_setdef_report_diablo_games(void);
348
349 static int conf_set_iconfile(const char *valstr);
350 static const char *conf_get_iconfile(void);
351 static int conf_setdef_iconfile(void);
352
353 static int conf_set_war3_iconfile(const char *valstr);
354 static const char *conf_get_war3_iconfile(void);
355 static int conf_setdef_war3_iconfile(void);
356
357 static int conf_set_star_iconfile(const char *valstr);
358 static const char *conf_get_star_iconfile(void);
359 static int conf_setdef_star_iconfile(void);
360
361 static int conf_set_tosfile(const char *valstr);
362 static const char *conf_get_tosfile(void);
363 static int conf_setdef_tosfile(void);
364
365 static int conf_set_mpqfile(const char *valstr);
366 static const char *conf_get_mpqfile(void);
367 static int conf_setdef_mpqfile(void);
368
369 static int conf_set_trackaddrs(const char *valstr);
370 static const char *conf_get_trackaddrs(void);
371 static int conf_setdef_trackaddrs(void);
372
373 static int conf_set_servaddrs(const char *valstr);
374 static const char *conf_get_servaddrs(void);
375 static int conf_setdef_servaddrs(void);
376
377 static int conf_set_w3routeaddr(const char *valstr);
378 static const char *conf_get_w3routeaddr(void);
379 static int conf_setdef_w3routeaddr(void);
380
381 static int conf_set_ircaddrs(const char *valstr);
382 static const char *conf_get_ircaddrs(void);
383 static int conf_setdef_ircaddrs(void);
384
385 static int conf_set_use_keepalive(const char *valstr);
386 static const char *conf_get_use_keepalive(void);
387 static int conf_setdef_use_keepalive(void);
388
389 static int conf_set_udptest_port(const char *valstr);
390 static const char *conf_get_udptest_port(void);
391 static int conf_setdef_udptest_port(void);
392
393 static int conf_set_ipbanfile(const char *valstr);
394 static const char *conf_get_ipbanfile(void);
395 static int conf_setdef_ipbanfile(void);
396
397 static int conf_set_disc_is_loss(const char *valstr);
398 static const char *conf_get_disc_is_loss(void);
399 static int conf_setdef_disc_is_loss(void);
400
401 static int conf_set_helpfile(const char *valstr);
402 static const char *conf_get_helpfile(void);
403 static int conf_setdef_helpfile(void);
404
405 static int conf_set_fortunecmd(const char *valstr);
406 static const char *conf_get_fortunecmd(void);
407 static int conf_setdef_fortunecmd(void);
408
409 static int conf_set_transfile(const char *valstr);
410 static const char *conf_get_transfile(void);
411 static int conf_setdef_transfile(void);
412
413 static int conf_set_chanlog(const char *valstr);
414 static const char *conf_get_chanlog(void);
415 static int conf_setdef_chanlog(void);
416
417 static int conf_set_chanlogdir(const char *valstr);
418 static const char *conf_get_chanlogdir(void);
419 static int conf_setdef_chanlogdir(void);
420
421 static int conf_set_quota(const char *valstr);
422 static const char *conf_get_quota(void);
423 static int conf_setdef_quota(void);
424
425 static int conf_set_quota_lines(const char *valstr);
426 static const char *conf_get_quota_lines(void);
427 static int conf_setdef_quota_lines(void);
428
429 static int conf_set_quota_time(const char *valstr);
430 static const char *conf_get_quota_time(void);
431 static int conf_setdef_quota_time(void);
432
433 static int conf_set_quota_wrapline(const char *valstr);
434 static const char *conf_get_quota_wrapline(void);
435 static int conf_setdef_quota_wrapline(void);
436
437 static int conf_set_quota_maxline(const char *valstr);
438 static const char *conf_get_quota_maxline(void);
439 static int conf_setdef_quota_maxline(void);
440
441 static int conf_set_ladder_init_rating(const char *valstr);
442 static const char *conf_get_ladder_init_rating(void);
443 static int conf_setdef_ladder_init_rating(void);
444
445 static int conf_set_quota_dobae(const char *valstr);
446 static const char *conf_get_quota_dobae(void);
447 static int conf_setdef_quota_dobae(void);
448
449 static int conf_set_realmfile(const char *valstr);
450 static const char *conf_get_realmfile(void);
451 static int conf_setdef_realmfile(void);
452
453 static int conf_set_issuefile(const char *valstr);
454 static const char *conf_get_issuefile(void);
455 static int conf_setdef_issuefile(void);
456
457 static int conf_set_effective_user(const char *valstr);
458 static const char *conf_get_effective_user(void);
459 static int conf_setdef_effective_user(void);
460
461 static int conf_set_effective_group(const char *valstr);
462 static const char *conf_get_effective_group(void);
463 static int conf_setdef_effective_group(void);
464
465 static int conf_set_nullmsg(const char *valstr);
466 static const char *conf_get_nullmsg(void);
467 static int conf_setdef_nullmsg(void);
468
469 static int conf_set_mail_support(const char *valstr);
470 static const char *conf_get_mail_support(void);
471 static int conf_setdef_mail_support(void);
472
473 static int conf_set_mail_quota(const char *valstr);
474 static const char *conf_get_mail_quota(void);
475 static int conf_setdef_mail_quota(void);
476
477 static int conf_set_maildir(const char *valstr);
478 static const char *conf_get_maildir(void);
479 static int conf_setdef_maildir(void);
480
481 static int conf_set_log_notice(const char *valstr);
482 static const char *conf_get_log_notice(void);
483 static int conf_setdef_log_notice(void);
484
485 static int conf_set_savebyname(const char *valstr);
486 static const char *conf_get_savebyname(void);
487 static int conf_setdef_savebyname(void);
488
489 static int conf_set_skip_versioncheck(const char *valstr);
490 static const char *conf_get_skip_versioncheck(void);
491 static int conf_setdef_skip_versioncheck(void);
492
493 static int conf_set_allow_bad_version(const char *valstr);
494 static const char *conf_get_allow_bad_version(void);
495 static int conf_setdef_allow_bad_version(void);
496
497 static int conf_set_allow_unknown_version(const char *valstr);
498 static const char *conf_get_allow_unknown_version(void);
499 static int conf_setdef_allow_unknown_version(void);
500
501 static int conf_set_versioncheck_file(const char *valstr);
502 static const char *conf_get_versioncheck_file(void);
503 static int conf_setdef_versioncheck_file(void);
504
505 static int conf_set_d2cs_version(const char *valstr);
506 static const char *conf_get_d2cs_version(void);
507 static int conf_setdef_d2cs_version(void);
508
509 static int conf_set_allow_d2cs_setname(const char *valstr);
510 static const char *conf_get_allow_d2cs_setname(void);
511 static int conf_setdef_allow_d2cs_setname(void);
512
513 static int conf_set_hashtable_size(const char *valstr);
514 static const char *conf_get_hashtable_size(void);
515 static int conf_setdef_hashtable_size(void);
516
517 static int conf_set_telnetaddrs(const char *valstr);
518 static const char *conf_get_telnetaddrs(void);
519 static int conf_setdef_telnetaddrs(void);
520
521 static int conf_set_ipban_check_int(const char *valstr);
522 static const char *conf_get_ipban_check_int(void);
523 static int conf_setdef_ipban_check_int(void);
524
525 static int conf_set_version_exeinfo_match(const char *valstr);
526 static const char *conf_get_version_exeinfo_match(void);
527 static int conf_setdef_version_exeinfo_match(void);
528
529 static int conf_set_version_exeinfo_maxdiff(const char *valstr);
530 static const char *conf_get_version_exeinfo_maxdiff(void);
531 static int conf_setdef_version_exeinfo_maxdiff(void);
532
533 static int conf_set_max_concurrent_logins(const char *valstr);
534 static const char *conf_get_max_concurrent_logins(void);
535 static int conf_setdef_max_concurrent_logins(void);
536
537 static int conf_set_server_info(const char *valstr);
538 static const char *conf_get_server_info(void);
539 static int conf_setdef_server_info(void);
540
541 static int conf_set_mapsfile(const char *valstr);
542 static const char *conf_get_mapsfile(void);
543 static int conf_setdef_mapsfile(void);
544
545 static int conf_set_xplevelfile(const char *valstr);
546 static const char *conf_get_xplevelfile(void);
547 static int conf_setdef_xplevelfile(void);
548
549 static int conf_set_xpcalcfile(const char *valstr);
550 static const char *conf_get_xpcalcfile(void);
551 static int conf_setdef_xpcalcfile(void);
552
553 static int conf_set_initkill_timer(const char *valstr);
554 static const char *conf_get_initkill_timer(void);
555 static int conf_setdef_initkill_timer(void);
556
557 static int conf_set_war3_ladder_update_secs(const char *valstr);
558 static const char *conf_get_war3_ladder_update_secs(void);
559 static int conf_setdef_war3_ladder_update_secs(void);
560
561 static int conf_set_output_update_secs(const char *valstr);
562 static const char *conf_get_output_update_secs(void);
563 static int conf_setdef_output_update_secs(void);
564
565 static int conf_set_ladderdir(const char *valstr);
566 static const char *conf_get_ladderdir(void);
567 static int conf_setdef_ladderdir(void);
568
569 static int conf_set_statusdir(const char *valstr);
570 static const char *conf_get_statusdir(void);
571 static int conf_setdef_statusdir(void);
572
573 static int conf_set_XML_output_ladder(const char *valstr);
574 static const char *conf_get_XML_output_ladder(void);
575 static int conf_setdef_XML_output_ladder(void);
576
577 static int conf_set_XML_status_output(const char *valstr);
578 static const char *conf_get_XML_status_output(void);
579 static int conf_setdef_XML_status_output(void);
580
581 static int conf_set_account_allowed_symbols(const char *valstr);
582 static const char *conf_get_account_allowed_symbols(void);
583 static int conf_setdef_account_allowed_symbols(void);
584
585 static int conf_set_account_force_username(const char *valstr);
586 static const char *conf_get_account_force_username(void);
587 static int conf_setdef_account_force_username(void);
588
589 static int conf_set_command_groups_file(const char *valstr);
590 static const char *conf_get_command_groups_file(void);
591 static int conf_setdef_command_groups_file(void);
592
593 static int conf_set_tournament_file(const char *valstr);
594 static const char *conf_get_tournament_file(void);
595 static int conf_setdef_tournament_file(void);
596
597 static int conf_set_aliasfile(const char *valstr);
598 static const char *conf_get_aliasfile(void);
599 static int conf_setdef_aliasfile(void);
600
601 static int conf_set_anongame_infos_file(const char *valstr);
602 static const char *conf_get_anongame_infos_file(void);
603 static int conf_setdef_anongame_infos_file(void);
604
605 static int conf_set_max_conns_per_IP(const char *valstr);
606 static const char *conf_get_max_conns_per_IP(void);
607 static int conf_setdef_max_conns_per_IP(void);
608
609 static int conf_set_max_friends(const char *valstr);
610 static const char *conf_get_max_friends(void);
611 static int conf_setdef_max_friends(void);
612
613 static int conf_set_clan_newer_time(const char *valstr);
614 static const char *conf_get_clan_newer_time(void);
615 static int conf_setdef_clan_newer_time(void);
616
617 static int conf_set_clan_max_members(const char *valstr);
618 static const char *conf_get_clan_max_members(void);
619 static int conf_setdef_clan_max_members(void);
620
621 static int conf_set_clan_channel_default_private(const char *valstr);
622 static const char *conf_get_clan_channel_default_private(void);
623 static int conf_setdef_clan_channel_default_private(void);
624
625 static int conf_set_passfail_count(const char *valstr);
626 static const char *conf_get_passfail_count(void);
627 static int conf_setdef_passfail_count(void);
628
629 static int conf_set_passfail_bantime(const char *valstr);
630 static const char *conf_get_passfail_bantime(void);
631 static int conf_setdef_passfail_bantime(void);
632
633 static int conf_set_maxusers_per_channel(const char *valstr);
634 static const char *conf_get_maxusers_per_channel(void);
635 static int conf_setdef_maxusers_per_channel(void);
636
637 static int conf_set_allowed_clients(const char *valstr);
638 static const char *conf_get_allowed_clients(void);
639 static int conf_setdef_allowed_clients(void);
640
641 static int conf_set_ladder_games(const char *valstr);
642 static const char *conf_get_ladder_games(void);
643 static int conf_setdef_ladder_games(void);
644
645 static int conf_set_max_connections(const char *valstr);
646 static const char *conf_get_max_connections(void);
647 static int conf_setdef_max_connections(void);
648
649 static int conf_set_sync_on_logoff(const char *valstr);
650 static const char *conf_get_sync_on_logoff(void);
651 static int conf_setdef_sync_on_logoff(void);
652
653 static int conf_set_ladder_prefix(const char *valstr);
654 static const char *conf_get_ladder_prefix(void);
655 static int conf_setdef_ladder_prefix(void);
656
657 static int conf_setdef_irc_network_name(void);
658 static int conf_set_irc_network_name(const char *valstr);
659 static const char *conf_get_irc_network_name(void);
660
661
662 static int conf_setdef_wol_addrs(void);
663 static int conf_set_wol_addrs(const char *valstr);
664 static const char *conf_get_wol_addrs(void);
665
666 static int conf_set_wol_timezone(const char *valstr);
667 static const char *conf_get_wol_timezone(void);
668 static int conf_setdef_wol_timezone(void);
669
670 static int conf_set_wol_longitude(const char *valstr);
671 static const char *conf_get_wol_longitude(void);
672 static int conf_setdef_wol_longitude(void);
673
674 static int conf_set_wol_latitude(const char *valstr);
675 static const char *conf_get_wol_latitude(void);
676 static int conf_setdef_wol_latitude(void);
677
678 /* directive set method get method */
679 static t_conf_entry conf_table[] =
680 {
681 { "filedir", conf_set_filedir, conf_get_filedir, conf_setdef_filedir},
682 { "storage_path", conf_set_storage_path, conf_get_storage_path, conf_setdef_storage_path},
683 { "logfile", conf_set_logfile, conf_get_logfile, conf_setdef_logfile},
684 { "loglevels", conf_set_loglevels, conf_get_loglevels, conf_setdef_loglevels},
685 { "motdfile", conf_set_motdfile, conf_get_motdfile, conf_setdef_motdfile},
686 { "newsfile", conf_set_newsfile, conf_get_newsfile, conf_setdef_newsfile},
687 { "channelfile", conf_set_channelfile, conf_get_channelfile, conf_setdef_channelfile},
688 { "pidfile", conf_set_pidfile, conf_get_pidfile, conf_setdef_pidfile},
689 { "adfile", conf_set_adfile, conf_get_adfile, conf_setdef_adfile},
690 { "topicfile", conf_set_topicfile, conf_get_topicfile, conf_setdef_topicfile},
691 { "DBlayoutfile", conf_set_DBlayoutfile, conf_get_DBlayoutfile, conf_setdef_DBlayoutfile},
692 { "supportfile", conf_set_supportfile, conf_get_supportfile, conf_setdef_supportfile},
693 { "usersync", conf_set_usersync, conf_get_usersync, conf_setdef_usersync},
694 { "userflush", conf_set_userflush, conf_get_userflush, conf_setdef_userflush},
695 { "userstep", conf_set_userstep, conf_get_userstep, conf_setdef_userstep},
696 { "servername", conf_set_servername, conf_get_servername, conf_setdef_servername},
697 { "hostname", conf_set_hostname, conf_get_hostname, conf_setdef_hostname},
698 { "track", conf_set_track, conf_get_track, conf_setdef_track},
699 { "location", conf_set_location, conf_get_location, conf_setdef_location},
700 { "description", conf_set_description, conf_get_description, conf_setdef_description},
701 { "url", conf_set_url, conf_get_url, conf_setdef_url},
702 { "contact_name", conf_set_contact_name, conf_get_contact_name, conf_setdef_contact_name},
703 { "contact_email", conf_set_contact_email, conf_get_contact_email,conf_setdef_contact_email},
704 { "latency", conf_set_latency, conf_get_latency, conf_setdef_latency},
705 { "irc_latency", conf_set_irc_latency, conf_get_irc_latency, conf_setdef_irc_latency},
706 { "shutdown_delay", conf_set_shutdown_delay, conf_get_shutdown_delay,conf_setdef_shutdown_delay},
707 { "shutdown_decr", conf_set_shutdown_decr, conf_get_shutdown_decr,conf_setdef_shutdown_decr},
708 { "new_accounts", conf_set_new_accounts, conf_get_new_accounts, conf_setdef_new_accounts},
709 { "max_accounts", conf_set_max_accounts, conf_get_max_accounts, conf_setdef_max_accounts},
710 { "kick_old_login", conf_set_kick_old_login, conf_get_kick_old_login,conf_setdef_kick_old_login},
711 { "ask_new_channel", conf_set_ask_new_channel, conf_get_ask_new_channel,conf_setdef_ask_new_channel},
712 { "hide_pass_games", conf_set_hide_pass_games, conf_get_hide_pass_games,conf_setdef_hide_pass_games},
713 { "hide_started_games", conf_set_hide_started_games, conf_get_hide_started_games,conf_setdef_hide_started_games},
714 { "hide_temp_channels", conf_set_hide_temp_channels, conf_get_hide_temp_channels,conf_setdef_hide_temp_channels},
715 { "hide_addr", conf_set_hide_addr, conf_get_hide_addr, conf_setdef_hide_addr},
716 { "enable_conn_all", conf_set_enable_conn_all, conf_get_enable_conn_all,conf_setdef_enable_conn_all},
717 { "extra_commands", conf_set_extra_commands, conf_get_extra_commands,conf_setdef_extra_commands},
718 { "reportdir", conf_set_reportdir, conf_get_reportdir, conf_setdef_reportdir},
719 { "report_all_games", conf_set_report_all_games, conf_get_report_all_games,conf_setdef_report_all_games},
720 { "report_diablo_games", conf_set_report_diablo_games, conf_get_report_diablo_games,conf_setdef_report_diablo_games},
721 { "iconfile", conf_set_iconfile, conf_get_iconfile, conf_setdef_iconfile},
722 { "war3_iconfile", conf_set_war3_iconfile, conf_get_war3_iconfile,conf_setdef_war3_iconfile},
723 { "star_iconfile", conf_set_star_iconfile, conf_get_star_iconfile,conf_setdef_star_iconfile},
724 { "tosfile", conf_set_tosfile, conf_get_tosfile, conf_setdef_tosfile},
725 { "mpqfile", conf_set_mpqfile, conf_get_mpqfile, conf_setdef_mpqfile},
726 { "trackaddrs", conf_set_trackaddrs, conf_get_trackaddrs, conf_setdef_trackaddrs},
727 { "servaddrs", conf_set_servaddrs, conf_get_servaddrs, conf_setdef_servaddrs},
728 { "w3routeaddr", conf_set_w3routeaddr, conf_get_w3routeaddr, conf_setdef_w3routeaddr},
729 { "ircaddrs", conf_set_ircaddrs, conf_get_ircaddrs, conf_setdef_ircaddrs},
730 { "use_keepalive", conf_set_use_keepalive, conf_get_use_keepalive,conf_setdef_use_keepalive},
731 { "udptest_port", conf_set_udptest_port, conf_get_udptest_port, conf_setdef_udptest_port},
732 { "ipbanfile", conf_set_ipbanfile, conf_get_ipbanfile, conf_setdef_ipbanfile},
733 { "disc_is_loss", conf_set_disc_is_loss, conf_get_disc_is_loss, conf_setdef_disc_is_loss},
734 { "helpfile", conf_set_helpfile, conf_get_helpfile, conf_setdef_helpfile},
735 { "fortunecmd", conf_set_fortunecmd, conf_get_fortunecmd, conf_setdef_fortunecmd},
736 { "transfile", conf_set_transfile, conf_get_transfile, conf_setdef_transfile},
737 { "chanlog", conf_set_chanlog, conf_get_chanlog, conf_setdef_chanlog},
738 { "chanlogdir", conf_set_chanlogdir, conf_get_chanlogdir, conf_setdef_chanlogdir},
739 { "quota", conf_set_quota, conf_get_quota, conf_setdef_quota},
740 { "quota_lines", conf_set_quota_lines, conf_get_quota_lines, conf_setdef_quota_lines},
741 { "quota_time", conf_set_quota_time, conf_get_quota_time, conf_setdef_quota_time},
742 { "quota_wrapline", conf_set_quota_wrapline, conf_get_quota_wrapline,conf_setdef_quota_wrapline},
743 { "quota_maxline", conf_set_quota_maxline, conf_get_quota_maxline,conf_setdef_quota_maxline},
744 { "ladder_init_rating", conf_set_ladder_init_rating, conf_get_ladder_init_rating,conf_setdef_ladder_init_rating},
745 { "quota_dobae", conf_set_quota_dobae, conf_get_quota_dobae, conf_setdef_quota_dobae},
746 { "realmfile", conf_set_realmfile, conf_get_realmfile, conf_setdef_realmfile},
747 { "issuefile", conf_set_issuefile, conf_get_issuefile, conf_setdef_issuefile},
748 { "effective_user", conf_set_effective_user, conf_get_effective_user,conf_setdef_effective_user},
749 { "effective_group", conf_set_effective_group, conf_get_effective_group,conf_setdef_effective_group},
750 { "nullmsg", conf_set_nullmsg, conf_get_nullmsg, conf_setdef_nullmsg},
751 { "mail_support", conf_set_mail_support, conf_get_mail_support, conf_setdef_mail_support},
752 { "mail_quota", conf_set_mail_quota, conf_get_mail_quota, conf_setdef_mail_quota},
753 { "maildir", conf_set_maildir, conf_get_maildir, conf_setdef_maildir},
754 { "log_notice", conf_set_log_notice, conf_get_log_notice, conf_setdef_log_notice},
755 { "savebyname", conf_set_savebyname, conf_get_savebyname, conf_setdef_savebyname},
756 { "skip_versioncheck", conf_set_skip_versioncheck, conf_get_skip_versioncheck,conf_setdef_skip_versioncheck},
757 { "allow_bad_version", conf_set_allow_bad_version, conf_get_allow_bad_version,conf_setdef_allow_bad_version},
758 { "allow_unknown_version", conf_set_allow_unknown_version,conf_get_allow_unknown_version,conf_setdef_allow_unknown_version},
759 { "versioncheck_file", conf_set_versioncheck_file, conf_get_versioncheck_file,conf_setdef_versioncheck_file},
760 { "d2cs_version", conf_set_d2cs_version, conf_get_d2cs_version, conf_setdef_d2cs_version},
761 { "allow_d2cs_setname", conf_set_allow_d2cs_setname, conf_get_allow_d2cs_setname,conf_setdef_allow_d2cs_setname},
762 { "hashtable_size", conf_set_hashtable_size, conf_get_hashtable_size,conf_setdef_hashtable_size},
763 { "telnetaddrs", conf_set_telnetaddrs, conf_get_telnetaddrs, conf_setdef_telnetaddrs},
764 { "ipban_check_int", conf_set_ipban_check_int, conf_get_ipban_check_int,conf_setdef_ipban_check_int},
765 { "version_exeinfo_match", conf_set_version_exeinfo_match,conf_get_version_exeinfo_match,conf_setdef_version_exeinfo_match},
766 { "version_exeinfo_maxdiff",conf_set_version_exeinfo_maxdiff,conf_get_version_exeinfo_maxdiff,conf_setdef_version_exeinfo_maxdiff},
767 { "max_concurrent_logins", conf_set_max_concurrent_logins,conf_get_max_concurrent_logins,conf_setdef_max_concurrent_logins},
768 { "server_info", conf_set_server_info, conf_get_server_info, conf_setdef_server_info},
769 { "mapsfile", conf_set_mapsfile, conf_get_mapsfile, conf_setdef_mapsfile},
770 { "xplevelfile", conf_set_xplevelfile, conf_get_xplevelfile, conf_setdef_xplevelfile},
771 { "xpcalcfile", conf_set_xpcalcfile, conf_get_xpcalcfile, conf_setdef_xpcalcfile},
772 { "initkill_timer", conf_set_initkill_timer, conf_get_initkill_timer,conf_setdef_initkill_timer},
773 { "war3_ladder_update_secs",conf_set_war3_ladder_update_secs,conf_get_war3_ladder_update_secs,conf_setdef_war3_ladder_update_secs},
774 { "output_update_secs", conf_set_output_update_secs, conf_get_output_update_secs,conf_setdef_output_update_secs},
775 { "ladderdir", conf_set_ladderdir, conf_get_ladderdir, conf_setdef_ladderdir},
776 { "statusdir", conf_set_statusdir, conf_get_statusdir, conf_setdef_statusdir},
777 { "XML_output_ladder", conf_set_XML_output_ladder, conf_get_XML_output_ladder,conf_setdef_XML_output_ladder},
778 { "XML_status_output", conf_set_XML_status_output, conf_get_XML_status_output,conf_setdef_XML_status_output},
779 { "account_allowed_symbols",conf_set_account_allowed_symbols,conf_get_account_allowed_symbols,conf_setdef_account_allowed_symbols},
780 { "account_force_username", conf_set_account_force_username,conf_get_account_force_username,conf_setdef_account_force_username},
781 { "command_groups_file", conf_set_command_groups_file, conf_get_command_groups_file,conf_setdef_command_groups_file},
782 { "tournament_file", conf_set_tournament_file, conf_get_tournament_file,conf_setdef_tournament_file},
783 { "aliasfile" , conf_set_aliasfile, conf_get_aliasfile, conf_setdef_aliasfile},
784 { "anongame_infos_file", conf_set_anongame_infos_file, conf_get_anongame_infos_file,conf_setdef_anongame_infos_file},
785 { "max_conns_per_IP", conf_set_max_conns_per_IP, conf_get_max_conns_per_IP,conf_setdef_max_conns_per_IP},
786 { "max_friends", conf_set_max_friends, conf_get_max_friends, conf_setdef_max_friends},
787 { "clan_newer_time", conf_set_clan_newer_time, conf_get_clan_newer_time,conf_setdef_clan_newer_time},
788 { "clan_max_members", conf_set_clan_max_members, conf_get_clan_max_members,conf_setdef_clan_max_members},
789 { "clan_channel_default_private",conf_set_clan_channel_default_private,conf_get_clan_channel_default_private,conf_setdef_clan_channel_default_private},
790 { "passfail_count", conf_set_passfail_count, conf_get_passfail_count,conf_setdef_passfail_count},
791 { "passfail_bantime", conf_set_passfail_bantime, conf_get_passfail_bantime,conf_setdef_passfail_bantime},
792 { "maxusers_per_channel", conf_set_maxusers_per_channel, conf_get_maxusers_per_channel,conf_setdef_maxusers_per_channel},
793 { "allowed_clients", conf_set_allowed_clients, conf_get_allowed_clients,conf_setdef_allowed_clients},
794 { "ladder_games", conf_set_ladder_games, conf_get_ladder_games, conf_setdef_ladder_games},
795 { "max_connections", conf_set_max_connections, conf_get_max_connections,conf_setdef_max_connections},
796 { "sync_on_logoff", conf_set_sync_on_logoff, conf_get_sync_on_logoff,conf_setdef_sync_on_logoff},
797 { "ladder_prefix", conf_set_ladder_prefix, conf_get_ladder_prefix,conf_setdef_ladder_prefix},
798 { "irc_network_name", conf_set_irc_network_name, conf_get_irc_network_name, conf_setdef_irc_network_name},
799
800 { "woladdrs", conf_set_wol_addrs, conf_get_wol_addrs, conf_setdef_wol_addrs},
801 { "woltimezone", conf_set_wol_timezone, conf_get_wol_timezone, conf_setdef_wol_timezone},
802 { "wollongitude", conf_set_wol_longitude, conf_get_wol_longitude, conf_setdef_wol_longitude},
803 { "wollatitude", conf_set_wol_latitude, conf_get_wol_latitude, conf_setdef_wol_latitude},
804
805 { NULL, NULL, NULL, NONE},
806 };
807
prefs_load(char const * filename)808 extern int prefs_load(char const * filename)
809 {
810 FILE *fd;
811
812 if (!filename) {
813 eventlog(eventlog_level_error,__FUNCTION__,"got NULL filename");
814 return -1;
815 }
816
817 fd = fopen(filename,"rt");
818 if (!fd) {
819 eventlog(eventlog_level_error,__FUNCTION__,"could not open file '%s'",filename);
820 return -1;
821 }
822
823 if (conf_load_file(fd,conf_table)) {
824 eventlog(eventlog_level_error,__FUNCTION__,"error loading config file '%s'",filename);
825 fclose(fd);
826 return -1;
827 }
828
829 fclose(fd);
830
831 return 0;
832 }
833
834
prefs_unload(void)835 extern void prefs_unload(void)
836 {
837 conf_unload(conf_table);
838 }
839
prefs_get_storage_path(void)840 extern char const * prefs_get_storage_path(void)
841 {
842 return prefs_runtime_config.storage_path;
843 }
844
conf_set_storage_path(const char * valstr)845 static int conf_set_storage_path(const char *valstr)
846 {
847 return conf_set_str(&prefs_runtime_config.storage_path,valstr,NULL);
848 }
849
conf_setdef_storage_path(void)850 static int conf_setdef_storage_path(void)
851 {
852 return conf_set_str(&prefs_runtime_config.storage_path,NULL,BNETD_STORAGE_PATH);
853 }
854
conf_get_storage_path(void)855 static const char* conf_get_storage_path(void)
856 {
857 return prefs_runtime_config.storage_path;
858 }
859
860
prefs_get_filedir(void)861 extern char const * prefs_get_filedir(void)
862 {
863 return prefs_runtime_config.filedir;
864 }
865
conf_set_filedir(const char * valstr)866 static int conf_set_filedir(const char *valstr)
867 {
868 return conf_set_str(&prefs_runtime_config.filedir,valstr,NULL);
869 }
870
conf_setdef_filedir(void)871 static int conf_setdef_filedir(void)
872 {
873 return conf_set_str(&prefs_runtime_config.filedir,NULL,BNETD_FILE_DIR);
874 }
875
conf_get_filedir(void)876 static const char* conf_get_filedir(void)
877 {
878 return prefs_runtime_config.filedir;
879 }
880
881
prefs_get_logfile(void)882 extern char const * prefs_get_logfile(void)
883 {
884 return prefs_runtime_config.logfile;
885 }
886
conf_set_logfile(const char * valstr)887 static int conf_set_logfile(const char *valstr)
888 {
889 return conf_set_str(&prefs_runtime_config.logfile,valstr,NULL);
890 }
891
conf_setdef_logfile(void)892 static int conf_setdef_logfile(void)
893 {
894 return conf_set_str(&prefs_runtime_config.logfile,NULL,BNETD_LOG_FILE);
895 }
896
conf_get_logfile(void)897 static const char* conf_get_logfile(void)
898 {
899 return prefs_runtime_config.logfile;
900 }
901
902
prefs_get_loglevels(void)903 extern char const * prefs_get_loglevels(void)
904 {
905 return prefs_runtime_config.loglevels;
906 }
907
conf_set_loglevels(const char * valstr)908 static int conf_set_loglevels(const char *valstr)
909 {
910 return conf_set_str(&prefs_runtime_config.loglevels,valstr,NULL);
911 }
912
conf_setdef_loglevels(void)913 static int conf_setdef_loglevels(void)
914 {
915 return conf_set_str(&prefs_runtime_config.loglevels,NULL,BNETD_LOG_LEVELS);
916 }
917
conf_get_loglevels(void)918 static const char* conf_get_loglevels(void)
919 {
920 return prefs_runtime_config.loglevels;
921 }
922
923
prefs_get_motdfile(void)924 extern char const * prefs_get_motdfile(void)
925 {
926 return prefs_runtime_config.motdfile;
927 }
928
conf_set_motdfile(const char * valstr)929 static int conf_set_motdfile(const char *valstr)
930 {
931 return conf_set_str(&prefs_runtime_config.motdfile,valstr,NULL);
932 }
933
conf_setdef_motdfile(void)934 static int conf_setdef_motdfile(void)
935 {
936 return conf_set_str(&prefs_runtime_config.motdfile,NULL,BNETD_MOTD_FILE);
937 }
938
conf_get_motdfile(void)939 static const char* conf_get_motdfile(void)
940 {
941 return prefs_runtime_config.motdfile;
942 }
943
944
prefs_get_newsfile(void)945 extern char const * prefs_get_newsfile(void)
946 {
947 return prefs_runtime_config.newsfile;
948 }
949
conf_set_newsfile(const char * valstr)950 static int conf_set_newsfile(const char *valstr)
951 {
952 return conf_set_str(&prefs_runtime_config.newsfile,valstr,NULL);
953 }
954
conf_setdef_newsfile(void)955 static int conf_setdef_newsfile(void)
956 {
957 return conf_set_str(&prefs_runtime_config.newsfile,NULL,BNETD_NEWS_DIR);
958 }
959
conf_get_newsfile(void)960 static const char* conf_get_newsfile(void)
961 {
962 return prefs_runtime_config.newsfile;
963 }
964
965
prefs_get_adfile(void)966 extern char const * prefs_get_adfile(void)
967 {
968 return prefs_runtime_config.adfile;
969 }
970
conf_set_adfile(const char * valstr)971 static int conf_set_adfile(const char *valstr)
972 {
973 return conf_set_str(&prefs_runtime_config.adfile,valstr,NULL);
974 }
975
conf_setdef_adfile(void)976 static int conf_setdef_adfile(void)
977 {
978 return conf_set_str(&prefs_runtime_config.adfile,NULL,BNETD_AD_FILE);
979 }
980
conf_get_adfile(void)981 static const char* conf_get_adfile(void)
982 {
983 return prefs_runtime_config.adfile;
984 }
985
986
prefs_get_topicfile(void)987 extern char const * prefs_get_topicfile(void)
988 {
989 return prefs_runtime_config.topicfile;
990 }
991
conf_set_topicfile(const char * valstr)992 static int conf_set_topicfile(const char *valstr)
993 {
994 return conf_set_str(&prefs_runtime_config.topicfile,valstr,NULL);
995 }
996
conf_setdef_topicfile(void)997 static int conf_setdef_topicfile(void)
998 {
999 return conf_set_str(&prefs_runtime_config.topicfile,NULL,BNETD_TOPIC_FILE);
1000 }
1001
conf_get_topicfile(void)1002 static const char* conf_get_topicfile(void)
1003 {
1004 return prefs_runtime_config.topicfile;
1005 }
1006
1007
prefs_get_DBlayoutfile(void)1008 extern char const * prefs_get_DBlayoutfile(void)
1009 {
1010 return prefs_runtime_config.DBlayoutfile;
1011 }
1012
conf_set_DBlayoutfile(const char * valstr)1013 static int conf_set_DBlayoutfile(const char *valstr)
1014 {
1015 return conf_set_str(&prefs_runtime_config.DBlayoutfile,valstr,NULL);
1016 }
1017
conf_setdef_DBlayoutfile(void)1018 static int conf_setdef_DBlayoutfile(void)
1019 {
1020 return conf_set_str(&prefs_runtime_config.DBlayoutfile,NULL,BNETD_DBLAYOUT_FILE);
1021 }
1022
conf_get_DBlayoutfile(void)1023 static const char* conf_get_DBlayoutfile(void)
1024 {
1025 return prefs_runtime_config.DBlayoutfile;
1026 }
1027
1028
prefs_get_user_sync_timer(void)1029 extern unsigned int prefs_get_user_sync_timer(void)
1030 {
1031 return prefs_runtime_config.usersync;
1032 }
1033
conf_set_usersync(const char * valstr)1034 static int conf_set_usersync(const char *valstr)
1035 {
1036 return conf_set_int(&prefs_runtime_config.usersync,valstr,0);
1037 }
1038
conf_setdef_usersync(void)1039 static int conf_setdef_usersync(void)
1040 {
1041 return conf_set_int(&prefs_runtime_config.usersync,NULL,BNETD_USERSYNC);
1042 }
1043
conf_get_usersync(void)1044 static const char* conf_get_usersync(void)
1045 {
1046 return conf_get_int(prefs_runtime_config.usersync);
1047 }
1048
1049
prefs_get_user_flush_timer(void)1050 extern unsigned int prefs_get_user_flush_timer(void)
1051 {
1052 return prefs_runtime_config.userflush;
1053 }
1054
conf_set_userflush(const char * valstr)1055 static int conf_set_userflush(const char *valstr)
1056 {
1057 return conf_set_int(&prefs_runtime_config.userflush,valstr,0);
1058 }
1059
conf_setdef_userflush(void)1060 static int conf_setdef_userflush(void)
1061 {
1062 return conf_set_int(&prefs_runtime_config.userflush,NULL,BNETD_USERFLUSH);
1063 }
1064
conf_get_userflush(void)1065 static const char* conf_get_userflush(void)
1066 {
1067 return conf_get_int(prefs_runtime_config.userflush);
1068 }
1069
1070
prefs_get_user_step(void)1071 extern unsigned int prefs_get_user_step(void)
1072 {
1073 return prefs_runtime_config.userstep;
1074 }
1075
conf_set_userstep(const char * valstr)1076 static int conf_set_userstep(const char *valstr)
1077 {
1078 return conf_set_int(&prefs_runtime_config.userstep,valstr,0);
1079 }
1080
conf_setdef_userstep(void)1081 static int conf_setdef_userstep(void)
1082 {
1083 return conf_set_int(&prefs_runtime_config.userstep,NULL,BNETD_USERSTEP);
1084 }
1085
conf_get_userstep(void)1086 static const char* conf_get_userstep(void)
1087 {
1088 return conf_get_int(prefs_runtime_config.userstep);
1089 }
1090
1091
prefs_get_servername(void)1092 extern char const * prefs_get_servername(void)
1093 {
1094 return prefs_runtime_config.servername;
1095 }
1096
conf_set_servername(const char * valstr)1097 static int conf_set_servername(const char *valstr)
1098 {
1099 return conf_set_str(&prefs_runtime_config.servername,valstr,NULL);
1100 }
1101
conf_setdef_servername(void)1102 static int conf_setdef_servername(void)
1103 {
1104 return conf_set_str(&prefs_runtime_config.servername,NULL,BNETD_SERVERNAME);
1105 }
1106
conf_get_servername(void)1107 static const char* conf_get_servername(void)
1108 {
1109 return prefs_runtime_config.servername;
1110 }
1111
1112
prefs_get_hostname(void)1113 extern char const * prefs_get_hostname(void)
1114 {
1115 return prefs_runtime_config.hostname;
1116 }
1117
conf_set_hostname(const char * valstr)1118 static int conf_set_hostname(const char *valstr)
1119 {
1120 return conf_set_str(&prefs_runtime_config.hostname,valstr,NULL);
1121 }
1122
conf_setdef_hostname(void)1123 static int conf_setdef_hostname(void)
1124 {
1125 return conf_set_str(&prefs_runtime_config.hostname,NULL,"");
1126 }
1127
conf_get_hostname(void)1128 static const char* conf_get_hostname(void)
1129 {
1130 return prefs_runtime_config.hostname;
1131 }
1132
1133
prefs_get_track(void)1134 extern unsigned int prefs_get_track(void)
1135 {
1136 return prefs_runtime_config.track;
1137 }
1138
conf_set_track(const char * valstr)1139 static int conf_set_track(const char *valstr)
1140 {
1141 unsigned int rez;
1142
1143 conf_set_int(&prefs_runtime_config.track,valstr,0);
1144 rez = prefs_runtime_config.track;
1145 if (rez>0 && rez<60) rez = 60;
1146 return 0;
1147 }
1148
conf_setdef_track(void)1149 static int conf_setdef_track(void)
1150 {
1151 return conf_set_int(&prefs_runtime_config.track,NULL,BNETD_TRACK_TIME);
1152 }
1153
conf_get_track(void)1154 static const char* conf_get_track(void)
1155 {
1156 return conf_get_int(prefs_runtime_config.track);
1157 }
1158
1159
prefs_get_location(void)1160 extern char const * prefs_get_location(void)
1161 {
1162 return prefs_runtime_config.location;
1163 }
1164
conf_set_location(const char * valstr)1165 static int conf_set_location(const char *valstr)
1166 {
1167 return conf_set_str(&prefs_runtime_config.location,valstr,NULL);
1168 }
1169
conf_setdef_location(void)1170 static int conf_setdef_location(void)
1171 {
1172 return conf_set_str(&prefs_runtime_config.location,NULL,"");
1173 }
1174
conf_get_location(void)1175 static const char* conf_get_location(void)
1176 {
1177 return prefs_runtime_config.location;
1178 }
1179
1180
prefs_get_description(void)1181 extern char const * prefs_get_description(void)
1182 {
1183 return prefs_runtime_config.description;
1184 }
1185
conf_set_description(const char * valstr)1186 static int conf_set_description(const char *valstr)
1187 {
1188 return conf_set_str(&prefs_runtime_config.description,valstr,NULL);
1189 }
1190
conf_setdef_description(void)1191 static int conf_setdef_description(void)
1192 {
1193 return conf_set_str(&prefs_runtime_config.description,NULL,"");
1194 }
1195
conf_get_description(void)1196 static const char* conf_get_description(void)
1197 {
1198 return prefs_runtime_config.description;
1199 }
1200
1201
prefs_get_url(void)1202 extern char const * prefs_get_url(void)
1203 {
1204 return prefs_runtime_config.url;
1205 }
1206
conf_set_url(const char * valstr)1207 static int conf_set_url(const char *valstr)
1208 {
1209 return conf_set_str(&prefs_runtime_config.url,valstr,NULL);
1210 }
1211
conf_setdef_url(void)1212 static int conf_setdef_url(void)
1213 {
1214 return conf_set_str(&prefs_runtime_config.url,NULL,"");
1215 }
1216
conf_get_url(void)1217 static const char* conf_get_url(void)
1218 {
1219 return prefs_runtime_config.url;
1220 }
1221
1222
prefs_get_contact_name(void)1223 extern char const * prefs_get_contact_name(void)
1224 {
1225 return prefs_runtime_config.contact_name;
1226 }
1227
conf_set_contact_name(const char * valstr)1228 static int conf_set_contact_name(const char *valstr)
1229 {
1230 return conf_set_str(&prefs_runtime_config.contact_name,valstr,NULL);
1231 }
1232
conf_setdef_contact_name(void)1233 static int conf_setdef_contact_name(void)
1234 {
1235 return conf_set_str(&prefs_runtime_config.contact_name,NULL,"");
1236 }
1237
conf_get_contact_name(void)1238 static const char* conf_get_contact_name(void)
1239 {
1240 return prefs_runtime_config.contact_name;
1241 }
1242
1243
prefs_get_contact_email(void)1244 extern char const * prefs_get_contact_email(void)
1245 {
1246 return prefs_runtime_config.contact_email;
1247 }
1248
conf_set_contact_email(const char * valstr)1249 static int conf_set_contact_email(const char *valstr)
1250 {
1251 return conf_set_str(&prefs_runtime_config.contact_email,valstr,NULL);
1252 }
1253
conf_setdef_contact_email(void)1254 static int conf_setdef_contact_email(void)
1255 {
1256 return conf_set_str(&prefs_runtime_config.contact_email,NULL,"");
1257 }
1258
conf_get_contact_email(void)1259 static const char* conf_get_contact_email(void)
1260 {
1261 return prefs_runtime_config.contact_email;
1262 }
1263
1264
prefs_get_latency(void)1265 extern unsigned int prefs_get_latency(void)
1266 {
1267 return prefs_runtime_config.latency;
1268 }
1269
conf_set_latency(const char * valstr)1270 static int conf_set_latency(const char *valstr)
1271 {
1272 return conf_set_int(&prefs_runtime_config.latency,valstr,0);
1273 }
1274
conf_setdef_latency(void)1275 static int conf_setdef_latency(void)
1276 {
1277 return conf_set_int(&prefs_runtime_config.latency,NULL,BNETD_LATENCY);
1278 }
1279
conf_get_latency(void)1280 static const char* conf_get_latency(void)
1281 {
1282 return conf_get_int(prefs_runtime_config.latency);
1283 }
1284
1285
prefs_get_irc_latency(void)1286 extern unsigned int prefs_get_irc_latency(void)
1287 {
1288 return prefs_runtime_config.irc_latency;
1289 }
1290
conf_set_irc_latency(const char * valstr)1291 static int conf_set_irc_latency(const char *valstr)
1292 {
1293 return conf_set_int(&prefs_runtime_config.irc_latency,valstr,0);
1294 }
1295
conf_setdef_irc_latency(void)1296 static int conf_setdef_irc_latency(void)
1297 {
1298 return conf_set_int(&prefs_runtime_config.irc_latency,NULL,BNETD_IRC_LATENCY);
1299 }
1300
conf_get_irc_latency(void)1301 static const char* conf_get_irc_latency(void)
1302 {
1303 return conf_get_int(prefs_runtime_config.irc_latency);
1304 }
1305
1306
prefs_get_shutdown_delay(void)1307 extern unsigned int prefs_get_shutdown_delay(void)
1308 {
1309 return prefs_runtime_config.shutdown_delay;
1310 }
1311
conf_set_shutdown_delay(const char * valstr)1312 static int conf_set_shutdown_delay(const char *valstr)
1313 {
1314 return conf_set_int(&prefs_runtime_config.shutdown_delay,valstr,0);
1315 }
1316
conf_setdef_shutdown_delay(void)1317 static int conf_setdef_shutdown_delay(void)
1318 {
1319 return conf_set_int(&prefs_runtime_config.shutdown_delay,NULL,BNETD_SHUTDELAY);
1320 }
1321
conf_get_shutdown_delay(void)1322 static const char* conf_get_shutdown_delay(void)
1323 {
1324 return conf_get_int(prefs_runtime_config.shutdown_delay);
1325 }
1326
1327
prefs_get_shutdown_decr(void)1328 extern unsigned int prefs_get_shutdown_decr(void)
1329 {
1330 return prefs_runtime_config.shutdown_decr;
1331 }
1332
conf_set_shutdown_decr(const char * valstr)1333 static int conf_set_shutdown_decr(const char *valstr)
1334 {
1335 return conf_set_int(&prefs_runtime_config.shutdown_decr,valstr,0);
1336 }
1337
conf_setdef_shutdown_decr(void)1338 static int conf_setdef_shutdown_decr(void)
1339 {
1340 return conf_set_int(&prefs_runtime_config.shutdown_decr,NULL,BNETD_SHUTDECR);
1341 }
1342
conf_get_shutdown_decr(void)1343 static const char* conf_get_shutdown_decr(void)
1344 {
1345 return conf_get_int(prefs_runtime_config.shutdown_decr);
1346 }
1347
1348
prefs_get_allow_new_accounts(void)1349 extern unsigned int prefs_get_allow_new_accounts(void)
1350 {
1351 return prefs_runtime_config.new_accounts;
1352 }
1353
conf_set_new_accounts(const char * valstr)1354 static int conf_set_new_accounts(const char *valstr)
1355 {
1356 return conf_set_bool(&prefs_runtime_config.new_accounts,valstr,0);
1357 }
1358
conf_setdef_new_accounts(void)1359 static int conf_setdef_new_accounts(void)
1360 {
1361 return conf_set_bool(&prefs_runtime_config.new_accounts,NULL,1);
1362 }
1363
conf_get_new_accounts(void)1364 static const char* conf_get_new_accounts(void)
1365 {
1366 return conf_get_bool(prefs_runtime_config.new_accounts);
1367 }
1368
1369
prefs_get_max_accounts(void)1370 extern unsigned int prefs_get_max_accounts(void)
1371 {
1372 return prefs_runtime_config.max_accounts;
1373 }
1374
conf_set_max_accounts(const char * valstr)1375 static int conf_set_max_accounts(const char *valstr)
1376 {
1377 return conf_set_int(&prefs_runtime_config.max_accounts,valstr,0);
1378 }
1379
conf_setdef_max_accounts(void)1380 static int conf_setdef_max_accounts(void)
1381 {
1382 return conf_set_int(&prefs_runtime_config.max_accounts,NULL,0);
1383 }
1384
conf_get_max_accounts(void)1385 static const char* conf_get_max_accounts(void)
1386 {
1387 return conf_get_int(prefs_runtime_config.max_accounts);
1388 }
1389
1390
prefs_get_kick_old_login(void)1391 extern unsigned int prefs_get_kick_old_login(void)
1392 {
1393 return prefs_runtime_config.kick_old_login;
1394 }
1395
conf_set_kick_old_login(const char * valstr)1396 static int conf_set_kick_old_login(const char *valstr)
1397 {
1398 return conf_set_bool(&prefs_runtime_config.kick_old_login,valstr,0);
1399 }
1400
conf_setdef_kick_old_login(void)1401 static int conf_setdef_kick_old_login(void)
1402 {
1403 return conf_set_bool(&prefs_runtime_config.kick_old_login,NULL,1);
1404 }
1405
conf_get_kick_old_login(void)1406 static const char* conf_get_kick_old_login(void)
1407 {
1408 return conf_get_bool(prefs_runtime_config.kick_old_login);
1409 }
1410
1411
prefs_get_channelfile(void)1412 extern char const * prefs_get_channelfile(void)
1413 {
1414 return prefs_runtime_config.channelfile;
1415 }
1416
conf_set_channelfile(const char * valstr)1417 static int conf_set_channelfile(const char *valstr)
1418 {
1419 return conf_set_str(&prefs_runtime_config.channelfile,valstr,NULL);
1420 }
1421
conf_setdef_channelfile(void)1422 static int conf_setdef_channelfile(void)
1423 {
1424 return conf_set_str(&prefs_runtime_config.channelfile,NULL,BNETD_CHANNEL_FILE);
1425 }
1426
conf_get_channelfile(void)1427 static const char* conf_get_channelfile(void)
1428 {
1429 return prefs_runtime_config.channelfile;
1430 }
1431
1432
prefs_get_ask_new_channel(void)1433 extern unsigned int prefs_get_ask_new_channel(void)
1434 {
1435 return prefs_runtime_config.ask_new_channel;
1436 }
1437
conf_set_ask_new_channel(const char * valstr)1438 static int conf_set_ask_new_channel(const char *valstr)
1439 {
1440 return conf_set_bool(&prefs_runtime_config.ask_new_channel,valstr,0);
1441 }
1442
conf_setdef_ask_new_channel(void)1443 static int conf_setdef_ask_new_channel(void)
1444 {
1445 return conf_set_bool(&prefs_runtime_config.ask_new_channel,NULL,1);
1446 }
1447
conf_get_ask_new_channel(void)1448 static const char* conf_get_ask_new_channel(void)
1449 {
1450 return conf_get_bool(prefs_runtime_config.ask_new_channel);
1451 }
1452
1453
prefs_get_hide_pass_games(void)1454 extern unsigned int prefs_get_hide_pass_games(void)
1455 {
1456 return prefs_runtime_config.hide_pass_games;
1457 }
1458
conf_set_hide_pass_games(const char * valstr)1459 static int conf_set_hide_pass_games(const char *valstr)
1460 {
1461 return conf_set_bool(&prefs_runtime_config.hide_pass_games,valstr,0);
1462 }
1463
conf_setdef_hide_pass_games(void)1464 static int conf_setdef_hide_pass_games(void)
1465 {
1466 return conf_set_bool(&prefs_runtime_config.hide_pass_games,NULL,1);
1467 }
1468
conf_get_hide_pass_games(void)1469 static const char* conf_get_hide_pass_games(void)
1470 {
1471 return conf_get_bool(prefs_runtime_config.hide_pass_games);
1472 }
1473
1474
prefs_get_hide_started_games(void)1475 extern unsigned int prefs_get_hide_started_games(void)
1476 {
1477 return prefs_runtime_config.hide_started_games;
1478 }
1479
conf_set_hide_started_games(const char * valstr)1480 static int conf_set_hide_started_games(const char *valstr)
1481 {
1482 return conf_set_bool(&prefs_runtime_config.hide_started_games,valstr,0);
1483 }
1484
conf_setdef_hide_started_games(void)1485 static int conf_setdef_hide_started_games(void)
1486 {
1487 return conf_set_bool(&prefs_runtime_config.hide_started_games,NULL,1);
1488 }
1489
conf_get_hide_started_games(void)1490 static const char* conf_get_hide_started_games(void)
1491 {
1492 return conf_get_bool(prefs_runtime_config.hide_started_games);
1493 }
1494
1495
prefs_get_hide_temp_channels(void)1496 extern unsigned int prefs_get_hide_temp_channels(void)
1497 {
1498 return prefs_runtime_config.hide_temp_channels;
1499 }
1500
conf_set_hide_temp_channels(const char * valstr)1501 static int conf_set_hide_temp_channels(const char *valstr)
1502 {
1503 return conf_set_bool(&prefs_runtime_config.hide_temp_channels,valstr,0);
1504 }
1505
conf_setdef_hide_temp_channels(void)1506 static int conf_setdef_hide_temp_channels(void)
1507 {
1508 return conf_set_bool(&prefs_runtime_config.hide_temp_channels,NULL,1);
1509 }
1510
conf_get_hide_temp_channels(void)1511 static const char* conf_get_hide_temp_channels(void)
1512 {
1513 return conf_get_bool(prefs_runtime_config.hide_temp_channels);
1514 }
1515
prefs_get_hide_addr(void)1516 extern unsigned prefs_get_hide_addr(void)
1517 {
1518 return prefs_runtime_config.hide_addr;
1519 }
1520
conf_set_hide_addr(const char * valstr)1521 static int conf_set_hide_addr(const char *valstr)
1522 {
1523 return conf_set_bool(&prefs_runtime_config.hide_addr,valstr,0);
1524 }
1525
conf_setdef_hide_addr(void)1526 static int conf_setdef_hide_addr(void)
1527 {
1528 return conf_set_bool(&prefs_runtime_config.hide_addr,NULL,1);
1529 }
1530
conf_get_hide_addr(void)1531 static const char* conf_get_hide_addr(void)
1532 {
1533 return conf_get_bool(prefs_runtime_config.hide_addr);
1534 }
1535
1536
prefs_get_enable_conn_all(void)1537 extern unsigned int prefs_get_enable_conn_all(void)
1538 {
1539 return prefs_runtime_config.enable_conn_all;
1540 }
1541
conf_set_enable_conn_all(const char * valstr)1542 static int conf_set_enable_conn_all(const char *valstr)
1543 {
1544 return conf_set_bool(&prefs_runtime_config.enable_conn_all,valstr,0);
1545 }
1546
conf_setdef_enable_conn_all(void)1547 static int conf_setdef_enable_conn_all(void)
1548 {
1549 return conf_set_bool(&prefs_runtime_config.enable_conn_all,NULL,0);
1550 }
1551
conf_get_enable_conn_all(void)1552 static const char* conf_get_enable_conn_all(void)
1553 {
1554 return conf_get_bool(prefs_runtime_config.enable_conn_all);
1555 }
1556
1557
prefs_get_extra_commands(void)1558 extern unsigned int prefs_get_extra_commands(void)
1559 {
1560 return prefs_runtime_config.extra_commands;
1561 }
1562
conf_set_extra_commands(const char * valstr)1563 static int conf_set_extra_commands(const char *valstr)
1564 {
1565 return conf_set_bool(&prefs_runtime_config.extra_commands,valstr,0);
1566 }
1567
conf_setdef_extra_commands(void)1568 static int conf_setdef_extra_commands(void)
1569 {
1570 return conf_set_bool(&prefs_runtime_config.extra_commands,NULL,0);
1571 }
1572
conf_get_extra_commands(void)1573 static const char* conf_get_extra_commands(void)
1574 {
1575 return conf_get_bool(prefs_runtime_config.extra_commands);
1576 }
1577
1578
prefs_get_reportdir(void)1579 extern char const * prefs_get_reportdir(void)
1580 {
1581 return prefs_runtime_config.reportdir;
1582 }
1583
conf_set_reportdir(const char * valstr)1584 static int conf_set_reportdir(const char *valstr)
1585 {
1586 return conf_set_str(&prefs_runtime_config.reportdir,valstr,NULL);
1587 }
1588
conf_setdef_reportdir(void)1589 static int conf_setdef_reportdir(void)
1590 {
1591 return conf_set_str(&prefs_runtime_config.reportdir,NULL,BNETD_REPORT_DIR);
1592 }
1593
conf_get_reportdir(void)1594 static const char* conf_get_reportdir(void)
1595 {
1596 return prefs_runtime_config.reportdir;
1597 }
1598
1599
prefs_get_report_all_games(void)1600 extern unsigned int prefs_get_report_all_games(void)
1601 {
1602 return prefs_runtime_config.report_all_games;
1603 }
1604
conf_set_report_all_games(const char * valstr)1605 static int conf_set_report_all_games(const char *valstr)
1606 {
1607 return conf_set_bool(&prefs_runtime_config.report_all_games,valstr,0);
1608 }
1609
conf_setdef_report_all_games(void)1610 static int conf_setdef_report_all_games(void)
1611 {
1612 return conf_set_bool(&prefs_runtime_config.report_all_games,NULL,0);
1613 }
1614
conf_get_report_all_games(void)1615 static const char* conf_get_report_all_games(void)
1616 {
1617 return conf_get_bool(prefs_runtime_config.report_all_games);
1618 }
1619
1620
prefs_get_report_diablo_games(void)1621 extern unsigned int prefs_get_report_diablo_games(void)
1622 {
1623 return prefs_runtime_config.report_diablo_games;
1624 }
1625
conf_set_report_diablo_games(const char * valstr)1626 static int conf_set_report_diablo_games(const char *valstr)
1627 {
1628 return conf_set_bool(&prefs_runtime_config.report_diablo_games,valstr,0);
1629 }
1630
conf_setdef_report_diablo_games(void)1631 static int conf_setdef_report_diablo_games(void)
1632 {
1633 return conf_set_bool(&prefs_runtime_config.report_diablo_games,NULL,0);
1634 }
1635
conf_get_report_diablo_games(void)1636 static const char* conf_get_report_diablo_games(void)
1637 {
1638 return conf_get_bool(prefs_runtime_config.report_diablo_games);
1639 }
1640
1641
prefs_get_pidfile(void)1642 extern char const * prefs_get_pidfile(void)
1643 {
1644 return prefs_runtime_config.pidfile;
1645 }
1646
conf_set_pidfile(const char * valstr)1647 static int conf_set_pidfile(const char *valstr)
1648 {
1649 return conf_set_str(&prefs_runtime_config.pidfile,valstr,NULL);
1650 }
1651
conf_setdef_pidfile(void)1652 static int conf_setdef_pidfile(void)
1653 {
1654 return conf_set_str(&prefs_runtime_config.pidfile,NULL,BNETD_PID_FILE);
1655 }
1656
conf_get_pidfile(void)1657 static const char* conf_get_pidfile(void)
1658 {
1659 return prefs_runtime_config.pidfile;
1660 }
1661
1662
prefs_get_iconfile(void)1663 extern char const * prefs_get_iconfile(void)
1664 {
1665 return prefs_runtime_config.iconfile;
1666 }
1667
conf_set_iconfile(const char * valstr)1668 static int conf_set_iconfile(const char *valstr)
1669 {
1670 return conf_set_str(&prefs_runtime_config.iconfile,valstr,NULL);
1671 }
1672
conf_setdef_iconfile(void)1673 static int conf_setdef_iconfile(void)
1674 {
1675 return conf_set_str(&prefs_runtime_config.iconfile,NULL,BNETD_ICON_FILE);
1676 }
1677
conf_get_iconfile(void)1678 static const char* conf_get_iconfile(void)
1679 {
1680 return prefs_runtime_config.iconfile;
1681 }
1682
1683
prefs_get_war3_iconfile(void)1684 extern char const * prefs_get_war3_iconfile(void)
1685 {
1686 return prefs_runtime_config.war3_iconfile;
1687 }
1688
conf_set_war3_iconfile(const char * valstr)1689 static int conf_set_war3_iconfile(const char *valstr)
1690 {
1691 return conf_set_str(&prefs_runtime_config.war3_iconfile,valstr,NULL);
1692 }
1693
conf_setdef_war3_iconfile(void)1694 static int conf_setdef_war3_iconfile(void)
1695 {
1696 return conf_set_str(&prefs_runtime_config.war3_iconfile,NULL,BNETD_WAR3_ICON_FILE);
1697 }
1698
conf_get_war3_iconfile(void)1699 static const char* conf_get_war3_iconfile(void)
1700 {
1701 return prefs_runtime_config.war3_iconfile;
1702 }
1703
1704
prefs_get_star_iconfile(void)1705 extern char const * prefs_get_star_iconfile(void)
1706 {
1707 return prefs_runtime_config.star_iconfile;
1708 }
1709
conf_set_star_iconfile(const char * valstr)1710 static int conf_set_star_iconfile(const char *valstr)
1711 {
1712 return conf_set_str(&prefs_runtime_config.star_iconfile,valstr,NULL);
1713 }
1714
conf_setdef_star_iconfile(void)1715 static int conf_setdef_star_iconfile(void)
1716 {
1717 return conf_set_str(&prefs_runtime_config.star_iconfile,NULL,BNETD_STAR_ICON_FILE);
1718 }
1719
conf_get_star_iconfile(void)1720 static const char* conf_get_star_iconfile(void)
1721 {
1722 return prefs_runtime_config.star_iconfile;
1723 }
1724
1725
prefs_get_tosfile(void)1726 extern char const * prefs_get_tosfile(void)
1727 {
1728 return prefs_runtime_config.tosfile;
1729 }
1730
conf_set_tosfile(const char * valstr)1731 static int conf_set_tosfile(const char *valstr)
1732 {
1733 return conf_set_str(&prefs_runtime_config.tosfile,valstr,NULL);
1734 }
1735
conf_setdef_tosfile(void)1736 static int conf_setdef_tosfile(void)
1737 {
1738 return conf_set_str(&prefs_runtime_config.tosfile,NULL,BNETD_TOS_FILE);
1739 }
1740
conf_get_tosfile(void)1741 static const char* conf_get_tosfile(void)
1742 {
1743 return prefs_runtime_config.tosfile;
1744 }
1745
1746
prefs_get_mpqfile(void)1747 extern char const * prefs_get_mpqfile(void)
1748 {
1749 return prefs_runtime_config.mpqfile;
1750 }
1751
conf_set_mpqfile(const char * valstr)1752 static int conf_set_mpqfile(const char *valstr)
1753 {
1754 return conf_set_str(&prefs_runtime_config.mpqfile,valstr,NULL);
1755 }
1756
conf_setdef_mpqfile(void)1757 static int conf_setdef_mpqfile(void)
1758 {
1759 return conf_set_str(&prefs_runtime_config.mpqfile,NULL,BNETD_MPQ_FILE);
1760 }
1761
conf_get_mpqfile(void)1762 static const char* conf_get_mpqfile(void)
1763 {
1764 return prefs_runtime_config.mpqfile;
1765 }
1766
1767
prefs_get_trackserv_addrs(void)1768 extern char const * prefs_get_trackserv_addrs(void)
1769 {
1770 return prefs_runtime_config.trackaddrs;
1771 }
1772
conf_set_trackaddrs(const char * valstr)1773 static int conf_set_trackaddrs(const char *valstr)
1774 {
1775 return conf_set_str(&prefs_runtime_config.trackaddrs,valstr,NULL);
1776 }
1777
conf_setdef_trackaddrs(void)1778 static int conf_setdef_trackaddrs(void)
1779 {
1780 return conf_set_str(&prefs_runtime_config.trackaddrs,NULL,BNETD_TRACK_ADDRS);
1781 }
1782
conf_get_trackaddrs(void)1783 static const char* conf_get_trackaddrs(void)
1784 {
1785 return prefs_runtime_config.trackaddrs;
1786 }
1787
1788
prefs_get_bnetdserv_addrs(void)1789 extern char const * prefs_get_bnetdserv_addrs(void)
1790 {
1791 return prefs_runtime_config.servaddrs;
1792 }
1793
conf_set_servaddrs(const char * valstr)1794 static int conf_set_servaddrs(const char *valstr)
1795 {
1796 return conf_set_str(&prefs_runtime_config.servaddrs,valstr,NULL);
1797 }
1798
conf_setdef_servaddrs(void)1799 static int conf_setdef_servaddrs(void)
1800 {
1801 return conf_set_str(&prefs_runtime_config.servaddrs,NULL,BNETD_SERV_ADDRS);
1802 }
1803
conf_get_servaddrs(void)1804 static const char* conf_get_servaddrs(void)
1805 {
1806 return prefs_runtime_config.servaddrs;
1807 }
1808
1809
prefs_get_w3route_addr(void)1810 extern char const * prefs_get_w3route_addr(void)
1811 {
1812 return prefs_runtime_config.w3routeaddr;
1813 }
1814
conf_set_w3routeaddr(const char * valstr)1815 static int conf_set_w3routeaddr(const char *valstr)
1816 {
1817 return conf_set_str(&prefs_runtime_config.w3routeaddr,valstr,NULL);
1818 }
1819
conf_setdef_w3routeaddr(void)1820 static int conf_setdef_w3routeaddr(void)
1821 {
1822 return conf_set_str(&prefs_runtime_config.w3routeaddr,NULL,BNETD_W3ROUTE_ADDR);
1823 }
1824
conf_get_w3routeaddr(void)1825 static const char* conf_get_w3routeaddr(void)
1826 {
1827 return prefs_runtime_config.w3routeaddr;
1828 }
1829
1830
prefs_get_irc_addrs(void)1831 extern char const * prefs_get_irc_addrs(void)
1832 {
1833 return prefs_runtime_config.ircaddrs;
1834 }
1835
conf_set_ircaddrs(const char * valstr)1836 static int conf_set_ircaddrs(const char *valstr)
1837 {
1838 return conf_set_str(&prefs_runtime_config.ircaddrs,valstr,NULL);
1839 }
1840
conf_setdef_ircaddrs(void)1841 static int conf_setdef_ircaddrs(void)
1842 {
1843 return conf_set_str(&prefs_runtime_config.ircaddrs,NULL,BNETD_IRC_ADDRS);
1844 }
1845
conf_get_ircaddrs(void)1846 static const char* conf_get_ircaddrs(void)
1847 {
1848 return prefs_runtime_config.ircaddrs;
1849 }
1850
1851
prefs_get_use_keepalive(void)1852 extern unsigned int prefs_get_use_keepalive(void)
1853 {
1854 return prefs_runtime_config.use_keepalive;
1855 }
1856
conf_set_use_keepalive(const char * valstr)1857 static int conf_set_use_keepalive(const char *valstr)
1858 {
1859 return conf_set_bool(&prefs_runtime_config.use_keepalive,valstr,0);
1860 }
1861
conf_setdef_use_keepalive(void)1862 static int conf_setdef_use_keepalive(void)
1863 {
1864 return conf_set_bool(&prefs_runtime_config.use_keepalive,NULL,0);
1865 }
1866
conf_get_use_keepalive(void)1867 static const char* conf_get_use_keepalive(void)
1868 {
1869 return conf_get_bool(prefs_runtime_config.use_keepalive);
1870 }
1871
1872
prefs_get_udptest_port(void)1873 extern unsigned int prefs_get_udptest_port(void)
1874 {
1875 return prefs_runtime_config.udptest_port;
1876 }
1877
conf_set_udptest_port(const char * valstr)1878 static int conf_set_udptest_port(const char *valstr)
1879 {
1880 return conf_set_int(&prefs_runtime_config.udptest_port,valstr,0);
1881 }
1882
conf_setdef_udptest_port(void)1883 static int conf_setdef_udptest_port(void)
1884 {
1885 return conf_set_int(&prefs_runtime_config.udptest_port,NULL,BNETD_DEF_TEST_PORT);
1886 }
1887
conf_get_udptest_port(void)1888 static const char* conf_get_udptest_port(void)
1889 {
1890 return conf_get_int(prefs_runtime_config.udptest_port);
1891 }
1892
1893
prefs_get_ipbanfile(void)1894 extern char const * prefs_get_ipbanfile(void)
1895 {
1896 return prefs_runtime_config.ipbanfile;
1897 }
1898
conf_set_ipbanfile(const char * valstr)1899 static int conf_set_ipbanfile(const char *valstr)
1900 {
1901 return conf_set_str(&prefs_runtime_config.ipbanfile,valstr,NULL);
1902 }
1903
conf_setdef_ipbanfile(void)1904 static int conf_setdef_ipbanfile(void)
1905 {
1906 return conf_set_str(&prefs_runtime_config.ipbanfile,NULL,BNETD_IPBAN_FILE);
1907 }
1908
conf_get_ipbanfile(void)1909 static const char* conf_get_ipbanfile(void)
1910 {
1911 return prefs_runtime_config.ipbanfile;
1912 }
1913
1914
prefs_get_discisloss(void)1915 extern unsigned int prefs_get_discisloss(void)
1916 {
1917 return prefs_runtime_config.disc_is_loss;
1918 }
1919
conf_set_disc_is_loss(const char * valstr)1920 static int conf_set_disc_is_loss(const char *valstr)
1921 {
1922 return conf_set_bool(&prefs_runtime_config.disc_is_loss,valstr,0);
1923 }
1924
conf_setdef_disc_is_loss(void)1925 static int conf_setdef_disc_is_loss(void)
1926 {
1927 return conf_set_bool(&prefs_runtime_config.disc_is_loss,NULL,0);
1928 }
1929
conf_get_disc_is_loss(void)1930 static const char* conf_get_disc_is_loss(void)
1931 {
1932 return conf_get_bool(prefs_runtime_config.disc_is_loss);
1933 }
1934
1935
prefs_get_helpfile(void)1936 extern char const * prefs_get_helpfile(void)
1937 {
1938 return prefs_runtime_config.helpfile;
1939 }
1940
conf_set_helpfile(const char * valstr)1941 static int conf_set_helpfile(const char *valstr)
1942 {
1943 return conf_set_str(&prefs_runtime_config.helpfile,valstr,NULL);
1944 }
1945
conf_setdef_helpfile(void)1946 static int conf_setdef_helpfile(void)
1947 {
1948 return conf_set_str(&prefs_runtime_config.helpfile,NULL,BNETD_HELP_FILE);
1949 }
1950
conf_get_helpfile(void)1951 static const char* conf_get_helpfile(void)
1952 {
1953 return prefs_runtime_config.helpfile;
1954 }
1955
1956
prefs_get_fortunecmd(void)1957 extern char const * prefs_get_fortunecmd(void)
1958 {
1959 return prefs_runtime_config.fortunecmd;
1960 }
1961
conf_set_fortunecmd(const char * valstr)1962 static int conf_set_fortunecmd(const char *valstr)
1963 {
1964 return conf_set_str(&prefs_runtime_config.fortunecmd,valstr,NULL);
1965 }
1966
conf_setdef_fortunecmd(void)1967 static int conf_setdef_fortunecmd(void)
1968 {
1969 return conf_set_str(&prefs_runtime_config.fortunecmd,NULL,BNETD_FORTUNECMD);
1970 }
1971
conf_get_fortunecmd(void)1972 static const char* conf_get_fortunecmd(void)
1973 {
1974 return prefs_runtime_config.fortunecmd;
1975 }
1976
1977
prefs_get_transfile(void)1978 extern char const * prefs_get_transfile(void)
1979 {
1980 return prefs_runtime_config.transfile;
1981 }
1982
conf_set_transfile(const char * valstr)1983 static int conf_set_transfile(const char *valstr)
1984 {
1985 return conf_set_str(&prefs_runtime_config.transfile,valstr,NULL);
1986 }
1987
conf_setdef_transfile(void)1988 static int conf_setdef_transfile(void)
1989 {
1990 return conf_set_str(&prefs_runtime_config.transfile,NULL,BNETD_TRANS_FILE);
1991 }
1992
conf_get_transfile(void)1993 static const char* conf_get_transfile(void)
1994 {
1995 return prefs_runtime_config.transfile;
1996 }
1997
1998
prefs_get_chanlog(void)1999 extern unsigned int prefs_get_chanlog(void)
2000 {
2001 return prefs_runtime_config.chanlog;
2002 }
2003
conf_set_chanlog(const char * valstr)2004 static int conf_set_chanlog(const char *valstr)
2005 {
2006 return conf_set_bool(&prefs_runtime_config.chanlog,valstr,0);
2007 }
2008
conf_setdef_chanlog(void)2009 static int conf_setdef_chanlog(void)
2010 {
2011 return conf_set_bool(&prefs_runtime_config.chanlog,NULL,BNETD_CHANLOG);
2012 }
2013
conf_get_chanlog(void)2014 static const char* conf_get_chanlog(void)
2015 {
2016 return conf_get_bool(prefs_runtime_config.chanlog);
2017 }
2018
2019
prefs_get_chanlogdir(void)2020 extern char const * prefs_get_chanlogdir(void)
2021 {
2022 return prefs_runtime_config.chanlogdir;
2023 }
2024
conf_set_chanlogdir(const char * valstr)2025 static int conf_set_chanlogdir(const char *valstr)
2026 {
2027 return conf_set_str(&prefs_runtime_config.chanlogdir,valstr,NULL);
2028 }
2029
conf_setdef_chanlogdir(void)2030 static int conf_setdef_chanlogdir(void)
2031 {
2032 return conf_set_str(&prefs_runtime_config.chanlogdir,NULL,BNETD_CHANLOG_DIR);
2033 }
2034
conf_get_chanlogdir(void)2035 static const char* conf_get_chanlogdir(void)
2036 {
2037 return prefs_runtime_config.chanlogdir;
2038 }
2039
2040
prefs_get_quota(void)2041 extern unsigned int prefs_get_quota(void)
2042 {
2043 return prefs_runtime_config.quota;
2044 }
2045
conf_set_quota(const char * valstr)2046 static int conf_set_quota(const char *valstr)
2047 {
2048 return conf_set_bool(&prefs_runtime_config.quota,valstr,0);
2049 }
2050
conf_setdef_quota(void)2051 static int conf_setdef_quota(void)
2052 {
2053 return conf_set_bool(&prefs_runtime_config.quota,NULL,0);
2054 }
2055
conf_get_quota(void)2056 static const char* conf_get_quota(void)
2057 {
2058 return conf_get_bool(prefs_runtime_config.quota);
2059 }
2060
2061
prefs_get_quota_lines(void)2062 extern unsigned int prefs_get_quota_lines(void)
2063 {
2064 unsigned int rez;
2065
2066 rez=prefs_runtime_config.quota_lines;
2067 if (rez<1) rez = 1;
2068 if (rez>100) rez = 100;
2069 return rez;
2070 }
2071
conf_set_quota_lines(const char * valstr)2072 static int conf_set_quota_lines(const char *valstr)
2073 {
2074 return conf_set_int(&prefs_runtime_config.quota_lines,valstr,0);
2075 }
2076
conf_setdef_quota_lines(void)2077 static int conf_setdef_quota_lines(void)
2078 {
2079 return conf_set_int(&prefs_runtime_config.quota_lines,NULL,BNETD_QUOTA_LINES);
2080 }
2081
conf_get_quota_lines(void)2082 static const char* conf_get_quota_lines(void)
2083 {
2084 return conf_get_int(prefs_runtime_config.quota_lines);
2085 }
2086
2087
prefs_get_quota_time(void)2088 extern unsigned int prefs_get_quota_time(void)
2089 {
2090 unsigned int rez;
2091
2092 rez=prefs_runtime_config.quota_time;
2093 if (rez<1) rez = 1;
2094 if (rez>10) rez = 60;
2095 return rez;
2096 }
2097
conf_set_quota_time(const char * valstr)2098 static int conf_set_quota_time(const char *valstr)
2099 {
2100 return conf_set_int(&prefs_runtime_config.quota_time,valstr,0);
2101 }
2102
conf_setdef_quota_time(void)2103 static int conf_setdef_quota_time(void)
2104 {
2105 return conf_set_int(&prefs_runtime_config.quota_time,NULL,BNETD_QUOTA_TIME);
2106 }
2107
conf_get_quota_time(void)2108 static const char* conf_get_quota_time(void)
2109 {
2110 return conf_get_int(prefs_runtime_config.quota_time);
2111 }
2112
2113
prefs_get_quota_wrapline(void)2114 extern unsigned int prefs_get_quota_wrapline(void)
2115 {
2116 unsigned int rez;
2117
2118 rez=prefs_runtime_config.quota_wrapline;
2119 if (rez<1) rez = 1;
2120 if (rez>256) rez = 256;
2121 return rez;
2122 }
2123
conf_set_quota_wrapline(const char * valstr)2124 static int conf_set_quota_wrapline(const char *valstr)
2125 {
2126 return conf_set_int(&prefs_runtime_config.quota_wrapline,valstr,0);
2127 }
2128
conf_setdef_quota_wrapline(void)2129 static int conf_setdef_quota_wrapline(void)
2130 {
2131 return conf_set_int(&prefs_runtime_config.quota_wrapline,NULL,BNETD_QUOTA_WLINE);
2132 }
2133
conf_get_quota_wrapline(void)2134 static const char* conf_get_quota_wrapline(void)
2135 {
2136 return conf_get_int(prefs_runtime_config.quota_wrapline);
2137 }
2138
2139
prefs_get_quota_maxline(void)2140 extern unsigned int prefs_get_quota_maxline(void)
2141 {
2142 unsigned int rez;
2143
2144 rez=prefs_runtime_config.quota_maxline;
2145 if (rez<1) rez = 1;
2146 if (rez>256) rez = 256;
2147 return rez;
2148 }
2149
conf_set_quota_maxline(const char * valstr)2150 static int conf_set_quota_maxline(const char *valstr)
2151 {
2152 return conf_set_int(&prefs_runtime_config.quota_maxline,valstr,0);
2153 }
2154
conf_setdef_quota_maxline(void)2155 static int conf_setdef_quota_maxline(void)
2156 {
2157 return conf_set_int(&prefs_runtime_config.quota_maxline,NULL,BNETD_QUOTA_MLINE);
2158 }
2159
conf_get_quota_maxline(void)2160 static const char* conf_get_quota_maxline(void)
2161 {
2162 return conf_get_int(prefs_runtime_config.quota_maxline);
2163 }
2164
2165
prefs_get_ladder_init_rating(void)2166 extern unsigned int prefs_get_ladder_init_rating(void)
2167 {
2168 return prefs_runtime_config.ladder_init_rating;
2169 }
2170
conf_set_ladder_init_rating(const char * valstr)2171 static int conf_set_ladder_init_rating(const char *valstr)
2172 {
2173 return conf_set_int(&prefs_runtime_config.ladder_init_rating,valstr,0);
2174 }
2175
conf_setdef_ladder_init_rating(void)2176 static int conf_setdef_ladder_init_rating(void)
2177 {
2178 return conf_set_int(&prefs_runtime_config.ladder_init_rating,NULL,BNETD_LADDER_INIT_RAT);
2179 }
2180
conf_get_ladder_init_rating(void)2181 static const char* conf_get_ladder_init_rating(void)
2182 {
2183 return conf_get_int(prefs_runtime_config.ladder_init_rating);
2184 }
2185
2186
prefs_get_quota_dobae(void)2187 extern unsigned int prefs_get_quota_dobae(void)
2188 {
2189 unsigned int rez;
2190
2191 rez=prefs_runtime_config.quota_dobae;
2192 if (rez<1) rez = 1;
2193 if (rez>100) rez = 100;
2194 return rez;
2195 }
2196
conf_set_quota_dobae(const char * valstr)2197 static int conf_set_quota_dobae(const char *valstr)
2198 {
2199 return conf_set_int(&prefs_runtime_config.quota_dobae,valstr,0);
2200 }
2201
conf_setdef_quota_dobae(void)2202 static int conf_setdef_quota_dobae(void)
2203 {
2204 return conf_set_int(&prefs_runtime_config.quota_dobae,NULL,BNETD_QUOTA_DOBAE);
2205 }
2206
conf_get_quota_dobae(void)2207 static const char* conf_get_quota_dobae(void)
2208 {
2209 return conf_get_int(prefs_runtime_config.quota_dobae);
2210 }
2211
2212
prefs_get_realmfile(void)2213 extern char const * prefs_get_realmfile(void)
2214 {
2215 return prefs_runtime_config.realmfile;
2216 }
2217
conf_set_realmfile(const char * valstr)2218 static int conf_set_realmfile(const char *valstr)
2219 {
2220 return conf_set_str(&prefs_runtime_config.realmfile,valstr,NULL);
2221 }
2222
conf_setdef_realmfile(void)2223 static int conf_setdef_realmfile(void)
2224 {
2225 return conf_set_str(&prefs_runtime_config.realmfile,NULL,BNETD_REALM_FILE);
2226 }
2227
conf_get_realmfile(void)2228 static const char* conf_get_realmfile(void)
2229 {
2230 return prefs_runtime_config.realmfile;
2231 }
2232
2233
prefs_get_issuefile(void)2234 extern char const * prefs_get_issuefile(void)
2235 {
2236 return prefs_runtime_config.issuefile;
2237 }
2238
conf_set_issuefile(const char * valstr)2239 static int conf_set_issuefile(const char *valstr)
2240 {
2241 return conf_set_str(&prefs_runtime_config.issuefile,valstr,NULL);
2242 }
2243
conf_setdef_issuefile(void)2244 static int conf_setdef_issuefile(void)
2245 {
2246 return conf_set_str(&prefs_runtime_config.issuefile,NULL,BNETD_ISSUE_FILE);
2247 }
2248
conf_get_issuefile(void)2249 static const char* conf_get_issuefile(void)
2250 {
2251 return prefs_runtime_config.issuefile;
2252 }
2253
2254
prefs_get_effective_user(void)2255 extern char const * prefs_get_effective_user(void)
2256 {
2257 return prefs_runtime_config.effective_user;
2258 }
2259
conf_set_effective_user(const char * valstr)2260 static int conf_set_effective_user(const char *valstr)
2261 {
2262 return conf_set_str(&prefs_runtime_config.effective_user,valstr,NULL);
2263 }
2264
conf_setdef_effective_user(void)2265 static int conf_setdef_effective_user(void)
2266 {
2267 return conf_set_str(&prefs_runtime_config.effective_user,NULL,NULL);
2268 }
2269
conf_get_effective_user(void)2270 static const char* conf_get_effective_user(void)
2271 {
2272 return prefs_runtime_config.effective_user;
2273 }
2274
2275
prefs_get_effective_group(void)2276 extern char const * prefs_get_effective_group(void)
2277 {
2278 return prefs_runtime_config.effective_group;
2279 }
2280
conf_set_effective_group(const char * valstr)2281 static int conf_set_effective_group(const char *valstr)
2282 {
2283 return conf_set_str(&prefs_runtime_config.effective_group,valstr,NULL);
2284 }
2285
conf_setdef_effective_group(void)2286 static int conf_setdef_effective_group(void)
2287 {
2288 return conf_set_str(&prefs_runtime_config.effective_group,NULL,NULL);
2289 }
2290
conf_get_effective_group(void)2291 static const char* conf_get_effective_group(void)
2292 {
2293 return prefs_runtime_config.effective_group;
2294 }
2295
2296
prefs_get_nullmsg(void)2297 extern unsigned int prefs_get_nullmsg(void)
2298 {
2299 return prefs_runtime_config.nullmsg;
2300 }
2301
conf_set_nullmsg(const char * valstr)2302 static int conf_set_nullmsg(const char *valstr)
2303 {
2304 return conf_set_int(&prefs_runtime_config.nullmsg,valstr,0);
2305 }
2306
conf_setdef_nullmsg(void)2307 static int conf_setdef_nullmsg(void)
2308 {
2309 return conf_set_int(&prefs_runtime_config.nullmsg,NULL,BNETD_DEF_NULLMSG);
2310 }
2311
conf_get_nullmsg(void)2312 static const char* conf_get_nullmsg(void)
2313 {
2314 return conf_get_int(prefs_runtime_config.nullmsg);
2315 }
2316
2317
prefs_get_mail_support(void)2318 extern unsigned int prefs_get_mail_support(void)
2319 {
2320 return prefs_runtime_config.mail_support;
2321 }
2322
conf_set_mail_support(const char * valstr)2323 static int conf_set_mail_support(const char *valstr)
2324 {
2325 return conf_set_bool(&prefs_runtime_config.mail_support,valstr,0);
2326 }
2327
conf_setdef_mail_support(void)2328 static int conf_setdef_mail_support(void)
2329 {
2330 return conf_set_bool(&prefs_runtime_config.mail_support,NULL,BNETD_MAIL_SUPPORT);
2331 }
2332
conf_get_mail_support(void)2333 static const char* conf_get_mail_support(void)
2334 {
2335 return conf_get_bool(prefs_runtime_config.mail_support);
2336 }
2337
2338
prefs_get_mail_quota(void)2339 extern unsigned int prefs_get_mail_quota(void)
2340 {
2341 unsigned int rez;
2342
2343 rez=prefs_runtime_config.mail_quota;
2344 if (rez<1) rez = 1;
2345 if (rez>30) rez = 30;
2346 return rez;
2347 }
2348
conf_set_mail_quota(const char * valstr)2349 static int conf_set_mail_quota(const char *valstr)
2350 {
2351 return conf_set_int(&prefs_runtime_config.mail_quota,valstr,0);
2352 }
2353
conf_setdef_mail_quota(void)2354 static int conf_setdef_mail_quota(void)
2355 {
2356 return conf_set_int(&prefs_runtime_config.mail_quota,NULL,BNETD_MAIL_QUOTA);
2357 }
2358
conf_get_mail_quota(void)2359 static const char* conf_get_mail_quota(void)
2360 {
2361 return conf_get_int(prefs_runtime_config.mail_quota);
2362 }
2363
2364
prefs_get_maildir(void)2365 extern char const * prefs_get_maildir(void)
2366 {
2367 return prefs_runtime_config.maildir;
2368 }
2369
conf_set_maildir(const char * valstr)2370 static int conf_set_maildir(const char *valstr)
2371 {
2372 return conf_set_str(&prefs_runtime_config.maildir,valstr,NULL);
2373 }
2374
conf_setdef_maildir(void)2375 static int conf_setdef_maildir(void)
2376 {
2377 return conf_set_str(&prefs_runtime_config.maildir,NULL,BNETD_MAIL_DIR);
2378 }
2379
conf_get_maildir(void)2380 static const char* conf_get_maildir(void)
2381 {
2382 return prefs_runtime_config.maildir;
2383 }
2384
2385
prefs_get_log_notice(void)2386 extern char const * prefs_get_log_notice(void)
2387 {
2388 return prefs_runtime_config.log_notice;
2389 }
2390
conf_set_log_notice(const char * valstr)2391 static int conf_set_log_notice(const char *valstr)
2392 {
2393 return conf_set_str(&prefs_runtime_config.log_notice,valstr,NULL);
2394 }
2395
conf_setdef_log_notice(void)2396 static int conf_setdef_log_notice(void)
2397 {
2398 return conf_set_str(&prefs_runtime_config.log_notice,NULL,BNETD_LOG_NOTICE);
2399 }
2400
conf_get_log_notice(void)2401 static const char* conf_get_log_notice(void)
2402 {
2403 return prefs_runtime_config.log_notice;
2404 }
2405
2406
prefs_get_savebyname(void)2407 extern unsigned int prefs_get_savebyname(void)
2408 {
2409 return prefs_runtime_config.savebyname;
2410 }
2411
conf_set_savebyname(const char * valstr)2412 static int conf_set_savebyname(const char *valstr)
2413 {
2414 return conf_set_bool(&prefs_runtime_config.savebyname,valstr,0);
2415 }
2416
conf_setdef_savebyname(void)2417 static int conf_setdef_savebyname(void)
2418 {
2419 return conf_set_bool(&prefs_runtime_config.savebyname,NULL,1);
2420 }
2421
conf_get_savebyname(void)2422 static const char* conf_get_savebyname(void)
2423 {
2424 return conf_get_bool(prefs_runtime_config.savebyname);
2425 }
2426
2427
prefs_get_skip_versioncheck(void)2428 extern unsigned int prefs_get_skip_versioncheck(void)
2429 {
2430 return prefs_runtime_config.skip_versioncheck;
2431 }
2432
conf_set_skip_versioncheck(const char * valstr)2433 static int conf_set_skip_versioncheck(const char *valstr)
2434 {
2435 return conf_set_bool(&prefs_runtime_config.skip_versioncheck,valstr,0);
2436 }
2437
conf_setdef_skip_versioncheck(void)2438 static int conf_setdef_skip_versioncheck(void)
2439 {
2440 return conf_set_bool(&prefs_runtime_config.skip_versioncheck,NULL,0);
2441 }
2442
conf_get_skip_versioncheck(void)2443 static const char* conf_get_skip_versioncheck(void)
2444 {
2445 return conf_get_bool(prefs_runtime_config.skip_versioncheck);
2446 }
2447
2448
prefs_get_allow_bad_version(void)2449 extern unsigned int prefs_get_allow_bad_version(void)
2450 {
2451 return prefs_runtime_config.allow_bad_version;
2452 }
2453
conf_set_allow_bad_version(const char * valstr)2454 static int conf_set_allow_bad_version(const char *valstr)
2455 {
2456 return conf_set_bool(&prefs_runtime_config.allow_bad_version,valstr,0);
2457 }
2458
conf_setdef_allow_bad_version(void)2459 static int conf_setdef_allow_bad_version(void)
2460 {
2461 return conf_set_bool(&prefs_runtime_config.allow_bad_version,NULL,0);
2462 }
2463
conf_get_allow_bad_version(void)2464 static const char* conf_get_allow_bad_version(void)
2465 {
2466 return conf_get_bool(prefs_runtime_config.allow_bad_version);
2467 }
2468
2469
prefs_get_allow_unknown_version(void)2470 extern unsigned int prefs_get_allow_unknown_version(void)
2471 {
2472 return prefs_runtime_config.allow_unknown_version;
2473 }
2474
conf_set_allow_unknown_version(const char * valstr)2475 static int conf_set_allow_unknown_version(const char *valstr)
2476 {
2477 return conf_set_bool(&prefs_runtime_config.allow_unknown_version,valstr,0);
2478 }
2479
conf_setdef_allow_unknown_version(void)2480 static int conf_setdef_allow_unknown_version(void)
2481 {
2482 return conf_set_bool(&prefs_runtime_config.allow_unknown_version,NULL,0);
2483 }
2484
conf_get_allow_unknown_version(void)2485 static const char* conf_get_allow_unknown_version(void)
2486 {
2487 return conf_get_bool(prefs_runtime_config.allow_unknown_version);
2488 }
2489
2490
prefs_get_versioncheck_file(void)2491 extern char const * prefs_get_versioncheck_file(void)
2492 {
2493 return prefs_runtime_config.versioncheck_file;
2494 }
2495
conf_set_versioncheck_file(const char * valstr)2496 static int conf_set_versioncheck_file(const char *valstr)
2497 {
2498 return conf_set_str(&prefs_runtime_config.versioncheck_file,valstr,NULL);
2499 }
2500
conf_setdef_versioncheck_file(void)2501 static int conf_setdef_versioncheck_file(void)
2502 {
2503 return conf_set_str(&prefs_runtime_config.versioncheck_file,NULL,PVPGN_VERSIONCHECK);
2504 }
2505
conf_get_versioncheck_file(void)2506 static const char* conf_get_versioncheck_file(void)
2507 {
2508 return prefs_runtime_config.versioncheck_file;
2509 }
2510
2511
prefs_allow_d2cs_setname(void)2512 extern unsigned int prefs_allow_d2cs_setname(void)
2513 {
2514 return prefs_runtime_config.allow_d2cs_setname;
2515 }
2516
conf_set_allow_d2cs_setname(const char * valstr)2517 static int conf_set_allow_d2cs_setname(const char *valstr)
2518 {
2519 return conf_set_bool(&prefs_runtime_config.allow_d2cs_setname,valstr,0);
2520 }
2521
conf_setdef_allow_d2cs_setname(void)2522 static int conf_setdef_allow_d2cs_setname(void)
2523 {
2524 return conf_set_bool(&prefs_runtime_config.allow_d2cs_setname,NULL,1);
2525 }
2526
conf_get_allow_d2cs_setname(void)2527 static const char* conf_get_allow_d2cs_setname(void)
2528 {
2529 return conf_get_bool(prefs_runtime_config.allow_d2cs_setname);
2530 }
2531
2532
prefs_get_d2cs_version(void)2533 extern unsigned int prefs_get_d2cs_version(void)
2534 {
2535 return prefs_runtime_config.d2cs_version;
2536 }
2537
conf_set_d2cs_version(const char * valstr)2538 static int conf_set_d2cs_version(const char *valstr)
2539 {
2540 return conf_set_int(&prefs_runtime_config.d2cs_version,valstr,0);
2541 }
2542
conf_setdef_d2cs_version(void)2543 static int conf_setdef_d2cs_version(void)
2544 {
2545 return conf_set_int(&prefs_runtime_config.d2cs_version,NULL,0);
2546 }
2547
conf_get_d2cs_version(void)2548 static const char* conf_get_d2cs_version(void)
2549 {
2550 return conf_get_int(prefs_runtime_config.d2cs_version);
2551 }
2552
2553
prefs_get_hashtable_size(void)2554 extern unsigned int prefs_get_hashtable_size(void)
2555 {
2556 return prefs_runtime_config.hashtable_size;
2557 }
2558
conf_set_hashtable_size(const char * valstr)2559 static int conf_set_hashtable_size(const char *valstr)
2560 {
2561 return conf_set_int(&prefs_runtime_config.hashtable_size,valstr,0);
2562 }
2563
conf_setdef_hashtable_size(void)2564 static int conf_setdef_hashtable_size(void)
2565 {
2566 return conf_set_int(&prefs_runtime_config.hashtable_size,NULL,BNETD_HASHTABLE_SIZE);
2567 }
2568
conf_get_hashtable_size(void)2569 static const char* conf_get_hashtable_size(void)
2570 {
2571 return conf_get_int(prefs_runtime_config.hashtable_size);
2572 }
2573
2574
prefs_get_telnet_addrs(void)2575 extern char const * prefs_get_telnet_addrs(void)
2576 {
2577 return prefs_runtime_config.telnetaddrs;
2578 }
2579
conf_set_telnetaddrs(const char * valstr)2580 static int conf_set_telnetaddrs(const char *valstr)
2581 {
2582 return conf_set_str(&prefs_runtime_config.telnetaddrs,valstr,NULL);
2583 }
2584
conf_setdef_telnetaddrs(void)2585 static int conf_setdef_telnetaddrs(void)
2586 {
2587 return conf_set_str(&prefs_runtime_config.telnetaddrs,NULL,BNETD_TELNET_ADDRS);
2588 }
2589
conf_get_telnetaddrs(void)2590 static const char* conf_get_telnetaddrs(void)
2591 {
2592 return prefs_runtime_config.telnetaddrs;
2593 }
2594
2595
prefs_get_ipban_check_int(void)2596 extern unsigned int prefs_get_ipban_check_int(void)
2597 {
2598 return prefs_runtime_config.ipban_check_int;
2599 }
2600
conf_set_ipban_check_int(const char * valstr)2601 static int conf_set_ipban_check_int(const char *valstr)
2602 {
2603 return conf_set_int(&prefs_runtime_config.ipban_check_int,valstr,0);
2604 }
2605
conf_setdef_ipban_check_int(void)2606 static int conf_setdef_ipban_check_int(void)
2607 {
2608 return conf_set_int(&prefs_runtime_config.ipban_check_int,NULL,30);
2609 }
2610
conf_get_ipban_check_int(void)2611 static const char* conf_get_ipban_check_int(void)
2612 {
2613 return conf_get_int(prefs_runtime_config.ipban_check_int);
2614 }
2615
2616
prefs_get_version_exeinfo_match(void)2617 extern char const * prefs_get_version_exeinfo_match(void)
2618 {
2619 return prefs_runtime_config.version_exeinfo_match;
2620 }
2621
conf_set_version_exeinfo_match(const char * valstr)2622 static int conf_set_version_exeinfo_match(const char *valstr)
2623 {
2624 return conf_set_str(&prefs_runtime_config.version_exeinfo_match,valstr,NULL);
2625 }
2626
conf_setdef_version_exeinfo_match(void)2627 static int conf_setdef_version_exeinfo_match(void)
2628 {
2629 return conf_set_str(&prefs_runtime_config.version_exeinfo_match,NULL,BNETD_EXEINFO_MATCH);
2630 }
2631
conf_get_version_exeinfo_match(void)2632 static const char* conf_get_version_exeinfo_match(void)
2633 {
2634 return prefs_runtime_config.version_exeinfo_match;
2635 }
2636
2637
prefs_get_version_exeinfo_maxdiff(void)2638 extern unsigned int prefs_get_version_exeinfo_maxdiff(void)
2639 {
2640 return prefs_runtime_config.version_exeinfo_maxdiff;
2641 }
2642
conf_set_version_exeinfo_maxdiff(const char * valstr)2643 static int conf_set_version_exeinfo_maxdiff(const char *valstr)
2644 {
2645 return conf_set_int(&prefs_runtime_config.version_exeinfo_maxdiff,valstr,0);
2646 }
2647
conf_setdef_version_exeinfo_maxdiff(void)2648 static int conf_setdef_version_exeinfo_maxdiff(void)
2649 {
2650 return conf_set_int(&prefs_runtime_config.version_exeinfo_maxdiff,NULL,PVPGN_VERSION_TIMEDIV);
2651 }
2652
conf_get_version_exeinfo_maxdiff(void)2653 static const char* conf_get_version_exeinfo_maxdiff(void)
2654 {
2655 return conf_get_int(prefs_runtime_config.version_exeinfo_maxdiff);
2656 }
2657
2658
prefs_get_max_concurrent_logins(void)2659 extern unsigned int prefs_get_max_concurrent_logins(void)
2660 {
2661 return prefs_runtime_config.max_concurrent_logins;
2662 }
2663
conf_set_max_concurrent_logins(const char * valstr)2664 static int conf_set_max_concurrent_logins(const char *valstr)
2665 {
2666 return conf_set_int(&prefs_runtime_config.max_concurrent_logins,valstr,0);
2667 }
2668
conf_setdef_max_concurrent_logins(void)2669 static int conf_setdef_max_concurrent_logins(void)
2670 {
2671 return conf_set_int(&prefs_runtime_config.max_concurrent_logins,NULL,0);
2672 }
2673
conf_get_max_concurrent_logins(void)2674 static const char* conf_get_max_concurrent_logins(void)
2675 {
2676 return conf_get_int(prefs_runtime_config.max_concurrent_logins);
2677 }
2678
2679
prefs_get_server_info(void)2680 extern char const * prefs_get_server_info( void )
2681 {
2682 return prefs_runtime_config.server_info;
2683 }
2684
conf_set_server_info(const char * valstr)2685 static int conf_set_server_info(const char *valstr)
2686 {
2687 return conf_set_str(&prefs_runtime_config.server_info,valstr,NULL);
2688 }
2689
conf_setdef_server_info(void)2690 static int conf_setdef_server_info(void)
2691 {
2692 return conf_set_str(&prefs_runtime_config.server_info,NULL,"");
2693 }
2694
conf_get_server_info(void)2695 static const char* conf_get_server_info(void)
2696 {
2697 return prefs_runtime_config.server_info;
2698 }
2699
2700
prefs_get_mapsfile(void)2701 extern char const * prefs_get_mapsfile(void)
2702 {
2703 return prefs_runtime_config.mapsfile;
2704 }
2705
conf_set_mapsfile(const char * valstr)2706 static int conf_set_mapsfile(const char *valstr)
2707 {
2708 return conf_set_str(&prefs_runtime_config.mapsfile,valstr,NULL);
2709 }
2710
conf_setdef_mapsfile(void)2711 static int conf_setdef_mapsfile(void)
2712 {
2713 return conf_set_str(&prefs_runtime_config.mapsfile,NULL,NULL);
2714 }
2715
conf_get_mapsfile(void)2716 static const char* conf_get_mapsfile(void)
2717 {
2718 return prefs_runtime_config.mapsfile;
2719 }
2720
2721
prefs_get_xplevel_file(void)2722 extern char const * prefs_get_xplevel_file(void)
2723 {
2724 return prefs_runtime_config.xplevelfile;
2725 }
2726
conf_set_xplevelfile(const char * valstr)2727 static int conf_set_xplevelfile(const char *valstr)
2728 {
2729 return conf_set_str(&prefs_runtime_config.xplevelfile,valstr,NULL);
2730 }
2731
conf_setdef_xplevelfile(void)2732 static int conf_setdef_xplevelfile(void)
2733 {
2734 return conf_set_str(&prefs_runtime_config.xplevelfile,NULL,NULL);
2735 }
2736
conf_get_xplevelfile(void)2737 static const char* conf_get_xplevelfile(void)
2738 {
2739 return prefs_runtime_config.xplevelfile;
2740 }
2741
2742
prefs_get_xpcalc_file(void)2743 extern char const * prefs_get_xpcalc_file(void)
2744 {
2745 return prefs_runtime_config.xpcalcfile;
2746 }
2747
conf_set_xpcalcfile(const char * valstr)2748 static int conf_set_xpcalcfile(const char *valstr)
2749 {
2750 return conf_set_str(&prefs_runtime_config.xpcalcfile,valstr,NULL);
2751 }
2752
conf_setdef_xpcalcfile(void)2753 static int conf_setdef_xpcalcfile(void)
2754 {
2755 return conf_set_str(&prefs_runtime_config.xpcalcfile,NULL,NULL);
2756 }
2757
conf_get_xpcalcfile(void)2758 static const char* conf_get_xpcalcfile(void)
2759 {
2760 return prefs_runtime_config.xpcalcfile;
2761 }
2762
2763
prefs_get_initkill_timer(void)2764 extern int prefs_get_initkill_timer(void)
2765 {
2766 return prefs_runtime_config.initkill_timer;
2767 }
2768
conf_set_initkill_timer(const char * valstr)2769 static int conf_set_initkill_timer(const char *valstr)
2770 {
2771 return conf_set_int(&prefs_runtime_config.initkill_timer,valstr,0);
2772 }
2773
conf_setdef_initkill_timer(void)2774 static int conf_setdef_initkill_timer(void)
2775 {
2776 return conf_set_int(&prefs_runtime_config.initkill_timer,NULL,0);
2777 }
2778
conf_get_initkill_timer(void)2779 static const char* conf_get_initkill_timer(void)
2780 {
2781 return conf_get_int(prefs_runtime_config.initkill_timer);
2782 }
2783
2784
prefs_get_war3_ladder_update_secs(void)2785 extern int prefs_get_war3_ladder_update_secs(void)
2786 {
2787 return prefs_runtime_config.war3_ladder_update_secs;
2788 }
2789
conf_set_war3_ladder_update_secs(const char * valstr)2790 static int conf_set_war3_ladder_update_secs(const char *valstr)
2791 {
2792 return conf_set_int(&prefs_runtime_config.war3_ladder_update_secs,valstr,0);
2793 }
2794
conf_setdef_war3_ladder_update_secs(void)2795 static int conf_setdef_war3_ladder_update_secs(void)
2796 {
2797 return conf_set_int(&prefs_runtime_config.war3_ladder_update_secs,NULL,0);
2798 }
2799
conf_get_war3_ladder_update_secs(void)2800 static const char* conf_get_war3_ladder_update_secs(void)
2801 {
2802 return conf_get_int(prefs_runtime_config.war3_ladder_update_secs);
2803 }
2804
2805
prefs_get_output_update_secs(void)2806 extern int prefs_get_output_update_secs(void)
2807 {
2808 return prefs_runtime_config.output_update_secs;
2809 }
2810
conf_set_output_update_secs(const char * valstr)2811 static int conf_set_output_update_secs(const char *valstr)
2812 {
2813 return conf_set_int(&prefs_runtime_config.output_update_secs,valstr,0);
2814 }
2815
conf_setdef_output_update_secs(void)2816 static int conf_setdef_output_update_secs(void)
2817 {
2818 return conf_set_int(&prefs_runtime_config.output_update_secs,NULL,0);
2819 }
2820
conf_get_output_update_secs(void)2821 static const char* conf_get_output_update_secs(void)
2822 {
2823 return conf_get_int(prefs_runtime_config.output_update_secs);
2824 }
2825
2826
prefs_get_ladderdir(void)2827 extern char const * prefs_get_ladderdir(void)
2828 {
2829 return prefs_runtime_config.ladderdir;
2830 }
2831
conf_set_ladderdir(const char * valstr)2832 static int conf_set_ladderdir(const char *valstr)
2833 {
2834 return conf_set_str(&prefs_runtime_config.ladderdir,valstr,NULL);
2835 }
2836
conf_setdef_ladderdir(void)2837 static int conf_setdef_ladderdir(void)
2838 {
2839 return conf_set_str(&prefs_runtime_config.ladderdir,NULL,BNETD_LADDER_DIR);
2840 }
2841
conf_get_ladderdir(void)2842 static const char* conf_get_ladderdir(void)
2843 {
2844 return prefs_runtime_config.ladderdir;
2845 }
2846
2847
prefs_get_outputdir(void)2848 extern char const * prefs_get_outputdir(void)
2849 {
2850 return prefs_runtime_config.statusdir;
2851 }
2852
conf_set_statusdir(const char * valstr)2853 static int conf_set_statusdir(const char *valstr)
2854 {
2855 return conf_set_str(&prefs_runtime_config.statusdir,valstr,NULL);
2856 }
2857
conf_setdef_statusdir(void)2858 static int conf_setdef_statusdir(void)
2859 {
2860 return conf_set_str(&prefs_runtime_config.statusdir,NULL,BNETD_STATUS_DIR);
2861 }
2862
conf_get_statusdir(void)2863 static const char* conf_get_statusdir(void)
2864 {
2865 return prefs_runtime_config.statusdir;
2866 }
2867
2868
prefs_get_XML_output_ladder(void)2869 extern int prefs_get_XML_output_ladder(void)
2870 {
2871 return prefs_runtime_config.XML_output_ladder;
2872 }
2873
conf_set_XML_output_ladder(const char * valstr)2874 static int conf_set_XML_output_ladder(const char *valstr)
2875 {
2876 return conf_set_bool(&prefs_runtime_config.XML_output_ladder,valstr,0);
2877 }
2878
conf_setdef_XML_output_ladder(void)2879 static int conf_setdef_XML_output_ladder(void)
2880 {
2881 return conf_set_bool(&prefs_runtime_config.XML_output_ladder,NULL,0);
2882 }
2883
conf_get_XML_output_ladder(void)2884 static const char* conf_get_XML_output_ladder(void)
2885 {
2886 return conf_get_bool(prefs_runtime_config.XML_output_ladder);
2887 }
2888
2889
prefs_get_XML_status_output(void)2890 extern int prefs_get_XML_status_output(void)
2891 {
2892 return prefs_runtime_config.XML_status_output;
2893 }
2894
conf_set_XML_status_output(const char * valstr)2895 static int conf_set_XML_status_output(const char *valstr)
2896 {
2897 return conf_set_bool(&prefs_runtime_config.XML_status_output,valstr,0);
2898 }
2899
conf_setdef_XML_status_output(void)2900 static int conf_setdef_XML_status_output(void)
2901 {
2902 return conf_set_bool(&prefs_runtime_config.XML_status_output,NULL,0);
2903 }
2904
conf_get_XML_status_output(void)2905 static const char* conf_get_XML_status_output(void)
2906 {
2907 return conf_get_bool(prefs_runtime_config.XML_status_output);
2908 }
2909
2910
prefs_get_account_allowed_symbols(void)2911 extern char const * prefs_get_account_allowed_symbols(void)
2912 {
2913 return prefs_runtime_config.account_allowed_symbols;
2914 }
2915
conf_set_account_allowed_symbols(const char * valstr)2916 static int conf_set_account_allowed_symbols(const char *valstr)
2917 {
2918 return conf_set_str(&prefs_runtime_config.account_allowed_symbols,valstr,NULL);
2919 }
2920
conf_setdef_account_allowed_symbols(void)2921 static int conf_setdef_account_allowed_symbols(void)
2922 {
2923 return conf_set_str(&prefs_runtime_config.account_allowed_symbols,NULL,PVPGN_DEFAULT_SYMB);
2924 }
2925
conf_get_account_allowed_symbols(void)2926 static const char* conf_get_account_allowed_symbols(void)
2927 {
2928 return prefs_runtime_config.account_allowed_symbols;
2929 }
2930
2931
prefs_get_account_force_username(void)2932 extern unsigned int prefs_get_account_force_username(void)
2933 {
2934 return prefs_runtime_config.account_force_username;
2935 }
2936
conf_set_account_force_username(const char * valstr)2937 static int conf_set_account_force_username(const char *valstr)
2938 {
2939 return conf_set_bool(&prefs_runtime_config.account_force_username,valstr,0);
2940 }
2941
conf_setdef_account_force_username(void)2942 static int conf_setdef_account_force_username(void)
2943 {
2944 return conf_set_bool(&prefs_runtime_config.account_force_username,NULL,0);
2945 }
2946
conf_get_account_force_username(void)2947 static const char* conf_get_account_force_username(void)
2948 {
2949 return conf_get_bool(prefs_runtime_config.account_force_username);
2950 }
2951
prefs_get_command_groups_file(void)2952 extern char const * prefs_get_command_groups_file(void)
2953 {
2954 return prefs_runtime_config.command_groups_file;
2955 }
2956
conf_set_command_groups_file(const char * valstr)2957 static int conf_set_command_groups_file(const char *valstr)
2958 {
2959 return conf_set_str(&prefs_runtime_config.command_groups_file,valstr,NULL);
2960 }
2961
conf_setdef_command_groups_file(void)2962 static int conf_setdef_command_groups_file(void)
2963 {
2964 return conf_set_str(&prefs_runtime_config.command_groups_file,NULL,BNETD_COMMAND_GROUPS_FILE);
2965 }
2966
conf_get_command_groups_file(void)2967 static const char* conf_get_command_groups_file(void)
2968 {
2969 return prefs_runtime_config.command_groups_file;
2970 }
2971
2972
prefs_get_tournament_file(void)2973 extern char const * prefs_get_tournament_file(void)
2974 {
2975 return prefs_runtime_config.tournament_file;
2976 }
2977
conf_set_tournament_file(const char * valstr)2978 static int conf_set_tournament_file(const char *valstr)
2979 {
2980 return conf_set_str(&prefs_runtime_config.tournament_file,valstr,NULL);
2981 }
2982
conf_setdef_tournament_file(void)2983 static int conf_setdef_tournament_file(void)
2984 {
2985 return conf_set_str(&prefs_runtime_config.tournament_file,NULL,BNETD_TOURNAMENT_FILE);
2986 }
2987
conf_get_tournament_file(void)2988 static const char* conf_get_tournament_file(void)
2989 {
2990 return prefs_runtime_config.tournament_file;
2991 }
2992
2993
prefs_get_aliasfile(void)2994 extern char const * prefs_get_aliasfile(void)
2995 {
2996 return prefs_runtime_config.aliasfile;
2997 }
2998
conf_set_aliasfile(const char * valstr)2999 static int conf_set_aliasfile(const char *valstr)
3000 {
3001 return conf_set_str(&prefs_runtime_config.aliasfile,valstr,NULL);
3002 }
3003
conf_setdef_aliasfile(void)3004 static int conf_setdef_aliasfile(void)
3005 {
3006 return conf_set_str(&prefs_runtime_config.aliasfile,NULL,BNETD_ALIASFILE);
3007 }
3008
conf_get_aliasfile(void)3009 static const char* conf_get_aliasfile(void)
3010 {
3011 return prefs_runtime_config.aliasfile;
3012 }
3013
3014
prefs_get_anongame_infos_file(void)3015 extern char const * prefs_get_anongame_infos_file(void)
3016 {
3017 return prefs_runtime_config.anongame_infos_file;
3018 }
3019
conf_set_anongame_infos_file(const char * valstr)3020 static int conf_set_anongame_infos_file(const char *valstr)
3021 {
3022 return conf_set_str(&prefs_runtime_config.anongame_infos_file,valstr,NULL);
3023 }
3024
conf_setdef_anongame_infos_file(void)3025 static int conf_setdef_anongame_infos_file(void)
3026 {
3027 return conf_set_str(&prefs_runtime_config.anongame_infos_file,NULL,PVPGN_AINFO_FILE);
3028 }
3029
conf_get_anongame_infos_file(void)3030 static const char* conf_get_anongame_infos_file(void)
3031 {
3032 return prefs_runtime_config.anongame_infos_file;
3033 }
3034
3035
prefs_get_max_conns_per_IP(void)3036 extern unsigned int prefs_get_max_conns_per_IP(void)
3037 {
3038 return prefs_runtime_config.max_conns_per_IP;
3039 }
3040
conf_set_max_conns_per_IP(const char * valstr)3041 static int conf_set_max_conns_per_IP(const char *valstr)
3042 {
3043 return conf_set_int(&prefs_runtime_config.max_conns_per_IP,valstr,0);
3044 }
3045
conf_setdef_max_conns_per_IP(void)3046 static int conf_setdef_max_conns_per_IP(void)
3047 {
3048 return conf_set_int(&prefs_runtime_config.max_conns_per_IP,NULL,0);
3049 }
3050
conf_get_max_conns_per_IP(void)3051 static const char* conf_get_max_conns_per_IP(void)
3052 {
3053 return conf_get_int(prefs_runtime_config.max_conns_per_IP);
3054 }
3055
3056
prefs_get_max_friends(void)3057 extern int prefs_get_max_friends(void)
3058 {
3059 return prefs_runtime_config.max_friends;
3060 }
3061
conf_set_max_friends(const char * valstr)3062 static int conf_set_max_friends(const char *valstr)
3063 {
3064 return conf_set_int(&prefs_runtime_config.max_friends,valstr,0);
3065 }
3066
conf_setdef_max_friends(void)3067 static int conf_setdef_max_friends(void)
3068 {
3069 return conf_set_int(&prefs_runtime_config.max_friends,NULL,MAX_FRIENDS);
3070 }
3071
conf_get_max_friends(void)3072 static const char* conf_get_max_friends(void)
3073 {
3074 return conf_get_int(prefs_runtime_config.max_friends);
3075 }
3076
3077
prefs_get_clan_newer_time(void)3078 extern unsigned int prefs_get_clan_newer_time(void)
3079 {
3080 return prefs_runtime_config.clan_newer_time;
3081 }
3082
conf_set_clan_newer_time(const char * valstr)3083 static int conf_set_clan_newer_time(const char *valstr)
3084 {
3085 return conf_set_int(&prefs_runtime_config.clan_newer_time,valstr,0);
3086 }
3087
conf_setdef_clan_newer_time(void)3088 static int conf_setdef_clan_newer_time(void)
3089 {
3090 return conf_set_int(&prefs_runtime_config.clan_newer_time,NULL,CLAN_NEWER_TIME);
3091 }
3092
conf_get_clan_newer_time(void)3093 static const char* conf_get_clan_newer_time(void)
3094 {
3095 return conf_get_int(prefs_runtime_config.clan_newer_time);
3096 }
3097
3098
prefs_get_clan_max_members(void)3099 extern unsigned int prefs_get_clan_max_members(void)
3100 {
3101 return prefs_runtime_config.clan_max_members;
3102 }
3103
conf_set_clan_max_members(const char * valstr)3104 static int conf_set_clan_max_members(const char *valstr)
3105 {
3106 int rez = conf_set_int(&prefs_runtime_config.clan_max_members,valstr,0);
3107
3108 if (!rez && valstr) {
3109 if (prefs_runtime_config.clan_max_members < CLAN_MIN_MEMBERS) {
3110 WARN1("Cannot set clan max members to %u lower than 10, setting to 10.", prefs_runtime_config.clan_max_members);
3111 prefs_runtime_config.clan_max_members = CLAN_MIN_MEMBERS;
3112 } else if (prefs_runtime_config.clan_max_members > CLAN_MAX_MEMBERS) {
3113 WARN1("Cannot set clan max members to %u higher than 100, setting to 100.", prefs_runtime_config.clan_max_members);
3114 prefs_runtime_config.clan_max_members = CLAN_MAX_MEMBERS;
3115 }
3116 }
3117
3118 return rez;
3119 }
3120
conf_setdef_clan_max_members(void)3121 static int conf_setdef_clan_max_members(void)
3122 {
3123 return conf_set_int(&prefs_runtime_config.clan_max_members,NULL,CLAN_DEFAULT_MAX_MEMBERS);
3124 }
3125
conf_get_clan_max_members(void)3126 static const char* conf_get_clan_max_members(void)
3127 {
3128 return conf_get_int(prefs_runtime_config.clan_max_members);
3129 }
3130
3131
prefs_get_clan_channel_default_private(void)3132 extern unsigned int prefs_get_clan_channel_default_private(void)
3133 {
3134 return prefs_runtime_config.clan_channel_default_private;
3135 }
3136
conf_set_clan_channel_default_private(const char * valstr)3137 static int conf_set_clan_channel_default_private(const char *valstr)
3138 {
3139 return conf_set_bool(&prefs_runtime_config.clan_channel_default_private,valstr,0);
3140 }
3141
conf_setdef_clan_channel_default_private(void)3142 static int conf_setdef_clan_channel_default_private(void)
3143 {
3144 return conf_set_bool(&prefs_runtime_config.clan_channel_default_private,NULL,0);
3145 }
3146
conf_get_clan_channel_default_private(void)3147 static const char* conf_get_clan_channel_default_private(void)
3148 {
3149 return conf_get_bool(prefs_runtime_config.clan_channel_default_private);
3150 }
3151
3152
prefs_get_passfail_count(void)3153 extern unsigned int prefs_get_passfail_count(void)
3154 {
3155 return prefs_runtime_config.passfail_count;
3156 }
3157
conf_set_passfail_count(const char * valstr)3158 static int conf_set_passfail_count(const char *valstr)
3159 {
3160 return conf_set_int(&prefs_runtime_config.passfail_count,valstr,0);
3161 }
3162
conf_setdef_passfail_count(void)3163 static int conf_setdef_passfail_count(void)
3164 {
3165 return conf_set_int(&prefs_runtime_config.passfail_count,NULL,0);
3166 }
3167
conf_get_passfail_count(void)3168 static const char* conf_get_passfail_count(void)
3169 {
3170 return conf_get_int(prefs_runtime_config.passfail_count);
3171 }
3172
3173
prefs_get_passfail_bantime(void)3174 extern unsigned int prefs_get_passfail_bantime(void)
3175 {
3176 return prefs_runtime_config.passfail_bantime;
3177 }
3178
conf_set_passfail_bantime(const char * valstr)3179 static int conf_set_passfail_bantime(const char *valstr)
3180 {
3181 return conf_set_int(&prefs_runtime_config.passfail_bantime,valstr,0);
3182 }
3183
conf_setdef_passfail_bantime(void)3184 static int conf_setdef_passfail_bantime(void)
3185 {
3186 return conf_set_int(&prefs_runtime_config.passfail_bantime,NULL,300);
3187 }
3188
conf_get_passfail_bantime(void)3189 static const char* conf_get_passfail_bantime(void)
3190 {
3191 return conf_get_int(prefs_runtime_config.passfail_bantime);
3192 }
3193
3194
prefs_get_maxusers_per_channel(void)3195 extern unsigned int prefs_get_maxusers_per_channel(void)
3196 {
3197 return prefs_runtime_config.maxusers_per_channel;
3198 }
3199
conf_set_maxusers_per_channel(const char * valstr)3200 static int conf_set_maxusers_per_channel(const char *valstr)
3201 {
3202 return conf_set_int(&prefs_runtime_config.maxusers_per_channel,valstr,0);
3203 }
3204
conf_setdef_maxusers_per_channel(void)3205 static int conf_setdef_maxusers_per_channel(void)
3206 {
3207 return conf_set_int(&prefs_runtime_config.maxusers_per_channel,NULL,0);
3208 }
3209
conf_get_maxusers_per_channel(void)3210 static const char* conf_get_maxusers_per_channel(void)
3211 {
3212 return conf_get_int(prefs_runtime_config.maxusers_per_channel);
3213 }
3214
3215
prefs_get_supportfile(void)3216 extern char const * prefs_get_supportfile(void)
3217 {
3218 return prefs_runtime_config.supportfile;
3219 }
3220
conf_set_supportfile(const char * valstr)3221 static int conf_set_supportfile(const char *valstr)
3222 {
3223 return conf_set_str(&prefs_runtime_config.supportfile,valstr,NULL);
3224 }
3225
conf_setdef_supportfile(void)3226 static int conf_setdef_supportfile(void)
3227 {
3228 return conf_set_str(&prefs_runtime_config.supportfile,NULL,BNETD_SUPPORT_FILE);
3229 }
3230
conf_get_supportfile(void)3231 static const char* conf_get_supportfile(void)
3232 {
3233 return prefs_runtime_config.supportfile;
3234 }
3235
3236
prefs_get_allowed_clients(void)3237 extern char const * prefs_get_allowed_clients(void)
3238 {
3239 return prefs_runtime_config.allowed_clients;
3240 }
3241
conf_set_allowed_clients(const char * valstr)3242 static int conf_set_allowed_clients(const char *valstr)
3243 {
3244 return conf_set_str(&prefs_runtime_config.allowed_clients,valstr,NULL);
3245 }
3246
conf_setdef_allowed_clients(void)3247 static int conf_setdef_allowed_clients(void)
3248 {
3249 return conf_set_str(&prefs_runtime_config.allowed_clients,NULL,NULL);
3250 }
3251
conf_get_allowed_clients(void)3252 static const char* conf_get_allowed_clients(void)
3253 {
3254 return prefs_runtime_config.allowed_clients;
3255 }
3256
3257
prefs_get_ladder_games(void)3258 extern char const * prefs_get_ladder_games(void)
3259 {
3260 return prefs_runtime_config.ladder_games;
3261 }
3262
conf_set_ladder_games(const char * valstr)3263 static int conf_set_ladder_games(const char *valstr)
3264 {
3265 return conf_set_str(&prefs_runtime_config.ladder_games,valstr,NULL);
3266 }
3267
conf_setdef_ladder_games(void)3268 static int conf_setdef_ladder_games(void)
3269 {
3270 return conf_set_str(&prefs_runtime_config.ladder_games,NULL,NULL);
3271 }
3272
conf_get_ladder_games(void)3273 static const char* conf_get_ladder_games(void)
3274 {
3275 return prefs_runtime_config.ladder_games;
3276 }
3277
3278
prefs_get_ladder_prefix(void)3279 extern char const * prefs_get_ladder_prefix(void)
3280 {
3281 return prefs_runtime_config.ladder_prefix;
3282 }
3283
conf_set_ladder_prefix(const char * valstr)3284 static int conf_set_ladder_prefix(const char *valstr)
3285 {
3286 return conf_set_str(&prefs_runtime_config.ladder_prefix,valstr,NULL);
3287 }
3288
conf_setdef_ladder_prefix(void)3289 static int conf_setdef_ladder_prefix(void)
3290 {
3291 return conf_set_str(&prefs_runtime_config.ladder_prefix,NULL,NULL);
3292 }
3293
conf_get_ladder_prefix(void)3294 static const char* conf_get_ladder_prefix(void)
3295 {
3296 return prefs_runtime_config.ladder_prefix;
3297 }
3298
3299
prefs_get_max_connections(void)3300 extern unsigned int prefs_get_max_connections(void)
3301 {
3302 return prefs_runtime_config.max_connections;
3303 }
3304
conf_set_max_connections(const char * valstr)3305 static int conf_set_max_connections(const char *valstr)
3306 {
3307 return conf_set_int(&prefs_runtime_config.max_connections,valstr,0);
3308 }
3309
conf_setdef_max_connections(void)3310 static int conf_setdef_max_connections(void)
3311 {
3312 return conf_set_int(&prefs_runtime_config.max_connections,NULL,BNETD_MAX_SOCKETS);
3313 }
3314
conf_get_max_connections(void)3315 static const char* conf_get_max_connections(void)
3316 {
3317 return conf_get_int(prefs_runtime_config.max_connections);
3318 }
3319
3320
prefs_get_sync_on_logoff(void)3321 extern unsigned int prefs_get_sync_on_logoff(void)
3322 {
3323 return prefs_runtime_config.sync_on_logoff;
3324 }
3325
conf_set_sync_on_logoff(const char * valstr)3326 static int conf_set_sync_on_logoff(const char *valstr)
3327 {
3328 return conf_set_bool(&prefs_runtime_config.sync_on_logoff,valstr,0);
3329 }
3330
conf_setdef_sync_on_logoff(void)3331 static int conf_setdef_sync_on_logoff(void)
3332 {
3333 return conf_set_bool(&prefs_runtime_config.sync_on_logoff,NULL,0);
3334 }
3335
conf_get_sync_on_logoff(void)3336 static const char* conf_get_sync_on_logoff(void)
3337 {
3338 return conf_get_bool(prefs_runtime_config.sync_on_logoff);
3339 }
3340
prefs_get_irc_network_name(void)3341 extern char const * prefs_get_irc_network_name(void)
3342 {
3343 return prefs_runtime_config.irc_network_name;
3344 }
3345
conf_set_irc_network_name(const char * valstr)3346 static int conf_set_irc_network_name(const char *valstr)
3347 {
3348 return conf_set_str(&prefs_runtime_config.irc_network_name,valstr,NULL);
3349 }
3350
conf_setdef_irc_network_name(void)3351 static int conf_setdef_irc_network_name(void)
3352 {
3353 return conf_set_str(&prefs_runtime_config.irc_network_name,NULL,BNETD_IRC_NETWORK_NAME);
3354 }
3355
conf_get_irc_network_name(void)3356 static const char* conf_get_irc_network_name(void)
3357 {
3358 return prefs_runtime_config.irc_network_name;
3359 }
3360
3361 /**
3362 * Westwood Online Extensions
3363 */
prefs_get_wol_addrs(void)3364 extern char const * prefs_get_wol_addrs(void)
3365 {
3366 return prefs_runtime_config.woladdrs;
3367 }
3368
conf_set_wol_addrs(const char * valstr)3369 static int conf_set_wol_addrs(const char *valstr)
3370 {
3371 return conf_set_str(&prefs_runtime_config.woladdrs,valstr,NULL);
3372 }
3373
conf_setdef_wol_addrs(void)3374 static int conf_setdef_wol_addrs(void)
3375 {
3376 return conf_set_str(&prefs_runtime_config.woladdrs,NULL,BNETD_WOL_ADDRS);
3377 }
3378
conf_get_wol_addrs(void)3379 static const char* conf_get_wol_addrs(void)
3380 {
3381 return prefs_runtime_config.woladdrs;
3382 }
3383
3384
conf_set_wol_timezone(const char * valstr)3385 static int conf_set_wol_timezone(const char *valstr)
3386 {
3387 return conf_set_str(&prefs_runtime_config.woltimezone,valstr,NULL);
3388 }
3389
prefs_get_wol_timezone(void)3390 extern char const * prefs_get_wol_timezone(void)
3391 {
3392 return prefs_runtime_config.woltimezone;
3393 }
3394
conf_get_wol_timezone(void)3395 static char const * conf_get_wol_timezone(void)
3396 {
3397 return prefs_runtime_config.woltimezone;
3398 }
3399
conf_setdef_wol_timezone(void)3400 static int conf_setdef_wol_timezone(void)
3401 {
3402 return conf_set_str(&prefs_runtime_config.woltimezone,NULL,0);
3403 }
3404
conf_set_wol_longitude(const char * valstr)3405 static int conf_set_wol_longitude(const char *valstr)
3406 {
3407 return conf_set_str(&prefs_runtime_config.wollongitude,valstr,NULL);
3408 }
3409
prefs_get_wol_longitude(void)3410 extern char const * prefs_get_wol_longitude(void)
3411 {
3412 return prefs_runtime_config.wollongitude;
3413 }
3414
conf_get_wol_longitude(void)3415 static char const * conf_get_wol_longitude(void)
3416 {
3417 return prefs_runtime_config.wollongitude;
3418 }
3419
conf_setdef_wol_longitude(void)3420 static int conf_setdef_wol_longitude(void)
3421 {
3422 return conf_set_str(&prefs_runtime_config.wollongitude,NULL,0);
3423 }
3424
conf_set_wol_latitude(const char * valstr)3425 static int conf_set_wol_latitude(const char *valstr)
3426 {
3427 return conf_set_str(&prefs_runtime_config.wollatitude,valstr,NULL);
3428 }
3429
prefs_get_wol_latitude(void)3430 extern char const * prefs_get_wol_latitude(void)
3431 {
3432 return prefs_runtime_config.wollatitude;
3433 }
3434
conf_get_wol_latitude(void)3435 static char const * conf_get_wol_latitude(void)
3436 {
3437 return prefs_runtime_config.wollatitude;
3438 }
3439
conf_setdef_wol_latitude(void)3440 static int conf_setdef_wol_latitude(void)
3441 {
3442 return conf_set_str(&prefs_runtime_config.wollatitude,NULL,0);
3443 }
3444