]> andersk Git - libfaim.git/blob - CHANGES
a9573276192468f2ad88446e26ecaadaee48b3fc
[libfaim.git] / CHANGES
1
2 No release numbers
3 ------------------
4  - Fri Jun 30 00:04:47 UTC 2000
5    - Removed the forceful ICQ-related warnings, just in case they're wrong
6    - Added three new fields to the client info.  
7       - **REQUIRES CLIENT CHANGES -- see faimtest for new initializer
8    - Cleaned up aim_send_login()
9    - Put in a nice hidious fix for AOL's latest bit of the drama.  See
10       aim_readtlvchain() for the details.
11
12  - Mon Jun 26 07:53:02 UTC 2000
13    - Added utils/aimdebugd for playing with things -- see the README
14    - Added aim_im.c::aim_parse_outgoing_im().  Probably not useful
15       unless you're writing a server or something (or hacking aimdebugd).
16    - aim_send_im() now sends the same data as AIM4 does (three more bytes)
17    - Added aim_debugconn_sendconnect() for aimdebugd-enablement.
18
19  - Sat Jun 24 02:14:07 UTC 2000
20    - Added fakelocks for platforms without pthreads or that have no
21       use for them.
22    - Added workaround for MSG_WAITALL for people with the very broken
23       libc that comes with earlier Red Hat's.
24
25  - Sat Jun 24 00:44:24 UTC 2000
26    - Support zero-type TLVs in aim_extractinfo()
27      - AOL now ocassionally throws extra zeros in so in order to break
28          clients.  Aparently zero-type TLVs are a special case -- if the
29          type is zero, then _there is no length_ field.  AOL are geniuses.
30      - Note that you only get these if you send a bad client string, such
31          as the top one in faimtest.  If you #if 0 that one out and use the
32          second one, you'll be fine.  (Unless you just want to see the message
33          for yourself.  Its nifty. (FREE!))
34    - ICBM parser now uses aim_extractuserinfo() so that it can benefit
35        from the above changes, as well as clean up the whole "is it the 
36        first or the second one of this type?" issue
37      - This also fixes the changes AOL made in away messages.
38    = Fixed a possible buffer overflow when AOL changes the max sn length
39    - Increased MAXSNLEN to 32 (they appear to be valid)
40      - If you start getting messages from someone called "AOL Instant
41         Messenger", see comment one, paragraph two.
42    - aim_select() now returns a -1 if there are no connections open
43    - Connections are now killed completely if there is a major error on them
44    - faimtest now calls aim_logoff() on connection error
45
46  - Fri Jun 23 22:38:47 UTC 2000
47    - Adds start of adverts support
48    - Adds aim_bos_nop().  You may want to send this occassionally
49    - Fixes aim_rxhandlers.c to work for people with three-letter
50        screen names
51
52  - The week prior to Fri Jun 16 19:37:09 UTC 2000
53    - Rethought the rendezvous stuff.  DEFINIT WORK IN PROGRESS
54      - Do not bother trying to use this.  This will probably break
55          your clients.  You may or may not want to fix them, since 
56          I may change it again soon.  
57      - I REPEAT: This really is a developer-only version.  It barely
58          compiles.  I'm just committing it so I don't have so many
59          trees floating around.
60    - Added stuff to support OFT as well as OSCAR protocols
61    - Added aim_send_im_direct() for directim ("IM Image")
62    - Added caps getting/putting routines 
63    - Added more aim_login fixes to avoid more AOL stupidity
64      - This is the same as went to libfaim-devel yesterday, so don't upgrade
65        just to get these changes.
66    - Removed aimicq_encode_password -- now use the same table
67        for both ICQ and AIM
68    - Added AUTHORS
69
70  - Tue Jun  6 01:36:48 UTC 2000
71    - Inverted gethostbyname2() check.  Not sure how that ended up 
72        in that state.
73    - Added some of the initial framework to support file transfers
74    - Added in a few checks for that
75      - Can currently parse and send a denial message.
76    - Added cookie caching.  (Sorry, I just like saying that.)
77    - Rearranged channel 2 ICBM parsing (detects the different
78        rendezvous types better and hopefully accuratly).
79    - Killed the connection array.  Now a list.  (Suits the
80        upcoming features better.)  --- REQUIRES CLIENT CHANGES...
81      - In most cases, you need to change aim_conn_close() calls
82          to aim_conn_kill().  This will free them as well as 
83          close them.  If you don't do this, you'll pollute the
84          connection list and leak memory.
85    - Possibly a few other minor things (some cleanups to faimtest for one)
86
87  - Fri Jun  2 23:27:28 UTC 2000
88    - Cleaned up aim_send_login slightly
89    - Added aimicq_encode_password to support the new hash
90        values required for logging in with ICQ
91    - Removed crash when email and/or reg status aren't
92        in the auth response (they're not in ICQ responses)
93    - So now as long as you specify a client version of 
94        4.30.3141 in the client info, and your ICQ number
95        as your screen name, you can login to ICQ via libfaim
96        and use it just like an AIM account.
97    - Added AIM_CB_SPECIAL_CONNERR callback for recieving 
98        messages such as disconnect reasonses ("you logged
99        on from a different machine", etc).
100    - Added faimtest's userinfo handler to support away messages
101
102  - Fri Jun  2 15:57:27 UTC 2000
103    - Add creation time, maxmsglen, and various unknowns to chat info
104      update callback.
105    - Remove 'nothing works yet' comment from top of aim_chat.c (it works!)
106
107  - Wed May 31 01:17:24 UTC 2000
108    - Added constants for message sizes (MAXMSGLEN, MAXCHATMSGLEN)
109      - Note that the new max message size is defined as 7988bytes,
110          drastically larger than WinAIM lets you put out.  This is a
111          libfaim-exclusive feature :)
112    - Reduced base buffer size on aim_send_im()  
113  
114  - Tue May 30 22:32:31 UTC 2000
115    - Added lock around tx seqnum to prevent that race when transmitting
116        from diverse threads. (actually committed earlier today)
117    - Added aim_meta.c and a few constants and things to keep
118        track of "releases".  
119    - Added mkbuildinfo.sh to automatically update build string
120        "constants" on every invocation of 'make all'.
121
122  - Mon May 29 12:08:28 GMT 2000
123    - Rearranged aim_tx_flushqueue(); moved write operation 
124        to aim_tx_sendframe()
125    - Turned aim_tx_enqueue() into a macro that calls sess->tx_enqueue,
126        a function pointer to whatever you want to use to enqueue
127        things for transmition (or not)
128    - Old aim_tx_enqueue becomes aim_tx_enqueue__queuebased.  Added
129        aim_tx_enqueue__immediate for doing immediate writes.  Default
130        is to use queue-based procedure.
131    - Cleaned up parts of aim_conn.c
132    - Added locking around the sockets themselves.  Should allow
133        for full cross-thread usage.
134      - Unfortunatly, only pthreads are supported at this time.
135        If you don't have pthreads on your arch, implement the
136        macros your arch needs and send me a patch.  (A SysV
137        semaphore implementation would be trivial, as would a 
138        simple integer-based lock.)
139
140  - Sun May 21 14:59:20 GMT 2000
141    - Added infotype parameter to aim_getinfo() for requesting
142        different types of messages.  AIM_GETINFO_GENERALINFO
143        will get you the normal stuff, AIM_GETINFO_AWAYMESSAGE
144        will get the normal stuff, with the profile replaced with
145        the user's away message.  Also, the callback adds an 
146        unsigned short to the end to give you the value that
147        was originally passed to the request.
148    - There were a few server-pertinent changes that didn't get 
149        documented from last month.  I have no idea what they were.
150
151  - Sun Apr  2 07:29:11 UTC 2000
152    - Redid much of the tx path to remove the superfluous copy.  But
153        it touches every function that transmits.  Its been a long 
154        time in coming.
155    - Added caps parameter to aim_bos_setprofile().  You can now
156        control what capabilties you show up as others to
157    - Added ->capabilities to userinfo.  It should be nonzero when
158        its coming off buddy oncoming information, but NOT requested
159        user info.
160
161  - Sun Apr  2 01:45:15 UTC 2000
162    - Increased AIM_CONN_MAX from 5 to 7.  Precausionary only
163    - Removed deprecated TIS_TELNET_PROXY from faim/faimconfig.h
164    - Added macros for the simple integer functions in aim_util.c
165    - Removed usage of aim_failsaferead() 
166       - Still not sure why I had it to begin with.  I think it 
167         was a remament from when we used non-blocking sockets
168         (which I don't know why I did either)
169    - Removed some of the oddities in aim_get_command()
170       - gprof showed this taking 20kns on my k6-300.  Should be faster now.
171       - Added conn parameter.  This should prevent aim_select() from
172         getting called too many times in a row.
173
174  - Thu Mar 23 08:45:40 UTC 2000
175    - Removed aim_countconn() > 0 check in aim_select(), its logically redundent
176    - Added aim_putuserinfo() (inverse of aim_extractuserinfo())
177    - Added aim_sendbuddyoncoming/offgoing() 
178    - Rearranged loop in rxdispatch()
179    - Remove aim_conn_close() if connections dead in aim_get_command()
180
181  - Thu Mar 23 00:44:32 UTC 2000
182    - Added a check to purge_rxqueue to skip handled commands
183
184  - Mon Mar 20 05:30:59 UTC 2000
185    - Added some server-only functions for login
186    - Added aim_counttlvchain()
187    - Added aim_sncmp() and aim_snlen()
188
189  - Sun Mar 19 06:07:52 UTC 2000
190    - Added a parameter to aim_select to return event type 
191      - REQUIRES CLIENT CHANGES.
192    - For the most part rewrote the tx and rx queuing code 
193      - Should fix many, many outstanding problems in and related
194          to that code, including one that keeps memory from freeing 
195    - Fixed several bugs in various places
196    - Reformated a lot of code, and did general cleanups
197    - Should have a generally more robust lib now.
198
199  - Sun Mar 12 00:07:40 UTC 2000
200    - Fixed a robustness problem in aim_handleredirect_middle()
201    - Added TLV chain creation routines (yes, aimd is progressing)
202
203  - Mon Jan  3 04:07:55 UTC 2000
204    - Fixed bug in aim_snac.c
205    - Fixed condition where commands read from connections that have 
206        been closed were still left in the queue.  Now cancelled.
207    - Added some printfs to aim_info to get more informative crahes
208    - Fixed a bug in aim_rxqueue::purge
209
210  - Sun Jan  2 10:31:19 UTC 2000
211    - Cleanups in aim_info.c
212    - Can compile with -Ddebug=100 again
213    - Implemented chat: Joining/Leaving, info parsing, IM parsing/sending
214    - Implemented some chatnav: rights req/parsing, room creation
215
216  - Thu Dec 30 10:08:42 UTC 1999
217    - Fixed bug in aim_im.c when (encoding == NULL) || (lang == NULL)
218    - Added detection of voice chat requests
219    - Added AIM_CLASS_* defines, including new Away flag
220    - Added awaymsg parameter to bos_setprofile.
221      - If awaymsg is nonnull, you will be advertised as being away (your
222          class will be ORed with AIM_CLASS_AWAY), otherwise you'll show 
223          up normal.
224
225  - Wed Dec 29 10:06:35 UTC 1999
226    - Fixed small bug in IM parser
227    - Added stubs for the capability TLVs in userinfo.
228
229  - Wed Dec 29 09:14:45 UTC 1999
230    - Added a capability block to aim_bos_setprofile.  Can now get chat 
231        invites again.
232    - Extended ICBM parser to support channel 2 messages (chat invites)
233      - A channel parameter has been prepended to the varargs -- REQUIRES 
234          CLIENT CHANGES.
235      - Extended faimtest to support chat invites.
236    - Changed faimtest to get sn/password from environment
237
238  - Wed Dec 29 04:17:03 UTC 1999
239    - Added -g to CFLAGS
240    - Added aim_sendconnack() to aim_login.c (needed for newer login)
241    - Added code for the new SNAC-based login/auth procedure. (see SNACLOGIN
242        in faim/faimconfig.h for why its not enabled)
243    - Reimplemented aim_authparse(), aim_handleredirect() using TLVlists
244        - The old auth_failed callback is now integrated into the
245            success one.  If there was an error, logininfo->errorcode is nonzero
246    - Fiddled with version information.  Added aim_setversions()
247    - Added table of SNAC names for showing unknown snacs (jbm)
248    - Added a middle handler for MOTD
249    - Added new authorization SNACs to faim/aim_cbtypes.h   
250
251  - Sun Dec 26 22:59:10 UTC 1999
252    - Renamed login_phase1_struct to aim_login_struct
253    - Changed cookie and sn to be static arrays in aim_login_struct
254    - Integrated the Jabber-faim changes.  (temas)  [BIG CLIENT CHANGES]
255      - Added aim_session_t, removed all global variables
256      - Changed all functions to accept a session pointer
257      - Removed aim_global.c
258      - Updated faimtest to use an aim_session_t.
259      - Removed all cases where logininfo was passed as vararg to client
260    - Fixed small bug in aim_newconn's 'fixing' of host:port addresses
261    - Added an install rule to the makefile (installs headers+so only!)
262    - Enabled USE_SNAC_FOR_IMS by default, assuming it got fixed
263        by n's new aim_snac.c from ages ago
264    - Implemented a middle handler for 0004/0001 message errors, added
265        snacid lookup to get illfated destination SN and pass to client
266    - Implemented a short middle handler for offgoing buddy.
267
268  - Fri Dec 24 21:30:06 UTC 1999
269    - Added an error-counting Read() that has been sitting in my inbox
270    - Cleaned up header files, created aim_cbtypes.h.
271    - Added void * to aim_conn_t for private client use if they want. (Orb)
272    - Removed all stderr output.  All output is important, and goes to stdout.
273    - Renamed isautoresponse in IM parser to icbmflags.
274    - Added Orb's fix for the new login code, deleted old (see Orb, I do read
275        your mail....eventually).
276    - Added mailing lists to README.
277
278  - Fri Dec 24 11:12:34 UTC 1999
279    - Cleaned up both outgoing and incoming ICBM handling.  Anything
280        that crashes around there is no longer libfaims fault!
281        - The encoding flags are now passed up to the client.
282    - Added several TLV routines to parse large blocks of continuous
283        TLV triplets.  Not terribly effecient, but quite elegent in usage.
284    - Added icbm_setparams() back in from way-back-long-ago.  It hasn't
285        been implemented in a long time, but I think we should still send it.
286
287  - Fri Dec 24 01:23:06 UTC 1999
288    - Fixed a very minor bug in aim_newconn().
289    - Added aimutil_get{16,32}()
290    - Added aim_extractuserinfo() for extracting  user data
291        blocks and putting them into struct aim_userinfo_s's.
292          - Added a loop to print out info on extraneous TLVs.
293          - Put in lots of comments.
294    - Added parse_oncoming_middle() to parse the user data
295        block of that packet.  Now passes struct aim_userinfo_s
296        to client.
297    - Rearranged parse_userinfo_middle().  Now passes an entire
298        userinfo struct to client instead of individual variables.
299    - Convered the version of parse_im_middle() thats actually getting
300        used to pass up a userinfo struct.  
301    - Updated faimtest to accept new structs.
302
303  - Tue Dec 21 06:18:50 UTC 1999
304    - Fixed a Win32 header problem
305  - Tue Dec 21 03:44:13 UTC 1999
306    - Latency timers now update on rx as well as tx.  Gets rid of even more
307        of the rate problems that most clients are having.  
308    - Renamed lasttx and settxlatency to lastactivity and setlatency, respec.
309    - Integrated fixes needed for Win32 -- should compile cleanly now (DMP)
310    - Cleaned up some places, use aim_putsnac everywhere now.
311
312  - Sun Sep 26 20:04:20 MST 1999
313    - Reduced the IM parsing to look for 3 zeros instead of 4 -- NEEDS WORK
314        - This was needed to work with MacAIM3 and some WinAIM3s.
315    - Added aim_conn_settxlatency() for throttling outgoing frames -- NEEDS WORK
316    - Added an int to the userinfo and incoming IM user callbacks for new
317        TLV that AOL put it in -- its the number of seconds elapsed since
318        the user logged in
319    - Worked more on the callbacks (more internal rearrangements)
320    - Fixed bug in aim_select() (returning negative fds)
321    - Clear out logininfo struct before putting more data into it
322    - Other bugfixes that I can't particularly remember.
323
324  - Tue Aug 24 03:13:12 UTC 1999   --- TRANSITION RELEASE!!
325    - Added jbm's new aim_rxqueue.c, which should crash less
326    - Started the overhaul on the callback system.  No where near complete yet.
327
328  - Sun Aug  1 03:02:17 UTC 1999
329    - Added aimutil_*()s in aim_util.c for raw byte placement
330    - Cleaned up aim_im.c, aim_auth.c, and aim_login.c using aimutil_*
331    - Added AIM_IMFLAGS, flags option to aim_send_im(), removed
332        aim_send_im_away()
333    - Added client_info parameter to aim_send_login()
334    - Tweaked aim_send_im() (AOL changed a few things, there's some more
335        changes left to do)
336    - Some Chat stuff changed, still no where near functional
337    - Finally remembered to switch the license to LGPL (from GPL)
338    - Permit/Deny (blocking) list support added
339    - Released a snapshot
340
341  - Sat Jul 31 05:28:38 UTC 1999
342    - Changed aim_bos_setdeny() to aim_bos_changevisibility() and actually
343        did the implementation.  
344
345  - Fri Jul 23 17:45:22 UTC 1999
346    - Work around for the AOL change in IP syntax (thanks to Eric Peyton)
347    - Released snapshot
348
349  - Sun Apr 25 23:31:44 UTC 1999
350    - Fixed stupid off-by-one bug in aim_logoff()
351
352  - Sun Apr 25 22:43:31 UTC 1999
353    - Renamed/reclassified missed IM errors (now all callbacks -- no backend handling)
354    - Killed aim_login() -- all connections now opened in frontend
355    - aim_conn_close() will not close fd's < 3
356    - Released snapshot.
357
358  - Sat Apr 10 22:44:07 UTC 1999
359    - Changed how rx_command->handled works; now uses return value from callback
360    - Changed the if's in the dispatcher (aim_rxhandlers.c) to switch()es
361
362  - Sat Apr 10 03:51:21 UTC 1999
363    - Started CHANGES
364    - Put in n's aim_snac.c.
365    - Updated aim_{add,remove}_buddy() to use aim_conn
366    - Updated aim_usersearch_address() to use aim_conn
367    - Cleaned up aim.h a bit (removed old *phase* protos)
368    - Changed gethostbyname() to gethostbyname2() (for MacOS X)
369    - Changed aim_newconn() to pass connection errors in connstruct->status
370      - Updated faimtest.c to detect connection errors
371    - Fixed a small typo in aim_im::aim_parse_incoming_im_middle()
372    - Added free()s in that function and to userinfo counterpart (fewer leaks)
373    - Released snapshot
374
375  - Sat Apr  3 06:43:14 UTC 1999
376    - Released snapshot
377
378  - Wed Dec 30 01:20:59 MST 1998
379    - Released snapshot
380
381  - Mon Dec  7 16:57:57 MST 1998
382    - Released snapshot
383
384  - Sat Dec  5 00:01:53 MST 1998
385    - Released snapshot
386  
387  - Thu Nov 26 17:50:02 MST 1998
388    -  Released snapshot
This page took 0.579431 seconds and 3 git commands to generate.