4 - Mon Dec 4 23:46:35 UTC 2000
5 - Add exchange to the create response callback (doh!)
7 - Sat Dec 2 02:14:45 UTC 2000
8 - Dumb bug in aim_clearhandlers()
10 - Fri Dec 1 23:48:38 UTC 2000
11 - Store exchange along with room name in the great chat hack
13 - Fri Dec 1 22:25:56 UTC 2000
14 - Fix numerous tiny (but sometimes catastrophic) bugs dealing
15 with connection death (particularly with chat connections)
16 - *** Any connection with a -1 fd will get returned by aim_select
17 immediatly now... your code probably already handles this implicitly.
19 - Wed Nov 29 17:31:23 UTC 2000
20 - Rewrote some of the msgcookie stuff
21 - Changed cachecookies to uncachecookies where it makes sense (arg!)
24 - Fri Nov 10 08:24:34 UTC 2000
25 - Add sess->flags (replaces sess->snaclogin)
26 - Remove odd setstatus call in chat parser
27 - Remove aim_tx_enqueue macro, replace with a smarter one
28 - If a connection is in progress, enqueue instead of calling
29 the client-specified queuer
30 - Add support for nonblocking connects through the
31 AIM_SESS_FLAG_NONBLOCKCONNECT flag to aim_session_init()
32 - Add AIM_CB_SPECIAL_CONNCOMPLETE callback. Not real useful.
33 - Add AIM_CB_SPECIAL_FLAPVER callback. Can be used as an alternate
34 way of starting the login process, or just to look like you
35 know what you're doing. Fixed associated inconsistencies
36 in aim_rxhandlers too.
37 - Fix some connection status stupidities in faimtest.
39 - Wed Nov 8 13:11:18 UTC 2000
40 - Reenable/reimplement older login, but only use for ICQ UINs
41 - This is a fairly ugly hack. But...eh. It works.
42 - You'll need to remove the aim_sendconnack() before the
43 call to aim_request_login. It will now do it automatically
44 if its needed. (hint: ***CLIENT CHANGE***)
46 - Wed Nov 8 02:23:25 UTC 2000
47 - I'm trying out using a modified version of the kernel-doc scripts
48 to help document the libfaim code a bit. See aim_conn.c and
49 aim_tlv.c, as well as the scripts in utils/docs.
51 - Wed Oct 25 17:52:20 UTC 2000
52 - Cleanup warnings from newer gcc's (RH7.0)
53 - Aparently newer gcc's don't let you do as strong of integer types
54 on va_arg as older ones... So, let me know if this breaks on your
57 - Tue Oct 17 02:10:13 UTC 2000
58 - Rearrange a few things
60 - Mon Oct 16 20:56:59 UTC 2000
61 - Remove some warnings
63 - Mon Oct 9 04:24:56 CDT 2000 (jbm)
64 - took care of the XXXs in aim_putuserinfo()
65 - now use dynamic TLV count to send ("look ma, no magic!")
67 - now send icq info if a numeric SN
69 - Wed Oct 4 21:29:47 CDT 2000 (jbm)
70 - Fix borked disconnect callbacks
71 - Add aim_conn_in_sess()
72 - A little housekeeping in faimtest ("fixing" order of printf,
75 - Mon Sep 25 00:21:31 CDT 2000 (jbm)
76 - Add a couple of ICQ userinfo parses
78 - Fri Sep 22 22:47:49 UTC 2000
79 - Add aim_icq_setstatus() (jbm)
81 - Fri Sep 22 22:35:51 UTC 2000
82 - Apply jbm's patch below
83 - Minor cleanup in cb handler stuff
85 - Thu Sep 21 20:28:20 CDT 2000 (jbm)
86 - DirectIM shouldn't kill us any more.
87 - Eliminated a potential segfault in aim_send_im_direct().
89 - Added an aim_tx_destroy(); need to move the lib over to using it.
90 - Got rid of some #if 0 BS code in a couple of places
91 (aim_ft::establish() and aim_im::aim_parse_incoming_im_middle()).
92 - Added some file transfer stuff (so experimental, i haven't
93 had a chance to see if it causes cancer in lab animals).
94 - Added to faimtest for all of the above.
95 - Added myself to AUTHORS with Real Info.
97 - Thu Sep 21 00:24:36 UTC 2000
98 - Add socks5 proxy support (not tested real well, worked the
100 - Added proxy support to faimtest.
102 - Tue Sep 19 03:10:07 UTC 2000
103 - Add aim_setuserinterests() and aim_setdirectoryinfo()
104 - Add ICQ away status
106 - Thu Sep 14 00:54:48 UTC 2000
107 - Added create room callback
109 - Wed Sep 13 22:01:35 UTC 2000
110 - Remove references to "new" and "class" for dumb C++ compilers
111 - Renamed userinfo->class to userinfo->flags both for clarity and C++
112 - Remove some extraneous variables
114 - Tue Sep 12 20:16:51 UTC 2000
115 - Add aim_flap_nop() from my work tree
117 - Tue Sep 12 05:06:53 UTC 2000
118 - Revert the two-byte change in aim_misc, clientready
120 - Tue Sep 5 04:41:45 GMT 2000
121 - Few more minor things
122 - Added the changes needed for faimtest.
123 - Removed aimdebugd from default build
125 - Tue Sep 5 03:47:26 GMT 2000
126 - More ANSIfication for win32
127 - Forgot aim_misc last time.
129 - Mon Sep 4 22:08:35 GMT 2000
130 - Forgot aim_snac and aim_search
132 - Mon Sep 4 21:38:09 GMT 2000
133 - A mild step towards ANSI compliance
134 - Compiles cleanly with -pedantic (except for the libc issue in socket.h)
135 - Fixes various sign mismatch things. There may be more, we'll see
136 what MSVC has to say about it.
137 - Add faim_internal and faim_export macros so Win32 DLL is easier
139 - Sun Sep 3 23:58:17 UTC 2000
140 - Portability fixes (for solaris, set the SOLARIS env var first)
142 - Sat Sep 2 23:42:37 UTC 2000
143 - Hopefully fix aim_snac.c bugs
144 - Add Buddy List Rights parser (max buddies and max watchers)
145 - Fix rather major problem in rxhandlers caused by missing breaks
146 - Add reason code for msgerr (0004/0001) callback
147 - Add BOS Rights parser (max permit / max deny)
148 - Add locate error (0002/0001) parser
149 - Add parser for missed calls (0004/000a)
151 - Fri Sep 1 23:34:28 UTC 2000
152 - Switched the read()s in rxqueue to use recv()
153 - Should fix the big message problem and the big buddy list problem
154 - Changed some values around in aim_misc to match winaim4.1
155 - Added aim_addicbmparm. dunno what it does
156 - Cleanup the login process in faimtest (can now login in less than 2sec)
158 - Fri Sep 1 00:13:04 UTC 2000
159 - Avoid zero-length mallocs in aim_tlv
161 - Thu Aug 31 23:40:23 UTC 2000
162 - Threw in aim_select modification from nicolas
163 - Remove stray debugging printf in aim_tlv
165 - Mon Aug 28 03:11:15 GMT 2000
166 - Adds lots of comments
167 - Add AIM_CLASS_ALLUSERS constant for setgrouppermmask()
168 - Add warnings support (jbm)
170 - Mon Aug 21 22:00:18 UTC 2000
171 - Implement SNAC login MD5 (thanks to Sonuvbob for that one)
172 - Clear out all that old login cruft. Much cleaner now.
173 - REQUIRES CLIENT CHANGES (see faimtest)
175 - Fri Aug 18 19:52:54 UTC 2000
176 - Fix the non-pthread bug
178 - Thu Aug 17 23:19:40 UTC 2000
179 - A few more leak fixes (only a few left to go...)
181 - Thu Aug 17 23:08:08 UTC 2000
182 - More leak fixes (eric, eric, eric...)
184 - Thu Aug 17 22:53:03 UTC 2000
185 - Change the SNAC cache to a hash instead of list
186 - Fixed a few leaks relating to aim_gettlv_str()
188 - Thu Aug 17 14:04:18 UTC 2000
189 - Fix the fd closing bug introduced last week
191 - Tue Aug 8 04:25:35 UTC 2000
192 - Preserve subtype and priv after aim_conn_close
194 - Tue Aug 8 04:15:47 UTC 2000
195 - Fixed double-calling of faim_mutex_init
196 - conn->type preserved after aim_conn_close
198 - Mon Jul 17 01:56:31 UTC 2000
199 - Added 0004/000c callback (for message acknowledgments)
200 - This goes with the AIM_IMFLAGS_ACK option that has been there
201 for ages now. When you send a message with that option, you'll
202 get a message back containing the screenname, telling you it was sent.
203 - Moved the aim_conn_kill's out of aim_get_command() and into
204 the client. They're only closed in there now. This is so that you
205 can detect what type of connection died. You'll want to handle
206 BOS and chat connections in special ways most likely. You'll also
207 need to call aim_conn_kill when you're done with it.
208 - Added/fixed the Rate Change handlers. Now passes up a long that
209 should contain a number. I'm currently in pattern-searching mode.
211 - Sun Jul 16 22:59:39 GMT 2000
212 - Fixed the locking in the rendezvous code. Hopefully is safe now.
214 - Sun Jul 16 11:03:28 GMT 2000
215 - Fixed 0001/000a chat printf. (Actually a one liner a few days ago.)
216 - Started integrating josh's 3k rendezvous patch. Currently only
217 directim is working. And its got bugs. But he's not online
218 right now, so I can't bitch. I'd love to bitch here, but I'm
220 - Can definitly accept directim connections and send/recieve.
221 - See faimtest for the new callbacks. (Urg.)
222 - Here weeee gooooo. (Not sure if this will break everyone or not.)
224 - Fri Jun 30 00:04:47 UTC 2000
225 - Removed the forceful ICQ-related warnings, just in case they're wrong
226 - Added three new fields to the client info.
227 - **REQUIRES CLIENT CHANGES -- see faimtest for new initializer
228 - Cleaned up aim_send_login()
229 - Put in a nice hidious fix for AOL's latest bit of the drama. See
230 aim_readtlvchain() for the details.
232 - Mon Jun 26 07:53:02 UTC 2000
233 - Added utils/aimdebugd for playing with things -- see the README
234 - Added aim_im.c::aim_parse_outgoing_im(). Probably not useful
235 unless you're writing a server or something (or hacking aimdebugd).
236 - aim_send_im() now sends the same data as AIM4 does (three more bytes)
237 - Added aim_debugconn_sendconnect() for aimdebugd-enablement.
239 - Sat Jun 24 02:14:07 UTC 2000
240 - Added fakelocks for platforms without pthreads or that have no
242 - Added workaround for MSG_WAITALL for people with the very broken
243 libc that comes with earlier Red Hat's.
245 - Sat Jun 24 00:44:24 UTC 2000
246 - Support zero-type TLVs in aim_extractinfo()
247 - AOL now ocassionally throws extra zeros in so in order to break
248 clients. Aparently zero-type TLVs are a special case -- if the
249 type is zero, then _there is no length_ field. AOL are geniuses.
250 - Note that you only get these if you send a bad client string, such
251 as the top one in faimtest. If you #if 0 that one out and use the
252 second one, you'll be fine. (Unless you just want to see the message
253 for yourself. Its nifty. (FREE!))
254 - ICBM parser now uses aim_extractuserinfo() so that it can benefit
255 from the above changes, as well as clean up the whole "is it the
256 first or the second one of this type?" issue
257 - This also fixes the changes AOL made in away messages.
258 = Fixed a possible buffer overflow when AOL changes the max sn length
259 - Increased MAXSNLEN to 32 (they appear to be valid)
260 - If you start getting messages from someone called "AOL Instant
261 Messenger", see comment one, paragraph two.
262 - aim_select() now returns a -1 if there are no connections open
263 - Connections are now killed completely if there is a major error on them
264 - faimtest now calls aim_logoff() on connection error
266 - Fri Jun 23 22:38:47 UTC 2000
267 - Adds start of adverts support
268 - Adds aim_bos_nop(). You may want to send this occassionally
269 - Fixes aim_rxhandlers.c to work for people with three-letter
272 - The week prior to Fri Jun 16 19:37:09 UTC 2000
273 - Rethought the rendezvous stuff. DEFINIT WORK IN PROGRESS
274 - Do not bother trying to use this. This will probably break
275 your clients. You may or may not want to fix them, since
276 I may change it again soon.
277 - I REPEAT: This really is a developer-only version. It barely
278 compiles. I'm just committing it so I don't have so many
279 trees floating around.
280 - Added stuff to support OFT as well as OSCAR protocols
281 - Added aim_send_im_direct() for directim ("IM Image")
282 - Added caps getting/putting routines
283 - Added more aim_login fixes to avoid more AOL stupidity
284 - This is the same as went to libfaim-devel yesterday, so don't upgrade
285 just to get these changes.
286 - Removed aimicq_encode_password -- now use the same table
290 - Tue Jun 6 01:36:48 UTC 2000
291 - Inverted gethostbyname2() check. Not sure how that ended up
293 - Added some of the initial framework to support file transfers
294 - Added in a few checks for that
295 - Can currently parse and send a denial message.
296 - Added cookie caching. (Sorry, I just like saying that.)
297 - Rearranged channel 2 ICBM parsing (detects the different
298 rendezvous types better and hopefully accuratly).
299 - Killed the connection array. Now a list. (Suits the
300 upcoming features better.) --- REQUIRES CLIENT CHANGES...
301 - In most cases, you need to change aim_conn_close() calls
302 to aim_conn_kill(). This will free them as well as
303 close them. If you don't do this, you'll pollute the
304 connection list and leak memory.
305 - Possibly a few other minor things (some cleanups to faimtest for one)
307 - Fri Jun 2 23:27:28 UTC 2000
308 - Cleaned up aim_send_login slightly
309 - Added aimicq_encode_password to support the new hash
310 values required for logging in with ICQ
311 - Removed crash when email and/or reg status aren't
312 in the auth response (they're not in ICQ responses)
313 - So now as long as you specify a client version of
314 4.30.3141 in the client info, and your ICQ number
315 as your screen name, you can login to ICQ via libfaim
316 and use it just like an AIM account.
317 - Added AIM_CB_SPECIAL_CONNERR callback for recieving
318 messages such as disconnect reasonses ("you logged
319 on from a different machine", etc).
320 - Added faimtest's userinfo handler to support away messages
322 - Fri Jun 2 15:57:27 UTC 2000
323 - Add creation time, maxmsglen, and various unknowns to chat info
325 - Remove 'nothing works yet' comment from top of aim_chat.c (it works!)
327 - Wed May 31 01:17:24 UTC 2000
328 - Added constants for message sizes (MAXMSGLEN, MAXCHATMSGLEN)
329 - Note that the new max message size is defined as 7988bytes,
330 drastically larger than WinAIM lets you put out. This is a
331 libfaim-exclusive feature :)
332 - Reduced base buffer size on aim_send_im()
334 - Tue May 30 22:32:31 UTC 2000
335 - Added lock around tx seqnum to prevent that race when transmitting
336 from diverse threads. (actually committed earlier today)
337 - Added aim_meta.c and a few constants and things to keep
339 - Added mkbuildinfo.sh to automatically update build string
340 "constants" on every invocation of 'make all'.
342 - Mon May 29 12:08:28 GMT 2000
343 - Rearranged aim_tx_flushqueue(); moved write operation
344 to aim_tx_sendframe()
345 - Turned aim_tx_enqueue() into a macro that calls sess->tx_enqueue,
346 a function pointer to whatever you want to use to enqueue
347 things for transmition (or not)
348 - Old aim_tx_enqueue becomes aim_tx_enqueue__queuebased. Added
349 aim_tx_enqueue__immediate for doing immediate writes. Default
350 is to use queue-based procedure.
351 - Cleaned up parts of aim_conn.c
352 - Added locking around the sockets themselves. Should allow
353 for full cross-thread usage.
354 - Unfortunatly, only pthreads are supported at this time.
355 If you don't have pthreads on your arch, implement the
356 macros your arch needs and send me a patch. (A SysV
357 semaphore implementation would be trivial, as would a
358 simple integer-based lock.)
360 - Sun May 21 14:59:20 GMT 2000
361 - Added infotype parameter to aim_getinfo() for requesting
362 different types of messages. AIM_GETINFO_GENERALINFO
363 will get you the normal stuff, AIM_GETINFO_AWAYMESSAGE
364 will get the normal stuff, with the profile replaced with
365 the user's away message. Also, the callback adds an
366 unsigned short to the end to give you the value that
367 was originally passed to the request.
368 - There were a few server-pertinent changes that didn't get
369 documented from last month. I have no idea what they were.
371 - Sun Apr 2 07:29:11 UTC 2000
372 - Redid much of the tx path to remove the superfluous copy. But
373 it touches every function that transmits. Its been a long
375 - Added caps parameter to aim_bos_setprofile(). You can now
376 control what capabilties you show up as others to
377 - Added ->capabilities to userinfo. It should be nonzero when
378 its coming off buddy oncoming information, but NOT requested
381 - Sun Apr 2 01:45:15 UTC 2000
382 - Increased AIM_CONN_MAX from 5 to 7. Precausionary only
383 - Removed deprecated TIS_TELNET_PROXY from faim/faimconfig.h
384 - Added macros for the simple integer functions in aim_util.c
385 - Removed usage of aim_failsaferead()
386 - Still not sure why I had it to begin with. I think it
387 was a remament from when we used non-blocking sockets
388 (which I don't know why I did either)
389 - Removed some of the oddities in aim_get_command()
390 - gprof showed this taking 20kns on my k6-300. Should be faster now.
391 - Added conn parameter. This should prevent aim_select() from
392 getting called too many times in a row.
394 - Thu Mar 23 08:45:40 UTC 2000
395 - Removed aim_countconn() > 0 check in aim_select(), its logically redundent
396 - Added aim_putuserinfo() (inverse of aim_extractuserinfo())
397 - Added aim_sendbuddyoncoming/offgoing()
398 - Rearranged loop in rxdispatch()
399 - Remove aim_conn_close() if connections dead in aim_get_command()
401 - Thu Mar 23 00:44:32 UTC 2000
402 - Added a check to purge_rxqueue to skip handled commands
404 - Mon Mar 20 05:30:59 UTC 2000
405 - Added some server-only functions for login
406 - Added aim_counttlvchain()
407 - Added aim_sncmp() and aim_snlen()
409 - Sun Mar 19 06:07:52 UTC 2000
410 - Added a parameter to aim_select to return event type
411 - REQUIRES CLIENT CHANGES.
412 - For the most part rewrote the tx and rx queuing code
413 - Should fix many, many outstanding problems in and related
414 to that code, including one that keeps memory from freeing
415 - Fixed several bugs in various places
416 - Reformated a lot of code, and did general cleanups
417 - Should have a generally more robust lib now.
419 - Sun Mar 12 00:07:40 UTC 2000
420 - Fixed a robustness problem in aim_handleredirect_middle()
421 - Added TLV chain creation routines (yes, aimd is progressing)
423 - Mon Jan 3 04:07:55 UTC 2000
424 - Fixed bug in aim_snac.c
425 - Fixed condition where commands read from connections that have
426 been closed were still left in the queue. Now cancelled.
427 - Added some printfs to aim_info to get more informative crahes
428 - Fixed a bug in aim_rxqueue::purge
430 - Sun Jan 2 10:31:19 UTC 2000
431 - Cleanups in aim_info.c
432 - Can compile with -Ddebug=100 again
433 - Implemented chat: Joining/Leaving, info parsing, IM parsing/sending
434 - Implemented some chatnav: rights req/parsing, room creation
436 - Thu Dec 30 10:08:42 UTC 1999
437 - Fixed bug in aim_im.c when (encoding == NULL) || (lang == NULL)
438 - Added detection of voice chat requests
439 - Added AIM_CLASS_* defines, including new Away flag
440 - Added awaymsg parameter to bos_setprofile.
441 - If awaymsg is nonnull, you will be advertised as being away (your
442 class will be ORed with AIM_CLASS_AWAY), otherwise you'll show
445 - Wed Dec 29 10:06:35 UTC 1999
446 - Fixed small bug in IM parser
447 - Added stubs for the capability TLVs in userinfo.
449 - Wed Dec 29 09:14:45 UTC 1999
450 - Added a capability block to aim_bos_setprofile. Can now get chat
452 - Extended ICBM parser to support channel 2 messages (chat invites)
453 - A channel parameter has been prepended to the varargs -- REQUIRES
455 - Extended faimtest to support chat invites.
456 - Changed faimtest to get sn/password from environment
458 - Wed Dec 29 04:17:03 UTC 1999
460 - Added aim_sendconnack() to aim_login.c (needed for newer login)
461 - Added code for the new SNAC-based login/auth procedure. (see SNACLOGIN
462 in faim/faimconfig.h for why its not enabled)
463 - Reimplemented aim_authparse(), aim_handleredirect() using TLVlists
464 - The old auth_failed callback is now integrated into the
465 success one. If there was an error, logininfo->errorcode is nonzero
466 - Fiddled with version information. Added aim_setversions()
467 - Added table of SNAC names for showing unknown snacs (jbm)
468 - Added a middle handler for MOTD
469 - Added new authorization SNACs to faim/aim_cbtypes.h
471 - Sun Dec 26 22:59:10 UTC 1999
472 - Renamed login_phase1_struct to aim_login_struct
473 - Changed cookie and sn to be static arrays in aim_login_struct
474 - Integrated the Jabber-faim changes. (temas) [BIG CLIENT CHANGES]
475 - Added aim_session_t, removed all global variables
476 - Changed all functions to accept a session pointer
477 - Removed aim_global.c
478 - Updated faimtest to use an aim_session_t.
479 - Removed all cases where logininfo was passed as vararg to client
480 - Fixed small bug in aim_newconn's 'fixing' of host:port addresses
481 - Added an install rule to the makefile (installs headers+so only!)
482 - Enabled USE_SNAC_FOR_IMS by default, assuming it got fixed
483 by n's new aim_snac.c from ages ago
484 - Implemented a middle handler for 0004/0001 message errors, added
485 snacid lookup to get illfated destination SN and pass to client
486 - Implemented a short middle handler for offgoing buddy.
488 - Fri Dec 24 21:30:06 UTC 1999
489 - Added an error-counting Read() that has been sitting in my inbox
490 - Cleaned up header files, created aim_cbtypes.h.
491 - Added void * to aim_conn_t for private client use if they want. (Orb)
492 - Removed all stderr output. All output is important, and goes to stdout.
493 - Renamed isautoresponse in IM parser to icbmflags.
494 - Added Orb's fix for the new login code, deleted old (see Orb, I do read
495 your mail....eventually).
496 - Added mailing lists to README.
498 - Fri Dec 24 11:12:34 UTC 1999
499 - Cleaned up both outgoing and incoming ICBM handling. Anything
500 that crashes around there is no longer libfaims fault!
501 - The encoding flags are now passed up to the client.
502 - Added several TLV routines to parse large blocks of continuous
503 TLV triplets. Not terribly effecient, but quite elegent in usage.
504 - Added icbm_setparams() back in from way-back-long-ago. It hasn't
505 been implemented in a long time, but I think we should still send it.
507 - Fri Dec 24 01:23:06 UTC 1999
508 - Fixed a very minor bug in aim_newconn().
509 - Added aimutil_get{16,32}()
510 - Added aim_extractuserinfo() for extracting user data
511 blocks and putting them into struct aim_userinfo_s's.
512 - Added a loop to print out info on extraneous TLVs.
513 - Put in lots of comments.
514 - Added parse_oncoming_middle() to parse the user data
515 block of that packet. Now passes struct aim_userinfo_s
517 - Rearranged parse_userinfo_middle(). Now passes an entire
518 userinfo struct to client instead of individual variables.
519 - Convered the version of parse_im_middle() thats actually getting
520 used to pass up a userinfo struct.
521 - Updated faimtest to accept new structs.
523 - Tue Dec 21 06:18:50 UTC 1999
524 - Fixed a Win32 header problem
525 - Tue Dec 21 03:44:13 UTC 1999
526 - Latency timers now update on rx as well as tx. Gets rid of even more
527 of the rate problems that most clients are having.
528 - Renamed lasttx and settxlatency to lastactivity and setlatency, respec.
529 - Integrated fixes needed for Win32 -- should compile cleanly now (DMP)
530 - Cleaned up some places, use aim_putsnac everywhere now.
532 - Sun Sep 26 20:04:20 MST 1999
533 - Reduced the IM parsing to look for 3 zeros instead of 4 -- NEEDS WORK
534 - This was needed to work with MacAIM3 and some WinAIM3s.
535 - Added aim_conn_settxlatency() for throttling outgoing frames -- NEEDS WORK
536 - Added an int to the userinfo and incoming IM user callbacks for new
537 TLV that AOL put it in -- its the number of seconds elapsed since
539 - Worked more on the callbacks (more internal rearrangements)
540 - Fixed bug in aim_select() (returning negative fds)
541 - Clear out logininfo struct before putting more data into it
542 - Other bugfixes that I can't particularly remember.
544 - Tue Aug 24 03:13:12 UTC 1999 --- TRANSITION RELEASE!!
545 - Added jbm's new aim_rxqueue.c, which should crash less
546 - Started the overhaul on the callback system. No where near complete yet.
548 - Sun Aug 1 03:02:17 UTC 1999
549 - Added aimutil_*()s in aim_util.c for raw byte placement
550 - Cleaned up aim_im.c, aim_auth.c, and aim_login.c using aimutil_*
551 - Added AIM_IMFLAGS, flags option to aim_send_im(), removed
553 - Added client_info parameter to aim_send_login()
554 - Tweaked aim_send_im() (AOL changed a few things, there's some more
556 - Some Chat stuff changed, still no where near functional
557 - Finally remembered to switch the license to LGPL (from GPL)
558 - Permit/Deny (blocking) list support added
559 - Released a snapshot
561 - Sat Jul 31 05:28:38 UTC 1999
562 - Changed aim_bos_setdeny() to aim_bos_changevisibility() and actually
563 did the implementation.
565 - Fri Jul 23 17:45:22 UTC 1999
566 - Work around for the AOL change in IP syntax (thanks to Eric Peyton)
569 - Sun Apr 25 23:31:44 UTC 1999
570 - Fixed stupid off-by-one bug in aim_logoff()
572 - Sun Apr 25 22:43:31 UTC 1999
573 - Renamed/reclassified missed IM errors (now all callbacks -- no backend handling)
574 - Killed aim_login() -- all connections now opened in frontend
575 - aim_conn_close() will not close fd's < 3
578 - Sat Apr 10 22:44:07 UTC 1999
579 - Changed how rx_command->handled works; now uses return value from callback
580 - Changed the if's in the dispatcher (aim_rxhandlers.c) to switch()es
582 - Sat Apr 10 03:51:21 UTC 1999
584 - Put in n's aim_snac.c.
585 - Updated aim_{add,remove}_buddy() to use aim_conn
586 - Updated aim_usersearch_address() to use aim_conn
587 - Cleaned up aim.h a bit (removed old *phase* protos)
588 - Changed gethostbyname() to gethostbyname2() (for MacOS X)
589 - Changed aim_newconn() to pass connection errors in connstruct->status
590 - Updated faimtest.c to detect connection errors
591 - Fixed a small typo in aim_im::aim_parse_incoming_im_middle()
592 - Added free()s in that function and to userinfo counterpart (fewer leaks)
595 - Sat Apr 3 06:43:14 UTC 1999
598 - Wed Dec 30 01:20:59 MST 1998
601 - Mon Dec 7 16:57:57 MST 1998
604 - Sat Dec 5 00:01:53 MST 1998
607 - Thu Nov 26 17:50:02 MST 1998