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.
11 #ifndef __FAIMCONFIG_H__
12 #define __FAIMCONFIG_H__
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.
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
30 * Default: defined. This is now defined by default
31 * because it should be stable and its not too bad.
35 #define USE_SNAC_FOR_IMS
38 * Default Authorizer server name and TCP port for the OSCAR farm.
40 * You shouldn't need to change this unless you're writing
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.
47 * This is only here for convenience. Its still up to
48 * the client to connect to it.
51 #define FAIM_LOGIN_SERVER "login.oscar.aol.com"
52 #define FAIM_LOGIN_PORT 5190
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.
62 #define AIMUTIL_USEMACROS
65 * What type of synchronisation to use.
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
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
76 * Default: use noplocks by default.
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
85 #undef FAIM_USEPTHREADS
86 #undef FAIM_USEFAKELOCKS
87 #define FAIM_USENOPLOCKS
90 * Size of the SNAC caching hash.
95 #define FAIM_SNAC_HASH_SIZE 16
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
104 #endif /* __FAIMCONFIG_H__ */