]> andersk Git - libfaim.git/blob - faim/faimconfig.h
f439f1eaad5743c7ee4298cfe03854444b778c65
[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  * USE_SNAC_FOR_IMS is an old feature that allowed better
25  * tracking of error messages by caching SNAC IDs of outgoing
26  * ICBMs and comparing them to incoming errors.  However,
27  * its a helluvalot of overhead for something that should
28  * rarely happen.  
29  *
30  * Default: defined.  This is now defined by default
31  * because it should be stable and its not too bad.  
32  * And Josh wanted it.
33  *
34  */
35 #define USE_SNAC_FOR_IMS
36
37 /*
38  * Default Authorizer server name and TCP port for the OSCAR farm.  
39  *
40  * You shouldn't need to change this unless you're writing
41  * your own server. 
42  *
43  * Note that only one server is needed to start the whole
44  * AIM process.  The later server addresses come from
45  * the authorizer service.
46  *
47  * This is only here for convenience.  Its still up to
48  * the client to connect to it.
49  *
50  */
51 #define FAIM_LOGIN_SERVER "login.oscar.aol.com"
52 #define FAIM_LOGIN_PORT 5190
53
54 /*
55  * The integer extraction/copying functions in aim_util.c have
56  * both a function version and a macro version.  The macro 
57  * version is suggested.  Since the function version is more
58  * readable, I leave both around for reference.
59  *
60  * Default: defined.
61  */
62 #define AIMUTIL_USEMACROS
63
64 /*
65  * What type of synchronisation to use.
66  * 
67  * We don't actually use threads, but can use the POSIX mutex
68  * in order to maintain thread safety.  You can use the fake locking
69  * if you really don't like pthreads (which I don't) or if you don't
70  * have it.
71  *
72  *   USEPTHREADS - Use POSIX mutecies
73  *   USEFAKELOCKS - Use little stub spinners to help find locking bugs
74  *   USENOPLOCKS - No-op out all synchro calls at compile time
75  * 
76  * Default: use noplocks by default.
77  *
78  * !!!NOTE: Even with USEPTHREADS turned on, libfaim is not fully thread
79  *          safe.  It will still take some effort to add locking calls to
80  *          the places that need them.  In fact, this feature in general
81  *          is in danger of being officially deprecated and removed from 
82  *          the code.
83  *
84  */
85 #undef FAIM_USEPTHREADS
86 #undef FAIM_USEFAKELOCKS
87 #define FAIM_USENOPLOCKS
88
89 /*
90  * Size of the SNAC caching hash.
91  *
92  * Default: 16
93  *
94  */
95 #define FAIM_SNAC_HASH_SIZE 16
96
97 /*
98  * If building on Win32,define WIN32_STATIC if you don't want
99  * to compile libfaim as a DLL (and instead link it right into
100  * your app).
101  */
102 #define WIN32_STATIC
103
104 #endif /* __FAIMCONFIG_H__ */
105
106
This page took 0.030418 seconds and 3 git commands to generate.