No release numbers
------------------
+ - Wed Jun 27 00:13:20 EDT 2001
+ - Some comments about UNICODE in faimtest.
+
+ - Fri Jun 15 17:51:27 EDT 2001
+ - Make faimtest compile on RH7.1 (new gcc).
+ - Add aim_conn_getsess()
+ - Add aim_getconn_type_all() and aim_getconn_fd().
+ - Make aim_connrst() and aim_conn_getnext() static to conn.c.
+ - Why does arcanejill think she is in EDT? Oh well.
+
+ - Thu Jun 14 17:37:47 PDT 2001
+ - Rearrange aim_setprofile(). It will now let you _not_ send a profile,
+ if you really want to (pass NULL). Note that this is quite different
+ than sending a _blank_ profile. Also fixes the "asci" bug.
+
+ - Mon Jun 4 12:57:46 PDT 2001
+ - Fix chatnav. Whoops.
+
+ - Mon Jun 4 12:45:18 PDT 2001
+ - Don't use snacid's for generic requests (gets around recent blocks)
+ - If they start doing snacid-based blocks again, an audit will have
+ to be done to see what WinAIM requests uses snacids for and what
+ it leaves it blank for. That will be tedious and I'm not going to
+ do it.
+
+ - Thu May 31 23:00:50 PDT 2001
+ - Store two hardcoded hashes in login.c. Sigh.
+ - Add prototype for aim_callhandler_noparam in aim_internal.h
+
+ - Sat May 26 03:58:27 PDT 2001
+ - Aha! This is why I could never get icons to work before.
+ - Luckily the checksum is painfully simple.
+
+ - Sat May 26 01:37:39 PDT 2001
+ - So this is my big merge with the ActiveBuddy version...
+ - Remove use of tlvchains from IM parsing for better performance
+ - Add in buddy icon support
+ - Add support for sending UNICODE messages.
+ - Split up the more complicated options to aim_send_im into a structure
+ that is passed to aim_send_im_ext(). This makes it easier to send
+ simple messages, and only slightly harder to send complex ones.
+ - aim_send_im_ext() must be used if you're using buddy icons and/or you
+ are sending UNICODE messages.
+ - UNICODE is fully explained in commentary above aim_send_im_ext() in im.c.
+ - The ISO-8859-1 option is also added. Use when necessary, to avoid making
+ WinAIM barf.
+ - This removes the msglen parameter to aim_send_im because that was only
+ needed to do UNICODE, which can now only be done by aim_send_im_ext.
+
+ - Wed May 23 18:05:46 PDT 2001
+ - I upgraded libtool. Which broke the faimtest makefile.
+ - Parse locate rights
+ - You shouldn't ask so many questions, Eric.
+
+ - Wed May 16 12:48:13 PDT 2001
+ - Thanks Rob and Eric
+
+ - Thu May 10 17:37:23 PDT 2001
+ - I haven't had lunch yet. What should I have?
+
+ - Wed May 9 15:21:51 PDT 2001
+ - I had pizza for lunch.
+
+ - Mon May 7 15:19:55 PDT 2001
+ - Rename rxhandler_t to aim_rxhandler_t. This has been
+ bugging me for a while.
+
+ - Thu May 3 15:47:23 PDT 2001
+ - Clean up getcap/putcaps
+ - Add GAMES2 and SENDBUDDYLIST caps (the latter is new in winaim 4.7beta)
+ - Update hash to latest value
+
+ - Wed Apr 25 11:51:39 PDT 2001
+ - I think this was a bug.
+
+ - Tue Apr 24 17:36:03 PDT 2001
+ - Let Eric generate the hash if he wants.
+
+ - Mon Apr 23 15:58:11 PDT 2001
+ - On a clear day, you can see forever.
+
+ - Thu Mar 29 13:05:50 PST 2001
+ - Less leaks.
+
+ - Thu Mar 29 14:45:22 CST 2001 (jbm)
+ - Add module capability to the 0001/001f stuff (jbm)
+
+ - Wed Mar 28 21:20:08 PST 2001
+ - Add flags arg to aim_chat_send_im()
+ - Add msglen arg to aim_send_im and aim_chat_send_im
+ - This will make more sense when I make the UNICODE commit (tomorrow?)
+
+ - Wed Mar 28 16:51:25 PST 2001
+ - I decided it was a good day while I was figuring out that it was a bad day.
+ - See faimtest and login.c::memrequest().
+ - Hopefully I'm done for a while.
+
+ - Tue Mar 27 19:15:10 PST 2001
+ - I haven't decided yet whether today is a good day or a bad day.
+ - Probably both.
+ - More later.
+
+ - Mon Mar 26 16:08:45 PST 2001
+ - Why didn't anyone tell me buddy-offgoing wasn't working?
+ - *** REQUIRES CLIENT CHANGES... buddy-offgoing now passes a userinfo
+ struct (its now identical to buddy-oncoming)
+
+ - Mon Mar 26 15:57:41 PST 2001
+ - Hrmph.
+ - Debuglevel wasn't getting set properly by aim_session_init
+
+ - Sat Mar 24 03:16:32 UTC 2001
+ - vaargs to msgerror and locateerror swapped
+ - ** CLIENT CHANGE: Reason code comes before SN now. This is so that
+ the backend code for all three error handlers is identical.
+ - aim_getinfo() returns -1 on failure (hah! I don't think anyone checks
+ return codes from libfaim anyway...they're known for their
+ inconsistency and lack of sensicality)
+ - Remove _DEFAULT handlers in faimtest...
+ - They were not consistent.
+ - They did not make sense.
+ - They did not work anyway.
+ - Most of them were #if 0'd.
+ - Add ICBM Parameter Info callback... you can catch this if you want.
+ - aim_getbuildstring() now takes a buffer instead of returning static (ew!)
+ - Clean up, "factorize", etc
+ - More stuff... (Only one "middle handler" left in rxhandlers.c!)
+
+ - Fri Mar 23 05:42:11 UTC 2001
+ - Export aim_encode_password_md5()
+ - Add middle handler for 000b/0002 (min report interval)
+ - Add aim_session_kill()
+ - CLIENTS MUST CALL THIS either in addition to or instead of
+ aim_logoff(), particularly if you keep lots of sessions open.
+ (Sessions now contain dynamically allocated memory which must be freed.)
+ - Oh, and some other stuff...
+
+ - Fri Mar 23 01:45:28 UTC 2001
+ - Add AIM_CLIENTINFO_KNOWNGOOD
+ - Fix a few details in aim_send_login (thanks temas)
+ - Prevent aim_rxhandlers from being called recursively
+ - This is something that has been in my PENDING_AIM mailbox for over
+ a year now. I figured it was trivial enough to throw in. EveryBuddy
+ wanted it, but I don't remember why. It should never happen anyway.
+ - Use AIM_CLIENTINFO_KNOWNGOOD
+ - This lets faimtest log in after today's round of AOL being mean.
+
+ - Fri Mar 16 23:12:58 UTC 2001
+ - Remove one level from aim_rxdispatch()
+
+ - Wed Mar 14 20:21:49 UTC 2001
+ - Clean up declarations of TLV functions (ie, const)
+ - Add -o and -O to faimtest (I didn't use your patch, josh)
+
+ - Wed Mar 14 03:11:03 UTC 2001
+ - Err...I'll commit before I go home. More faimtest crap.
+
+ - Tue Mar 13 20:23:04 UTC 2001
+ - Fiddle with faimtest a bit.
+
+ - Sun Mar 11 06:02:19 UTC 2001
+ - Banish socklen_t.
+
+ - Sun Mar 11 05:51:45 UTC 2001 (jbm)
+ - Split off aim_internal.h
+ - Add aim_tx_cleanqueue()
+ - Remove sn from directim callback (use priv)
+
+ - Mon Mar 5 01:19:48 UTC 2001
+ - Fix typo in last CHANGES entry.
+ - Add fix from Eric to keep efence from complaining about malloc(0)
+ - Add .cvsignore files (also from Eric)
+ - Throw in josh's latest OFT/ODC kludges
+ - Completly remove all calls to printf and (unbounded) sprintf
+ - Add aim_setdebuggingcb()
+ - Remove preprocessor-based debug semantics (faimconfig.h)
+ - faimdprintf() now calls a user-specified callback to do printing
+ - Rearrange aim_tx_new() parameters to be more sensical, add sess
+ - Do some sanity checking in aim_tx_new()
+ - Add #defines to keep printf from compiling inside libfaim
+ - Who knows what else. (in total, this patch is nearly 5k lines)
+
+ - Fri Mar 2 02:17:22 UTC 2001
+ - Add aim_fingerprintclient(). (AB will trust this, but you shouldn't.)
+ - Add some EXTRA_DIST to Makefile.am
+
+ - Mon Feb 26 01:46:34 UTC 2001
+ - Fix swapped bytes in aim_caps[]. Thanks to
+ Bruce Miller <bmiller@ics.uci.edu> for pointing this out.
+
+ - Sun Feb 11 01:07:36 UTC 2001
+ - Make secondary connections to the authorizer work again
+ - Make aim_auth_changepasswd() work again.
+ - Add aim_auth_setversions(), aim_auth_getinfo(), aim_auth_setemail(),
+ aim_auth_reqconfirm()
+ - Add middle handlers for responses to all of above.
+ - Add examples of above to faimtest (start with 'reqauth')
+
+ - Fri Feb 9 22:31:22 UTC 2001
+ - Add aim_tx_setenqueue().
+
+ - Thu Feb 8 20:12:39 UTC 2001
+ - Let TLV functions out of aim.h if FAIM_NEED_TLV is defined.
+
+ - Thu Feb 8 02:31:25 UTC 2001
+ - Remove aim_purgecookies() -- never used anyway
+ - Clean up a few bits of aim_msgcookie.c
+ - Remove AIM_CONN_MAX constant (hasn't been relevent in ages)
+ - Change commentary on synchro in aim.h
+ - Add NOPLOCKS and make them default
+ - Make faim/aim.h more of a mess; try to keep interfaces hiddenish.
+ - Add #define FAIM_INTERNAL to top of every file
+ - Remove aim_countconn (no one uses it anyway)
+ - Add aim_cloneconn() (cringe.)
+ - Throw in josh's getfile patch (and then munge it enough to break it)
+ - Add getopt() to faimtest.
+ - Remove aim_buildcode.h/mkbuildinfo.sh crap.
+ - Clean up aim_cleansnacs()
+ - There may have been other stuff too. As always, the diff is the
+ most accurate changelog there is.
+ - *** FT is currently more broken than it was before. Also, this patch
+ introduces even more memory leaks. You've been warned.
+
+ - Sun Dec 17 07:19:04 UTC 2000
+ - Update the capability block list
+
+ - Sat Dec 16 01:34:19 UTC 2000
+ - Rename paramid to rateclass
+ - Add a long comment about the rate system
+ - Add a few other comments
+ - Clean up aim_bos_clientready().
+
+ - Fri Dec 15 23:35:01 UTC 2000
+ - Add genericerr callback/middle.
+ - This is for catching the errors that come back, for instance, from
+ sending a SNAC that isn't supported by the host (such as the
+ Watcher Request SNAC).
+
+ - Fri Dec 15 21:51:32 UTC 2000
+ - Add more info to evilnotify callback
+ - Add a few values to aim_cbtypes.h
+
+ - Fri Dec 15 20:41:15 UTC 2000
+ - Revise README
+ - Make aimdebugd compile
+ - Typos
+
+ - Fri Dec 15 02:04:12 UTC 2000
+ - Parse rate changes *properly*
+ - Add sample code to faimtest demonstrating my approximations
+ on how to fiddle with aim_conn_setlatency() in relation
+ to the rate changes (properly wildly conservative). [I also
+ copied this stuff into mfaim.]
+
+ - Thu Dec 14 03:39:34 UTC 2000
+ - Change the 0x01 to a 0x00 in auth request to make buddy lists work again
+ - Rearrange bytes in setversions() to match winaim
+ - Add several cachesnac() calls
+ - Add hostonline and hostversions parsers (superfluous)
+
+ - Wed Dec 13 02:26:39 UTC 2000
+ - Create aim_cachesnac()
+ - Some long overdue cleanups
+
+ - Wed Dec 13 00:38:56 UTC 2000
+ - Added the client update/version info to the authresp callback
+ - Added the prototype for aim_getfile_send_chunk to aim.h
+
+ - Tue Dec 12 23:02:41 UTC 2000
+ - Got pissed off at sess->logininfo. Got rid of it.
+ - Now pass all that stuff in as varargs, like it should be.
+ - *** Look at the changes to faimtest. You'll also need to
+ change anything in your code that references sess->logininfo
+ to reference sess->sn instead. The rest of the other info
+ is now unavailable (it was before, too, it just didnt look like it).
+ - A few other minor cleanups.
+ - Added aim_gettlv8/16/32, aim_puttlv_8, and aim_addtlvtochain_noval.
+ - Added that short 0x004a TLV to the auth request, like WinAIM 4.3.
+
+ - Mon Dec 4 23:46:35 UTC 2000
+ - Add exchange to the create response callback (doh!)
+
+ - Sat Dec 2 02:14:45 UTC 2000
+ - Dumb bug in aim_clearhandlers()
+
+ - Fri Dec 1 23:48:38 UTC 2000
+ - Store exchange along with room name in the great chat hack
+
+ - Fri Dec 1 22:25:56 UTC 2000
+ - Fix numerous tiny (but sometimes catastrophic) bugs dealing
+ with connection death (particularly with chat connections)
+ - *** Any connection with a -1 fd will get returned by aim_select
+ immediatly now... your code probably already handles this implicitly.
+
+ - Wed Nov 29 17:31:23 UTC 2000
+ - Rewrote some of the msgcookie stuff
+ - Changed cachecookies to uncachecookies where it makes sense (arg!)
+ - Minor other stuff
+
+ - Fri Nov 10 08:24:34 UTC 2000
+ - Add sess->flags (replaces sess->snaclogin)
+ - Remove odd setstatus call in chat parser
+ - Remove aim_tx_enqueue macro, replace with a smarter one
+ - If a connection is in progress, enqueue instead of calling
+ the client-specified queuer
+ - Add support for nonblocking connects through the
+ AIM_SESS_FLAG_NONBLOCKCONNECT flag to aim_session_init()
+ - Add AIM_CB_SPECIAL_CONNCOMPLETE callback. Not real useful.
+ - Add AIM_CB_SPECIAL_FLAPVER callback. Can be used as an alternate
+ way of starting the login process, or just to look like you
+ know what you're doing. Fixed associated inconsistencies
+ in aim_rxhandlers too.
+ - Fix some connection status stupidities in faimtest.
+
+ - Wed Nov 8 13:11:18 UTC 2000
+ - Reenable/reimplement older login, but only use for ICQ UINs
+ - This is a fairly ugly hack. But...eh. It works.
+ - You'll need to remove the aim_sendconnack() before the
+ call to aim_request_login. It will now do it automatically
+ if its needed. (hint: ***CLIENT CHANGE***)
+
+ - Wed Nov 8 02:23:25 UTC 2000
+ - I'm trying out using a modified version of the kernel-doc scripts
+ to help document the libfaim code a bit. See aim_conn.c and
+ aim_tlv.c, as well as the scripts in utils/docs.
+
+ - Wed Oct 25 17:52:20 UTC 2000
+ - Cleanup warnings from newer gcc's (RH7.0)
+ - Aparently newer gcc's don't let you do as strong of integer types
+ on va_arg as older ones... So, let me know if this breaks on your
+ compiler
+
+ - Tue Oct 17 02:10:13 UTC 2000
+ - Rearrange a few things
+
+ - Mon Oct 16 20:56:59 UTC 2000
+ - Remove some warnings
+
+ - Mon Oct 9 04:24:56 CDT 2000 (jbm)
+ - took care of the XXXs in aim_putuserinfo()
+ - now use dynamic TLV count to send ("look ma, no magic!")
+ - now send cap blocks
+ - now send icq info if a numeric SN
+
+ - Wed Oct 4 21:29:47 CDT 2000 (jbm)
+ - Fix borked disconnect callbacks
+ - Add aim_conn_in_sess()
+ - A little housekeeping in faimtest ("fixing" order of printf,
+ remove a comment)
+
+ - Mon Sep 25 00:21:31 CDT 2000 (jbm)
+ - Add a couple of ICQ userinfo parses
+
+ - Fri Sep 22 22:47:49 UTC 2000
+ - Add aim_icq_setstatus() (jbm)
+
+ - Fri Sep 22 22:35:51 UTC 2000
+ - Apply jbm's patch below
+ - Minor cleanup in cb handler stuff
+
+ - Thu Sep 21 20:28:20 CDT 2000 (jbm)
+ - DirectIM shouldn't kill us any more.
+ - Eliminated a potential segfault in aim_send_im_direct().
+ - make tags (yay!).
+ - Added an aim_tx_destroy(); need to move the lib over to using it.
+ - Got rid of some #if 0 BS code in a couple of places
+ (aim_ft::establish() and aim_im::aim_parse_incoming_im_middle()).
+ - Added some file transfer stuff (so experimental, i haven't
+ had a chance to see if it causes cancer in lab animals).
+ - Added to faimtest for all of the above.
+ - Added myself to AUTHORS with Real Info.
+
+ - Thu Sep 21 00:24:36 UTC 2000
+ - Add socks5 proxy support (not tested real well, worked the
+ few times a tried).
+ - Added proxy support to faimtest.
+
+ - Tue Sep 19 03:10:07 UTC 2000
+ - Add aim_setuserinterests() and aim_setdirectoryinfo()
+ - Add ICQ away status
+
+ - Thu Sep 14 00:54:48 UTC 2000
+ - Added create room callback
+
+ - Wed Sep 13 22:01:35 UTC 2000
+ - Remove references to "new" and "class" for dumb C++ compilers
+ - Renamed userinfo->class to userinfo->flags both for clarity and C++
+ - Remove some extraneous variables
+
+ - Tue Sep 12 20:16:51 UTC 2000
+ - Add aim_flap_nop() from my work tree
+
+ - Tue Sep 12 05:06:53 UTC 2000
+ - Revert the two-byte change in aim_misc, clientready
+
+ - Tue Sep 5 04:41:45 GMT 2000
+ - Few more minor things
+ - Added the changes needed for faimtest.
+ - Removed aimdebugd from default build
+
+ - Tue Sep 5 03:47:26 GMT 2000
+ - More ANSIfication for win32
+ - Forgot aim_misc last time.
+
+ - Mon Sep 4 22:08:35 GMT 2000
+ - Forgot aim_snac and aim_search
+
+ - Mon Sep 4 21:38:09 GMT 2000
+ - A mild step towards ANSI compliance
+ - Compiles cleanly with -pedantic (except for the libc issue in socket.h)
+ - Fixes various sign mismatch things. There may be more, we'll see
+ what MSVC has to say about it.
+ - Add faim_internal and faim_export macros so Win32 DLL is easier
+
+ - Sun Sep 3 23:58:17 UTC 2000
+ - Portability fixes (for solaris, set the SOLARIS env var first)
+
+ - Sat Sep 2 23:42:37 UTC 2000
+ - Hopefully fix aim_snac.c bugs
+ - Add Buddy List Rights parser (max buddies and max watchers)
+ - Fix rather major problem in rxhandlers caused by missing breaks
+ - Add reason code for msgerr (0004/0001) callback
+ - Add BOS Rights parser (max permit / max deny)
+ - Add locate error (0002/0001) parser
+ - Add parser for missed calls (0004/000a)
+
+ - Fri Sep 1 23:34:28 UTC 2000
+ - Switched the read()s in rxqueue to use recv()
+ - Should fix the big message problem and the big buddy list problem
+ - Changed some values around in aim_misc to match winaim4.1
+ - Added aim_addicbmparm. dunno what it does
+ - Cleanup the login process in faimtest (can now login in less than 2sec)
+
+ - Fri Sep 1 00:13:04 UTC 2000
+ - Avoid zero-length mallocs in aim_tlv
+
+ - Thu Aug 31 23:40:23 UTC 2000
+ - Threw in aim_select modification from nicolas
+ - Remove stray debugging printf in aim_tlv
+
+ - Mon Aug 28 03:11:15 GMT 2000
+ - Adds lots of comments
+ - Add AIM_CLASS_ALLUSERS constant for setgrouppermmask()
+ - Add warnings support (jbm)
+
+ - Mon Aug 21 22:00:18 UTC 2000
+ - Implement SNAC login MD5 (thanks to Sonuvbob for that one)
+ - Clear out all that old login cruft. Much cleaner now.
+ - REQUIRES CLIENT CHANGES (see faimtest)
+
+ - Fri Aug 18 19:52:54 UTC 2000
+ - Fix the non-pthread bug
+
+ - Thu Aug 17 23:19:40 UTC 2000
+ - A few more leak fixes (only a few left to go...)
+
+ - Thu Aug 17 23:08:08 UTC 2000
+ - More leak fixes (eric, eric, eric...)
+
+ - Thu Aug 17 22:53:03 UTC 2000
+ - Change the SNAC cache to a hash instead of list
+ - Fixed a few leaks relating to aim_gettlv_str()
+
+ - Thu Aug 17 14:04:18 UTC 2000
+ - Fix the fd closing bug introduced last week
+
+ - Tue Aug 8 04:25:35 UTC 2000
+ - Preserve subtype and priv after aim_conn_close
+
- Tue Aug 8 04:15:47 UTC 2000
- Fixed double-calling of faim_mutex_init
- conn->type preserved after aim_conn_close