1 // Copyright (c) 1987-2019 by the citadel.org team
3 // This program is open source software; you can redistribute it and/or modify
4 // it under the terms of the GNU General Public License version 3.
6 // This program is distributed in the hope that it will be useful,
7 // but WITHOUT ANY WARRANTY; without even the implied warranty of
8 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
9 // GNU General Public License for more details.
11 #include "serv_extensions.h"
13 #include "ctdl_module.h"
15 /* Simple linked list structures ... used in a bunch of different places. */
16 typedef struct RoomProcList RoomProcList;
18 struct RoomProcList *next;
19 char name[ROOMNAMELEN];
20 char lcname[ROOMNAMELEN];
27 struct UserProcList *next;
28 char user[USERNAME_SIZE];
31 #define CTDLUSERIP (IsEmptyStr(CC->cs_addr) ? CC->cs_clientinfo: CC->cs_addr)
33 void master_startup (void);
34 int master_cleanup (int exitcode);
35 void set_wtmpsupp (char *newtext);
36 void set_wtmpsupp_to_current_room(void);
37 void do_command_loop(void);
38 void do_async_loop(void);
39 void begin_session(struct CitContext *con);
40 void citproto_begin_session(void);
41 void citproto_begin_admin_session(void);
42 void help_subst (char *strbuf, char *source, char *dest);
43 char CtdlCheckExpress(void);
46 extern time_t server_startup_time;
47 extern int openid_level_supported;