09-12-2005 * Add snd/rcv bufsize settings to interfaces. (baka) * Add --without-sendfile to force-disable sendfile() support. (baka) 08-08-2005 * Improved sendfile detection on Linux; handling odd Virtuozzo systems. 20-07-2005 * Fix a number of function/method typos in the docs/perl-api.txt (Bug #99). 20-06-2005 * Make three_digit_size, so fractional sizes when space is available. (Bug #97) * Implement Arisa::Packlist->packs() as defined in perl-api.txt. (Bug #98) 30-05-2005 * Modify admin.c so that successful reverse DNS is not required to admin via DCC chat. * Fix number of typos (some major), reported by 'dinoex'. 18-03-2005 * Fix bug in the network/settings command which would attempt to change the bots nick name when a change to the 'nick-tracking' setting was changed. * Make the default setting for 'nick-tracking' on, instead of off. 23-01-2005 * Clean up some integer type usage in dcc-eng.c which lead to breakage on machines where long is 64bits. 22-01-2005 * Fix more poor initialisation in aresolv.c. * Fix bug in log_line, which meant that ctime_r on some platforms currupted some values on the heap. * Fix a bug which ment users got no reason when an admin closed a send or upload and didn't specify one. 21-01-2005 * Fix poor initialisation in aresolv.c. 19-12-2004 * Add some additional validation to loaded config data, when handling the hashed state of packs. 18-12-2004 * Fix a major bug in pool.c leading to memory curruption on large/highly active pools (induced in latest memory management changes). 15-12-2004 * Fix a major bug in the dequeue code, causing almost certain crash. (Bug #84) * Fix the xdcc message handling to use util string splitting code, so it can properly hand spaces. * Clean up a few broken feedback messages in dcc_eng.c. 28-11-2004 * Fix a number of missing initialisation statements in alloc.c (alloc.c and dcc-eng.c should now be clean). (Bugs #82, #83) * Fix error causing arisa not to go into the background correctly on my Linux Kernel 2.6, machine with HyperThreading disabled. The "to_background()" code is now annoyingly complex. * Fix bug in queue.c, involving misuse of PTRARR_DUP. (Bug #81) * Clean type of wild_match_cf. 22-11-2004 * Fix thread startup behaviour so that the log thread is active when the bot starts. * Fix a lack of proper initialisation in the dcc engine. This and more like it will probably show up after changes to the malloc model which allow "dirty" memory. 20-11-2004 * Fix memory leak in free_chat. * Change DCC chat to terminate lines with '\n' rather than '\r\n', which what the ctcp "specification" says, lack of real standards on any of this is starting to get annoying. * Reduce malloc/relloc load in ptrarr functions. * Modify testsuite to allow selecting of individual tests "-t ," or "-t all". Now "-t" alone lists available tests. 02-11-2004 * Fix a bug in the way DCC SEND errors are logged (was causing them not to be logged). 27-10-2004 * Fix a bug where a filesize change is not replicated into the internal data structures. 25-08-2004 * Seperate usage of readline between file and term functions, this fixes bug #75. * Add scripts/usr1_scan_lists.pl and scripts/usr2_nolist_toggle.pl. 23-08-2004 * Tweaks to perl behavior, add Arisa::on_unload() which allows a function to be register, which will be called beforce the script is unloaded. 22-08-2004 * Fix a bug old network structures not to be freed (purge function was not linked). * Give scripting engines (particularly the only one perl), the ability to save data in the main arisa config file. 19-08-2004 * Add nolist and nosend reasons, e.g. "nosend ". Will be displayed to users. * Add closure reasons for sends, uploads and chats, intended for use by the scripting engine this functionality has yet to be made available to admins. 17-08-2004 * Fix a bug when using short command names to call 'grant' on a user (causing it to do nothing), also extend 'grant' and 'revoke' to take multiple privileges in one operation. * Change "pack view" to display when the pack was hashed (which wasn't stored originally). 16-08-2004 * Fix bug causing "queues check" to do nothing. * Add hostmask support to access lists, use "acc a -host " will work in a compatible way with existing entries: entries without '!' or '@' will be match purely on the host component, entries with either will be match on the hostmask. * Add $LIST substitution variable to packlist taglines. 15-08-2004 * Add validity-cache to accelerate perl engine. * Fix bug in irc_network_del which could result in memory leaking and invalid pointers. * Tweak irc_msg_add/irc_msg_del functionality. * Add lots of useful information to docs/perl-api.txt. * Alter headers so scripting engine signalling overhead only applies when a scripting engine is compiled in. 14-08-2004 * Fix a crash bug induced in the scripting engine code. * Clean up the perl build mechanism, not totally clean, but better. * Finish Arisa::UI classes. * Finish perl scripting engine. 13-08-2004 * Begin Arisa::UI classes. * Add missing Arisa::shutdown perl function. * Fix an error with self/settings or user/.../settings. 12-08-2004 * Emit signals into perl space. 11-08-2004 * Complete Arisa perl class. 10-08-2004 * Complete Arisa::User perl class. * Complete Arisa::Admin perl class. 09-08-2004 * Begin Arisa::User perl class. 08-08-2004 * Complete Arisa::Packlist perl class. 05-08-2004 * Continued work on Arisa::Packlist perl class. 03-08-2004 * Continued work on Arisa::Packlist perl class. * Clean up some internal handling of user requested plists. 28-07-2004 * Fix a bug in the "queues" command in list chat mode. 23-07-2004 * Rewrite parts of packlist scanning and checking code. * Add recursive scanning functionality, new "scan-depth", variable configures how deep to recurse. 22-07-2004 * Add incoming message rate limiting (user configurable) to the IRC code. * Add support for aq/&~ modes to the nickhash code. * Tweak mode prefix handling in channel name reply handler. * Make "Main Thread, Tick" configuable. * Hopefully fix the history curruption (lost character) bug in the curses arisa-sh. 20-07-2004 * Fix a bug in irc code WRT IP address determination, change IP address determination to use USERHOST instead of WHOIS (developer stupidity). 13-07-2004 * Fix a bug, moving/swapping queues and packs (Bug #68), added when cleaning code. 12-05-2004 * Implement Packlist (incomplete in perl code. 11-07-2004 * Finish Queue implementation in perl code. 10-07-2004 * Implement Queue (incomplete) in perl code. 08-07-2004 * Implement Interface and Pool in perl code. 04-07-2004 * Fix a reference counting bug in the pack consolidation code. * Fix a bug causing non-interruption in interuptable_connect(). * Alter the hashing code to work fluidly with the new pack system. 03-07-2004 * Create an interuptable_connect function for the irc code to use, insert a few break points in other code. This should deal with some issue regarding arisa non-terminating (or rather appearing too), when certain operations are in progress. 01-07-2004 * Add hash-display option to packlists, this configures if a list should output CRC,MD5,CRC+MD5 or no hashes in it's xdcc lists. (Bug #63) * Add a "packs view " command, this gives full details of a particular pack, so that when a list is set not to display hashes, hashes can still be retrieved. * Add a response option to packlists, which can be notice or privmsg, xdcc lists will be set back to users in the type of message selected, defaults to notice. (Bug #64) * Add configure tests for gcc version, and the support of unamed unions. (Bug #61) * Catch signals like HUP,USR1,etc and forward them to the scripting engine. (Bug #65) 30-06-2004 * New reference count based consolidated pack system, all packs with the same file path are the same pack, consolidates download counts, etc. Will be used to add new features in due course. * Tweak the pool and queue send initialisation, add support for small file bypass, see 'bypass-size' option in queue/settings. 22-06-2004 * Fix the docs/Makefile to feed dvips more explicit options. * When build completes link arisa and arisa-sh into the top level directory of the build. 19-06-2004 * Fix bug #59, "record_send field isn't updated". * Fix bug/feature #60, "Configurable Sort Algorithm": upgraded the auto-sort field of packlist to an enum. Possible values 'none', 'az', 'za', 'iaz', 'iza'. Representing order and case senitivity. * Fix stupid bug in the nickhash_query_channel function which cause memory curruption. * Fix bug/feature #13, "Add CTCP command": 'ctcp' command added network menu. * Fix bug/feature #14,#45, add a global stat line, turn on and off via, 'stats' command. 15-06-2004 * Fix a crash when accepting uploads (Bug #56). 14-06-2004 * Fix a bug in the menu system backend code which meant the privilege system was not being properly applied. * Fix a bug where the main thread spins endlessly, due to a queued end signal. 13-06-2004 * Fix a bug where admin chats initiated via a chat interface don't work due to poor initialisation. * Abit more perl stuff. 10-06-2004 * Fix arisa-sh start up code which was sending an erroneous colour command, or should I say not sending all of it. 09-06-2004 * Clean up use of nickhash structures, effectively restore reasonable abstraction. * Do some more perl work. * Burn all 'color' references, standardise on 'colour'. 06-06-2004 * Fix queues/settings/priority-queues to being bool rather than int. * Fix bug where a static port send interface loses ports, and other funky things port related. * Disable broken mmap sendfile replacement. * Add some missing message on dcc send initiation. * Fix a curruption bug in the send+recv sendfile replacement. 31-05-2004 * Perl work. 30-05-2004 * Do some perl work. * Move docs/aux to docs/external, because windows sucks. * Fix bug #49, alter to_background method. 29-05-2004 * Do some perl work. * Fix an erroneous free in free_interpreter. 27-05-2004 * Remove partial matching by CRC. 25-05-2004 * Fix the ChangeLog dates. * Add version to log file when bot starts. * Fix bug in new DCC SEND incoming message handling code (crash bug). 24-05-2004 * Fix error in the value conversion system, with respect to bools. * Fix error in sendfile linkage on FreeBSD. * Add some .cvsignore files. 22-05-2004 * Fix errors in the packlist/settings data structure. 20-05-2004 * Make failed DCC SEND messages more informative. 19-05-2004 * Fix Bug #35, Text-Replace Variables Not Replaced When 'listen' Feature is Enabled. * Fix Bug #36, Listen feature - Order misplacement. * Fix Bug #37, public xdcc list wierdness. 15-05-2004 * Fix Bug #34, information leek about hidden packlists. 14-05-2004 * Add globals.h include to sendfile.c, fix the mmap64 sendfile method. * SunOS fixes. * Fix broken help entries in the interface menu. * Make the help command return it's own help entry when called with no arguments. 13-05-2004 * Make FreeBSD work again, fix some associated bugs and clean up some errors not picked up on my normal build system. * Add sys/types.h to crc32.c, which is need to build on FreeBSD 4.9. * Fix settings/global. * Fix settings/network. * Fix bug with dequeue algorithm 0, where timestamps would have been compared erroneously. * Change xdcc list size output system, so that it handles small and large sizes and is not fixed to displaying MiBs. * Remove broken round() subtitute and round() usage. 11-05-2004 * New threading abstraction layer, fix a number of threading bugs. * Fix a bug when deleting sends which haven't been picked up by an interface. 08-05-2004 * Fix errors in the packlist_t settings code, duplicate entry and misnamed entries. 06-05-2004 * Convert packlist_t to new settings code. * Convert settings_t to new settings code. 05-05-2004 * Convert channel_t to new settings code. * Convert interface_t to new settings code. * Convert pool_t to new settings code. * Convert queue_t to new settings code. 03-05-2004 * Fix signaling bug in the perl engine, although I'm the only person playing with it -PerlFu. * Add an antispin system to the IRC code. 01-05-2004 * Create a polymorphic immutable value system, in value.c and value.h. * Create a new structure based settings system, settings.c and settings.h, in order to extract the settings system from the admin interface (for use with perl, etc). * Convert netset_t to the new setting system. 28-04-2004 * Fix a bug when setting the core dump size, always tried to set hard limit to infinity. 26-04-2004 * Change auto-core behaviour to 128MiB, unless limit is already INFINITY. * Fix a bug in the irc code where the join queue would become flooded with potentially millions of messages. 25-04-2004 * Change dcc interface behavior to not rebind failed ports every 1 second. * Alter interface settings so that when dcc-port is set if no-ports is 0, then it is forced to 1. 24-04-2004 * Fix an off by 1 error in the XDCC SEND by Label|MD5|CRC, which was making the feature unusable. * Fix a case sensitivity issue in the ignore code, leading to unmatched ignore entries. * Alter the handling of poll revents to take account of some details I learnt while exploring the linux kernel sources, namely POLLIN is set when POLLHUP occurs. * Replace all uses of select with poll. * Add timestamps to arisa-sh, -t disables them, -e extends them to have seconds. * Make the XDCC SEND by Label|MD5|CRC handle ambiguous cases in a verbose manner and add support for partial matches. * Make hashing code check that a file hasn't already been hashed for another pack entry before hashing it again. Use the cache CRC and MD5 if found and size matches. * Fix incorrect default period for packlist ignore list. Place some fix up code in loadsave-autogen.c to fix the config files of people this has damaged. 23-04-2004 * Convert IRC code to use poll(2) instead of select(2), and improve error handling. Split main loop. * Add reconnect-delay to network settings, this is used as follows during reconnect sleep(reconnect-delay - seconds since last connection attempt). So a network which has been connected for longer than the reconnect-delay will instancely attempt a reconnect if the connection is lost. * Alter the ignore list pruning code to prune at test time. * Fix some stupid errors in the nickhash and hosthash code. 22-04-2004 * New ignore list system, user controllable ignore lists, 1 global, 1 per packlist. Global list now supports full hostmasks, permenant ignores and inverse ignores. List are run in order, and use lazy expiration. * hosthash is moved into ignore.c and made static. * In packlists, list_frequency is period of the associated ignore-list. * For global settings, ignore-period and ignore-trigger are now part of ignore-list. 18-04-2004 * Fix bug freeing empty sections in the loadsave code (crash bug). * Make aresolv, rotate the addresses returned so cached hosts with multiple addresses get rotated. * Fix a bug in aresolv when rehashing the hosts file (crash bug). * Fix a bug moving a send forward in a queue causing duplication, etc. 17-04-2004 * New hosthash.c code, based on nickhash.c, saves 4k of memory per packlist. * New wild_match, wild_match_nc, for use in hostmask matching. * Switch irc_hostmask_match to use wild_match_nc, should be 3-5x faster. 16-04-2004 * Start keeping a changelog. * Add support XDCC SEND .