]> andersk Git - libfaim.git/blob - faim/faimconfig.h
222ff447a6aff502f219a8ce6c7aa7be3d8252a8
[libfaim.git] / faim / faimconfig.h
1 /*
2  *  faimconfig.h
3  *
4  * Contains various compile-time options that apply _only_ to libfaim.
5  * Note that setting any of these options in a frontend header does not imply
6  * that they'll get set here.  Notably, the 'debug' of this file is _not_ 
7  * the same as the frontend 'debug'.  They can be different values.
8  *
9  */
10
11 #ifndef __FAIMCONFIG_H__
12 #define __FAIMCONFIG_H__
13
14 /* 
15  * set debug to be > 0 if you want debugging information spewing
16  * on the attached tty.  set to 0 for daily use.  this value
17  * is _not_ inherited by the frontend, only this backend.
18  *
19  * Default: 0  
20 */
21 #define debug 0
22
23 /*
24  * Maximum number of connections the library can simultaneously
25  * handle per session structure.  Five is fairly arbitrary.  
26  * 
27  * Normally, only one connection gets used at a time.  However, if
28  * chat is used, its easily possible for several connections to be
29  * open simultaneously.
30  *
31  * Normal connection list looks like this:
32  *   1 -- used for authentication at login (closed after login)
33  *   1 -- used for BOS (general messaging) (stays open for entire session)
34  *   1 -- used for chatnav (room creation, etc) (opened at random)
35  *  1n -- used for n connected chat rooms (AOL limits to three)
36  *
37  * Default: 7
38  *
39  */
40 #define AIM_CONN_MAX 7
41
42 /*
43  * USE_SNAC_FOR_IMS is an old feature that allowed better
44  * tracking of error messages by caching SNAC IDs of outgoing
45  * ICBMs and comparing them to incoming errors.  However,
46  * its a helluvalot of overhead for something that should
47  * rarely happen.  
48  *
49  * Default: defined.  This is now defined by default
50  * because it should be stable and its not too bad.  
51  * And Josh wanted it.
52  *
53  */
54 #define USE_SNAC_FOR_IMS
55
56 /*
57  * As of AIM 3.5 or so, AOL as added a better way of
58  * logging in.  Define this to use it instead of the 
59  * old Version 1.0 way.  
60  *
61  * The largest caveat here is that I have no idea
62  * how to encode passwords using the new 3.5 way.
63  * Until someone figures that out the...
64  *
65  * Default: Undefined.
66  *
67  */
68 #undef SNACLOGIN
69
70 /*
71  * Default Authorizer server name and TCP port for the OSCAR farm.  
72  *
73  * You shouldn't need to change this unless you're writing
74  * your own server. 
75  *
76  * Note that only one server is needed to start the whole
77  * AIM process.  The later server addresses come from
78  * the authorizer service.
79  *
80  * This is only here for convenience.  Its still up to
81  * the client to connect to it.
82  *
83  */
84 #define FAIM_LOGIN_SERVER "login.oscar.aol.com"
85 #define FAIM_LOGIN_PORT 5190
86
87 /*
88  * MAX_READ_ERROR can be decreased if you find dead connections
89  * lingering around, and not getting detected, for too long.
90  *
91  * Default: 100
92  *
93  */
94 #define MAX_READ_ERROR 100
95
96 /*
97  * The integer extraction/copying functions in aim_util.c have
98  * both a function version and a macro version.  The macro 
99  * version is suggested.  Since the function version is more
100  * readable, I leave both around for reference.
101  *
102  * Default: defined.
103  */
104 #define AIMUTIL_USEMACROS
105
106 /*
107  * Select whether or not to use POSIX thread functionality.
108  * 
109  * We don't actually use threads, but we do use the POSIX mutex
110  * in order to maintain thread safety.  You can use the fake locking
111  * if you really don't like pthreads or you don't have it.
112  *
113  * Default: defined on Linux, otherwise use fake locks.
114  */
115 #ifdef __linux__
116 #define FAIM_USEPTHREADS
117 #else
118 #define FAIM_USEFAKELOCKS
119 #endif
120
121 /*
122  * Size of the SNAC caching hash.
123  *
124  * Default: 16
125  *
126  */
127 #define FAIM_SNAC_HASH_SIZE 16
128
129 #endif /* __FAIMCONFIG_H__ */
130
131
This page took 0.033546 seconds and 3 git commands to generate.