* wildmat.c, braindamage.c: added
[citadel.git] / webcit / webcit.h
1 /* $Id$ */
2
3 #define SLEEPING        180     /* TCP connection timeout */
4 #define WEBCIT_TIMEOUT  900     /* WebCit session timeout */
5 #define PORT_NUM        2000    /* port number to listen on */
6 #define SERVER          "WebCit v2.0 (Velma)"   /* who's in da house */
7 #define DEVELOPER_ID    0
8 #define CLIENT_ID       4
9 #define CLIENT_VERSION  200
10 #define DEFAULT_HOST    "localhost"
11 #define DEFAULT_PORT    "citadel"
12 #define LB              (1)
13 #define RB              (2)
14 #define QU              (3)
15 #define TARGET          "webcit01"
16 #define HOUSEKEEPING    60      /* Housekeeping frequency */
17
18
19 /* Values that can be returned by browser_braindamage_check() */
20 #define B_YES           0       /* Ok to use frames and JavaScript */
21 #define B_NO            1       /* Do not use frames and JavaScript */
22 #define B_ASK           2       /* Ask the user */
23
24
25 /* Room flags (from Citadel) */
26 #define QR_PERMANENT    1       /* Room does not purge              */
27 #define QR_INUSE        2       /* Set if in use, clear if avail    */
28 #define QR_PRIVATE      4       /* Set for any type of private room */
29 #define QR_PASSWORDED   8       /* Set if there's a password too    */
30 #define QR_GUESSNAME    16      /* Set if it's a guessname room     */
31 #define QR_DIRECTORY    32      /* Directory room                   */
32 #define QR_UPLOAD       64      /* Allowed to upload                */
33 #define QR_DOWNLOAD     128     /* Allowed to download              */
34 #define QR_VISDIR       256     /* Visible directory                */
35 #define QR_ANONONLY     512     /* Anonymous-Only room              */
36 #define QR_ANONOPT      1024    /* Anonymous-Option room            */
37 #define QR_NETWORK      2048    /* Shared network room              */
38 #define QR_PREFONLY     4096    /* Preferred status needed to enter */
39 #define QR_READONLY     8192    /* Aide status required to post     */
40 #define QR_MAILBOX      16384   /* Set if this is a private mailbox */
41
42
43
44 struct webcontent {
45         struct webcontent *next;
46         char w_data[256];
47 };
48
49 struct urlcontent {
50         struct urlcontent *next;
51         char url_key[32];
52         char *url_data;
53 };
54
55 struct serv_info {
56         int serv_pid;
57         char serv_nodename[32];
58         char serv_humannode[64];
59         char serv_fqdn[64];
60         char serv_software[64];
61         int serv_rev_level;
62         char serv_bbs_city[64];
63         char serv_sysadm[64];
64         char serv_moreprompt[256];
65         int serv_ok_floors;
66 };
67
68 extern char wc_username[256];
69 extern char wc_password[256];
70 extern char wc_roomname[256];
71 extern int connected;
72 extern int logged_in;
73 extern int axlevel;
74 extern int is_aide;
75 extern int is_room_aide;
76 extern int serv_sock;
77 extern struct serv_info serv_info;
78 extern unsigned room_flags;
79 extern char ugname[128];
80 extern long uglsn;
81 extern char *axdefs[];
82 extern int upload_length;
83 extern char *upload;
84 extern char floorlist[128][256];
85 extern int noframes;
86
87 void stuff_to_cookie(char *, int, char *, char *, char *, int);
88 void cookie_to_stuff(char *, int *, char *, char *, char *, int *);
89 void locate_host(char *, int);