2006-10-06 Francois Harvey * Merged some patch * bugxfixes * Initial GET and SET support * Fixed timestamp 2005-10-20 * Moving to the 1.2.0 release * See NEWS for additional information 2005-08-09 06:48 Francois Harvey * Lot of update of the url to dircproxy.securiweb.net 2004-04-02 22:55 Francois Harvey * irc_client.c : initial 005 support (thanks to Gabor Nyeki) * dcc_net.c : small fixes in debug mode 2004-02-26 21:10 Francois Harvey * src/irc_log.c, src/irc_net.h: Fixed minor error for building on MacOS X 10.2 2004-02-15 10:15 Francois Harvey * src/irc_server.c: Fix crash on CTCP without params 2004-02-14 09:50 Francois Harvey * Adding DCC RESUME support (porting a patch from 1.0.3 to CVS HEAD) 2004-02-13 19:30 Mike Taylor * Added Reload command 2003-12-14 17:00 Francois Harvey * Adding Nickserv support (on rattach) 2003-11-26 21:12 Francois Harvey * irc_net.c: you can now also enter the ip-address of the adapter you want dircproxy to bind to. (Patch from Folkert van Heusden ) 2003-11-25 21:45 Mike Taylor * irc_log.c: fixed what appear to be simple typos 2002-08-17 21:48 Scott James Remnant * contrib/dircproxy.spec, src/irc_server.c: Elminiate code references to sourceforge 2002-08-17 21:46 Scott James Remnant * INSTALL: AIX and better Solaris descriptions 2002-08-17 21:39 Scott James Remnant * README, doc/dircproxy.1: Documentation updates 2002-08-17 21:22 Scott James Remnant * src/irc_log.c: Keep the original nickname (without <>s, []s or --s) strip off anything after the ! and make sure the log filename is lowercase. 2002-08-17 21:07 Scott James Remnant * conf/dircproxyrc: Newer, leaner config file 2002-08-17 21:06 Scott James Remnant * src/irc_log.c: Logging of a user's copy or to a program is done universally now, with the advantage that privmsgs are logged by nickname 2002-08-17 21:05 Scott James Remnant * src/: cfgfile.c, irc_client.c, irc_net.c, irc_net.h, dircproxy.h: Rename the other_log_* variables to server_log, remove _copydir and _program in favour of new log_dir and log_program variables 2002-08-17 19:52 Scott James Remnant * configure.ac: Ok, this will be dircproxy 1.1.0, a series of bug fixes and new features until 1.2.0 2002-08-17 19:52 Scott James Remnant * src/: cfgfile.c, dircproxy.h, irc_log.c, irc_net.h: Collapsed the three *_log_timestamp and *_log_relativetime options into a single log_timestamp and log_relativetime option. I can't see any reason why these would be customised seperately, and I need to make the log config file easier! 2002-08-17 19:40 Scott James Remnant * conf/dircproxyrc, doc/dircproxy.1, src/cfgfile.c, src/dircproxy.h, src/help.h, src/irc_client.c, src/irc_log.c, src/irc_log.h, src/irc_net.c, src/irc_net.h, src/irc_server.c: Merged the code to seperate the private message log into a different file. 2002-08-17 19:39 Scott James Remnant * src/: irc_client.c, irc_server.c: Generate rejmsg without the end bit, putting that on in the function that actually sends it 2002-08-17 19:38 Scott James Remnant * src/: dcc_chat.c, dcc_send.c: Call the notify function if connection fails 2002-08-17 19:38 Scott James Remnant * src/: dcc_net.c, dcc_net.h: The notify function takes an extra parameter now, the reason for the failure 2002-08-17 19:24 Scott James Remnant * src/irc_client.c: Restored missing \001 off client rejmsg 2002-08-17 17:49 Scott James Remnant * src/main.c: Handle config reloading in the main loop as well, with the signal handler just setting a variable 2002-08-17 17:46 Scott James Remnant * autogen.sh, configure.ac: Use the AM_MAINTAINER_MODE flag so there aren't any surprises 2002-08-17 17:35 Scott James Remnant * src/main.c: Instead of waiting on children and handling DNS results in the CHLD signal handler, simply catch it (so it interrupts whatever we're doing). Then in the main loop, we always wait on any children - that way we don't do anything exotic like malloc() in the signal handler, which will hopefully appease FreeBSD which has a bit of a problem with that. 2002-08-14 21:15 Scott James Remnant * conf/dircproxyrc: Fixed a typo spotted by James O'Gorman 2002-08-13 17:35 Scott James Remnant * TODO: Removed TODO file 2002-08-13 17:31 Scott James Remnant * src/irc_client.c: Applied modified version of Alexander Dohmen 's patch to log outgoing private messages 2002-08-13 17:02 Scott James Remnant * .cvsignore, RELEASING, acconfig.h, autogen.sh, configure.ac, configure.in: Updated to newer automake and autoconf 2002-08-13 16:47 Scott James Remnant * FAQ: Expand stuff a bit more, moving things out of TODO which I doubt people'll read. 2002-08-13 16:37 Scott James Remnant * FAQ: Document why we don't do RESUME in the FAQ 2002-08-13 14:56 Scott James Remnant * src/irc_log.c: Use a static int counter to make the log directories unique, rather than the socket number, which was a bit evil hackwise. 2002-08-04 13:31 Scott James Remnant * TODO: TODO for the package 2002-08-04 13:26 Scott James Remnant * TODO: More stuff TODO, must get around to DOing this sometime 2002-07-14 09:53 Scott James Remnant * src/main.c: Handle CHLD signals portably by reaping any that arrive (as we care about getting all of them) 2002-04-25 22:57 Scott James Remnant * TODO: Once again, things to do 2002-02-08 18:12 Scott James Remnant * RELEASING, configure.in, contrib/dircproxy.spec: CVS version now 1.0.4 2002-02-08 17:48 Scott James Remnant * ChangeLog, NEWS, RELEASING: Version 1.0.3 released. 2002-02-06 10:10 Scott James Remnant * src/irc_client.c: Added /DIRCPROXY USERS and /DIRCPROXY KILL commands, improved the STATUS command a little too 2002-02-06 10:08 Scott James Remnant * src/help.h: Documented /DIRCPROXY USERS and /DIRCPROXY KILL commands 2002-02-06 10:08 Scott James Remnant * src/main.c: Write pid file on startup and unlink on close. This is specified by the 'pid_file' config directive or the new -p command line parameter 2002-02-06 10:07 Scott James Remnant * src/: cfgfile.c, cfgfile.h, dircproxy.h, irc_net.h: Added config file code for allow_users, allow_kill and pid_file directives 2002-02-06 10:06 Scott James Remnant * conf/dircproxyrc, doc/dircproxy-crypt.1, doc/dircproxy.1: Added new pid_file, allow_users and allow_kill config documentation 2002-02-06 10:05 Scott James Remnant * contrib/: Makefile.am, README, cronchk.sh: Added the much-asked-for crontab checking script, and a spot of documentation about what all these things are. 2002-02-05 10:07 Scott James Remnant * FAQ: Added a few more FAQs 2002-02-05 10:05 Scott James Remnant * src/: help.h, irc_client.c: Implemented new /DIRCPROXY STATUS command to dump the interesting members of struct ircproxy 2002-02-05 10:01 Scott James Remnant * contrib/: Makefile.am, privmsg-log.pl: Added an other_log_program script to log private messages to seperate files (fixes a FAQ) 2002-02-05 10:00 Scott James Remnant * conf/dircproxyrc, doc/dircproxy.1: Documented that nick_keep generally only works while you DON'T connect a client 2002-02-05 09:56 Scott James Remnant * TODO: Not going to do automatic connection to server 2002-02-05 09:55 Scott James Remnant * src/irc_client.c: Only run the client_resetnick timer if nick_keep is set in the configuration file 2002-01-31 14:56 Scott James Remnant * src/irc_server.c: Removed extra brace that broke it 2002-01-31 13:55 Scott James Remnant * conf/dircproxyrc, doc/dircproxy.1, src/cfgfile.c, src/irc_net.h, src/irc_server.c: Log topic changes too 2002-01-28 04:00 Scott James Remnant * src/main.c: That bad patch has left a haunting bug ever since 0.8.0 that I only spotted by reading the source for some random reason. If the config file couldn't be re-read, the global variables (all 3 of them) would be reset to their default values, because the memcpy() had been duplicated inside the failure if {} 2002-01-27 23:43 Scott James Remnant * FAQ, README: Changed URLs to dircproxy.net now, yay 2002-01-24 01:00 Scott James Remnant * src/irc_server.c: Resend the detach message to each channel we rejoin when the server gets disconnected while the client is detached. 2002-01-24 00:37 Scott James Remnant * configure.in, contrib/dircproxy.spec: CVS version now 1.0.3 2002-01-01 18:14 Scott James Remnant * ChangeLog, NEWS, README, TODO: Version 1.0.2 released. 2002-01-01 18:05 Scott James Remnant * AUTHORS.map: Moved CVS server so adjusted AUTHORS.map to reflect my different username 2002-01-01 17:55 Scott James Remnant * src/net.c: Missed out an & 2002-01-01 17:42 Scott James Remnant * RELEASING: Releasing has changed slightly 2002-01-01 17:41 Scott James Remnant * FAQ: Changed a couple of URLs to the new netsplit ones 2001-12-21 20:25 Scott James Remnant * RELEASING: Releasing has changed slightly 2001-12-21 20:17 Scott James Remnant * src/: cfgfile.c, dcc_send.c: Removed hard tabs from source 2001-12-21 20:15 Scott James Remnant * AUTHORS, FAQ, INSTALL, NEWS, PROTOCOL, README, README.dcc-via-ssh, README.inetd, crypt/main.c, doc/dircproxy-crypt.1, doc/dircproxy.1, src/cfgfile.c, src/cfgfile.h, src/dcc_chat.c, src/dcc_chat.h, src/dcc_net.c, src/dcc_net.h, src/dcc_send.c, src/dcc_send.h, src/dircproxy.h, src/dns.c, src/dns.h, src/help.h, src/irc_client.c, src/irc_client.h, src/irc_log.c, src/irc_log.h, src/irc_net.c, src/irc_net.h, src/irc_prot.c, src/irc_prot.h, src/irc_server.c, src/irc_server.h, src/irc_string.c, src/irc_string.h, src/logo.h, src/main.c, src/match.c, src/match.h, src/memdebug.c, src/memdebug.h, src/net.c, src/net.h, src/sprintf.c, src/sprintf.h, src/stringex.c, src/stringex.h, src/timers.c, src/timers.h: Updated the Copyright to 2002, since I plan to make the next release in the first couple of days of January 2001-12-21 20:07 Scott James Remnant * TODO, src/irc_server.c: ERRORs should now get sent to the client before first authorisation 2001-12-21 19:59 Scott James Remnant * TODO, conf/dircproxyrc, doc/dircproxy.1, src/cfgfile.c, src/dircproxy.h, src/irc_net.h, src/irc_server.c, src/net.c, src/net.h: Implented requested KEEPALIVE checking. 2001-12-13 23:45 Scott James Remnant * INSTALL: Compiles on a MicroVAX, whee! 2001-11-12 21:08 Scott James Remnant * TODO: Added some stuff that needs doing 2001-07-13 15:27 Scott James Remnant * RELEASING: E-mail the FreeBSD port maintainer as well 2001-07-12 16:24 Scott James Remnant * configure.in, contrib/dircproxy.spec: CVS version now 1.0.2 2001-07-12 16:15 Scott James Remnant * ChangeLog, NEWS, TODO: Version 1.0.1 released. 2001-07-12 16:15 Scott James Remnant * FAQ, README: Added "bouncer" to the text, changed bugs URL 2001-07-12 14:47 Scott James Remnant * src/dcc_send.c: Used the wrong variable, heh 2001-07-12 14:47 Scott James Remnant * src/dcc_send.c: Drop dcc connections if queue() fails at any point 2001-07-12 14:43 Scott James Remnant * src/net.c: If malloc()s fail within the majority of the socket handler, it shouldn't crash anymore, just return bad flags 2001-07-12 14:37 Scott James Remnant * src/irc_log.c: When rotating log files, keep the permissions as 0600. 2001-07-12 14:36 Scott James Remnant * src/: irc_client.c, irc_log.c: Only strip those characters from the end we really want to treat as whitespace. Doing otherwise strips high characters and control characters 2001-07-12 14:29 Scott James Remnant * src/irc_server.c: Only do the getsockname() call if the client is active, otherwise it'll fail. We cope with not having a client if it is supposed to have succeeeded anyway. 2001-05-07 17:41 Scott James Remnant * TODO: Another bug, will fix these soon. 2001-05-01 21:25 Scott James Remnant * TODO: Got a couple of bugs to fix. 2001-01-11 15:54 Scott James Remnant * configure.in, contrib/dircproxy.spec: CVS version now 1.0.1 2001-01-11 15:29 Scott James Remnant * AUTHORS, FAQ, INSTALL, NEWS, PROTOCOL, README, README.dcc-via-ssh, README.inetd, crypt/main.c, doc/dircproxy-crypt.1, doc/dircproxy.1, src/cfgfile.c, src/cfgfile.h, src/dcc_chat.c, src/dcc_chat.h, src/dcc_net.c, src/dcc_net.h, src/dcc_send.c, src/dcc_send.h, src/dircproxy.h, src/dns.c, src/dns.h, src/help.h, src/irc_client.c, src/irc_client.h, src/irc_log.c, src/irc_log.h, src/irc_net.c, src/irc_net.h, src/irc_prot.c, src/irc_prot.h, src/irc_server.c, src/irc_server.h, src/irc_string.c, src/irc_string.h, src/logo.h, src/main.c, src/match.c, src/match.h, src/memdebug.c, src/memdebug.h, src/net.c, src/net.h, src/sprintf.c, src/sprintf.h, src/stringex.c, src/stringex.h, src/timers.c, src/timers.h: Last minute update of all (C) to 2001 2001-01-11 15:23 Scott James Remnant * ChangeLog, NEWS, README, TODO: Version 1.0.0 released. 2001-01-11 15:14 Scott James Remnant * ChangeLog, configure.in, contrib/dircproxy.spec: CVS version now 1.0.0 2000-12-27 18:28 Scott James Remnant * FAQ, README: Included IRC channel in the documentation 2000-12-27 18:04 Scott James Remnant * src/net.c: Wasn't handling read events if the socket was marked as closed, this includes error events obviously. This could cause 100% CPU usage if there's data waiting to be written on the socket. Instead just make sure we don't call the error_func if socket is closed (it'd get confused). 2000-12-27 17:50 Scott James Remnant * FAQ: Added the most FAQ to the FAQ :) 2000-12-26 18:26 Scott James Remnant * configure.in, contrib/dircproxy.spec: CVS version now 0.99.1 2000-12-26 18:07 Scott James Remnant * ChangeLog, NEWS: Version 0.99.0 released. 2000-12-26 17:34 Scott James Remnant * TODO, configure.in: CVS version now 0.99.0, time to freeze it. 2000-12-26 17:33 Scott James Remnant * src/irc_server.c: Fixed it so it only replies when the client isn't connected (oops) 2000-12-26 17:26 Scott James Remnant * conf/dircproxyrc, doc/dircproxy.1, src/cfgfile.c, src/dircproxy.h, src/irc_client.c, src/irc_net.h, src/irc_server.c: Added support for CTCP replies while the client is detached. 2000-12-26 16:07 Scott James Remnant * src/: irc_client.c, irc_net.c, irc_server.c, irc_server.h, main.c: Completely replaced ircserver_send_command() with ircserver_send_peercmd() as we never really should prefix stuff. 2000-12-22 13:24 Scott James Remnant * src/dcc_net.c: Do a connect() before a listen() so that they've both got a chance of binding to the same port. 2000-12-21 13:27 Scott James Remnant * TODO, src/irc_client.c, src/irc_client.h, src/irc_net.c, src/irc_server.c, src/irc_string.h: * Changed the way all the NICK code works, so it keeps it inline with what the client AND server think the nick is. * Use peercmd everywhere now, its safer * Adjusted the detach autowash order, so it works properly without errors * Use new net_close syntax everywhere * New dcc stuff 2000-12-21 13:24 Scott James Remnant * src/: dcc_net.c, dcc_net.h: Added notification to dcc's, so if they timeout we can send a NOTICE back to the user who initiated it. * Also bind the outgoing connect port, it doesn't matter if this doesn't work (like if there's only one port available) but if it does work it'll help people behind firewalls. * Updated to use new net_close syntax 2000-12-21 13:22 Scott James Remnant * src/: dcc_chat.c, dcc_send.c: Updated to new net_close syntax 2000-12-21 13:21 Scott James Remnant * src/: net.c, net.h: Made net_close explicitly set the socket to -1 (changed to take a pointer) and also made sure no read events occur if the socket is already closed 2000-12-21 13:21 Scott James Remnant * conf/dircproxyrc, doc/dircproxy.1, src/cfgfile.c, src/dircproxy.h, src/irc_net.h: Added new 'nick_keep' configuration option and the associated variables etc. 2000-12-11 21:50 Scott James Remnant * TODO: Updated 2000-12-10 14:36 Scott James Remnant * contrib/Makefile.am: Oops, inadvertently set the spec file to be installed into the share directory, when it shouldn't get installed at all. 2000-12-10 03:06 Scott James Remnant * RELEASING, TODO, contrib/Makefile.am, contrib/dircproxy.spec: Added dircproxy.spec provided by Hollis R Blanchard 2000-12-08 14:29 Scott James Remnant * RELEASING: Another new step in releasing dircproxy, e-mail nidd@debian.org to inform him of any changes that could affect his debian package. I need a secretary *laughs* :o) 2000-12-07 18:27 Scott James Remnant * src/irc_log.c: Lowercase the filename used for log files 2000-12-07 18:06 Scott James Remnant * RELEASING: Updated slightly 2000-12-07 18:05 Scott James Remnant * configure.in: CVS version now 0.8.5 2000-12-07 17:42 Scott James Remnant * ChangeLog, NEWS, TODO: Version 0.8.4 released. 2000-12-07 17:21 Scott James Remnant * src/dcc_send.c: Got rid of the extraneous debug stuff that's not actually needed 2000-12-07 17:17 Scott James Remnant * src/dcc_send.c: Large rework of DCC Send proxying. We now store everything we get from the sender in an internal buffer until we can send it out to the sendee. This means the sender can disconnect part way through without the whole lot going *splegh* all over the place. 2000-12-07 17:05 Scott James Remnant * src/dircproxy.h: New #define variable - DCC_BLOCK_SIZE, the maximum size of a block to send while doing dcc proxying. Its not a config file parameter because the logic behind it isn't exactly spock-like. Basically, it'll only be used when there is LOTS of data in the buffer. If the sendee connects before the sender then it won't be used at all because the data will hopefully be ack'd fast enough to not care. 2000-12-07 17:03 Scott James Remnant * src/dcc_net.h: Need to now know how much data total we've received from the sender (bytes_recvd) [should always be bytes_sent + bufsz, but I ain't risking using that in case i fuck up], need a buffer and a variable to tell us how big it is, and a new status for dcc sender socket's (DCC_SENDER_GONE) 2000-12-07 17:01 Scott James Remnant * src/dcc_net.c: Adjusted the logic of the timer code now, as it isn't quite as clear cut as "are they both connected"? * Made sure all sockets are set to -1 after being closed, just in case the sender leaves, and the client connects just after and gets the same socket number (and confuses the living buggery out of us). * Free the buffer when freeing the proxy 2000-12-07 16:59 Scott James Remnant * src/: dcc_chat.c, irc_client.c, irc_server.c: Just to be on the safe side, set any socket to -1 after closing it. Otherwise there's a *slight* possibility that we could accidentally mistake it for another (especially with the dcc code). 2000-12-07 16:00 Scott James Remnant * RELEASING: Updated release procedures. 2000-12-06 15:25 Scott James Remnant * src/dircproxy.h: Added initial_modes stuf 2000-12-06 15:17 Scott James Remnant * src/: irc_net.c, irc_net.h: Added initial_modes variable 2000-12-06 15:15 Scott James Remnant * src/irc_client.c: if JUMP is done without paramters, pick the next server in the list. * Always match IP address as well as hostname with 'from' * Set initial_modes on first authentication 2000-12-06 15:10 Scott James Remnant * src/help.h: Added new JUMP syntax 2000-12-06 15:08 Scott James Remnant * src/cfgfile.c: Added initial_modes config option and at the same time made all non-fatal errors have a (warning) prefix 2000-12-06 15:06 Scott James Remnant * conf/dircproxyrc, doc/dircproxy.1: New initial_modes config option added 2000-12-05 16:20 Scott James Remnant * TODO: Updated 2000-12-04 12:47 Scott James Remnant * src/irc_server.c: Its possible that ircserver_close_sock can be called without a connection class, so always delete the timers 2000-12-03 21:44 Scott James Remnant * src/irc_client.c: Changed message to be less confusing 2000-12-03 19:25 Scott James Remnant * TODO: More stuff to do 2000-11-30 12:57 Scott James Remnant * TODO: Updated to reflect whats gonna be happening 2000-11-28 15:52 Scott James Remnant * src/dcc_net.c: Wasn't setting the DCC_SENDEE_LISTENING flag, so if they never connect to us, then we never close the listening socket. 2000-11-28 12:14 Scott James Remnant * src/: dcc_net.c, irc_net.c: Dunno why I was using %p in debug() messages - that uses my internal format stuff which ignores them. 2000-11-28 12:12 Scott James Remnant * src/net.c: If poll() or select() was interrupted, or replied that there were no events, then for efficiency reasons I didn't go into the loop and read/write from the sockets. However, this mean't that until something happened, the activity function wouldn't get called if there was data queued internally for the socket. This affected things like DCCs and made them stalled. Always do this loop now. 2000-11-24 14:00 Scott James Remnant * configure.in: CVS version now 0.8.4. 2000-11-24 13:52 Scott James Remnant * ChangeLog, NEWS: Version 0.8.3 released. 2000-11-24 13:44 Scott James Remnant * src/: irc_client.c, irc_net.c, irc_net.h, irc_server.c: Grab a hostname from the one we lookup until we get something better. Accept any number of PASS/NICK/USER in any variation until we have all three *then* authenticate them. This mean't restructuring the login sequence a bit - but it means its a lot more server-like now and actually probably a bit easier to figure out new things with. Fixed the nickname desync problems by always using change_nick everywhere and forcing a NICK command back to the user if we get a 433 or something similar. Also instead of "forgetting" the nickname when its juped during server reconnect while client connected - we keep it, but simply ask for a new one. That way we can generate the required back NICK command. QUIT's and NICK's are only logged to the private message log - not all of them! Made sure connection loss while not online is logged. 2000-11-23 12:33 Scott James Remnant * configure.in: CVS version now 0.8.3. 2000-11-23 12:19 Scott James Remnant * ChangeLog, NEWS: Version 0.8.2 released. 2000-11-21 13:50 Scott James Remnant * README.dcc-via-ssh: Bit of clarification on when you actually need the tunnels 2000-11-21 13:42 Scott James Remnant * INSTALL: Further instructions on MacOS X compile (thanks BillyH btw!) 2000-11-21 13:35 Scott James Remnant * INSTALL: It works on a Mac too! 2000-11-20 15:25 Scott James Remnant * src/: dcc_chat.c, dcc_send.c, irc_client.c, irc_server.c: If we ever get an unexpected socket, then close it. 2000-11-20 12:49 Scott James Remnant * INSTALL: Updated slightly 2000-11-20 12:42 Scott James Remnant * src/net.c: Slightly altered to suppress warnings on older libcs 2000-11-20 12:22 Scott James Remnant * src/: dcc_chat.c, dcc_send.c: Made sure we actually close dcc sockets and not just declare them dead. This will hopefully cure the "lots of read error" problems people have been getting. 2000-11-20 11:12 Scott James Remnant * src/irc_client.c: Somehow lost the #include for sys/types.h - broke compilation on FreeBSD 2000-11-15 16:37 Scott James Remnant * configure.in: CVS version now 0.8.2. 2000-11-15 16:23 Scott James Remnant * ChangeLog, NEWS: Version 0.8.1 released. 2000-11-15 16:10 Scott James Remnant * acconfig.h, configure.in, src/dcc_net.h, src/dcc_send.c: Instead of mucking around with typedefs, use the uint32_t type defined by ISO C 9x to be in inttypes.h - we can then check for this header file and if it doesn't exist #define uint32_t to be unsigned long. 2000-11-15 15:56 Scott James Remnant * acconfig.h: Added new typedefs to stop autoconf moaning 2000-11-15 15:52 Scott James Remnant * configure.in: [ Bug #122324 ] fixed configure issues on other platforms 2000-11-15 15:48 Scott James Remnant * crypt/Makefile.am: Forgot to LDADD libgetopt.a 2000-11-15 15:32 Scott James Remnant * src/dns.c: Save the address being looked up if we can, then if the dns lookup fails we can pretend it worked because we use the addr they looked up and the inet_ntoa() version of it for a name. This was supposed to do this, but for some reason only if result.success (oops) 2000-11-15 14:59 Scott James Remnant * src/: irc_net.c, main.c: A few bugs relating to inetd operation. Specifically I wasn't hooking the socket into the fancy new socket stuff I wrote, so it'd get bored and exit thinking there weren't any. 2000-11-14 11:49 Scott James Remnant * src/irc_log.c: [ Bug #122189 ] Use the TEMP envvar if TMPDIR isn't defined. Also make sure that p->temp_logdir isn't 0 before using it to generate a log filename 2000-11-10 16:28 Scott James Remnant * configure.in: CVS version now 0.8.1. 2000-11-10 15:54 Scott James Remnant * ChangeLog, NEWS, README, TODO, RELEASING: Version 0.8.0 released. 2000-11-10 15:18 Scott James Remnant * conf/dircproxyrc: Accidentally dropped an '=' in there 2000-11-10 15:14 Scott James Remnant * src/irc_log.h: Use signed longs for log file offsets 2000-11-10 15:13 Scott James Remnant * src/net.c: Made net_poll() a little more efficient by only realloc()ing if the number of ufds changes 2000-11-10 15:13 Scott James Remnant * src/memdebug.c: Left in some code so I can enable reporting of all malloc()s if I want it 2000-11-10 15:12 Scott James Remnant * src/main.c: Mostly general neatening 2000-11-10 15:12 Scott James Remnant * src/irc_string.c: Made irc_strcasecmp a little more efficient seeing as we use it so much 2000-11-10 15:10 Scott James Remnant * src/irc_server.c: switch_user support done through seteuid() Added code to do dcc send capturing 2000-11-10 15:09 Scott James Remnant * src/irc_log.c: _irclog_read needs to take a FILE * not a log file, so it will read if the log isn't open (but a file to it is). Use long's as log offsets when recalling. Removed the last of the is_chan code Freeing memory we forgot to when filtering Adjusted the relative timestamps so > 7 days you don't see a time 2000-11-10 15:08 Scott James Remnant * src/irc_client.c: Use *signed* longs for log offsets, and actually detach on /QUIT so we don't wait for a socket to notice they've gone 2000-11-10 15:08 Scott James Remnant * src/dns.c: Added an extra pipe to avoid race conditions, also actually check the wait() status properly 2000-11-10 15:07 Scott James Remnant * src/: cfgfile.c, dircproxy.h, irc_net.c, irc_net.h: Added the dcc_capture_* options and the switch_user option 2000-11-10 15:06 Scott James Remnant * src/: dcc_net.c, dcc_net.h, dcc_send.c: Added dcc capture support 2000-11-10 15:04 Scott James Remnant * conf/dircproxyrc: Added the new dcc_* and switch_user options 2000-11-10 15:03 Scott James Remnant * doc/dircproxy.1: Added documentation for dcc_* options and the switch_user option 2000-11-10 15:02 Scott James Remnant * doc/dircproxy-crypt.1: dircproxy-crypt now has command line options - updated the man page 2000-11-10 15:01 Scott James Remnant * FAQ, README.inetd: Documentation updates 2000-11-10 15:00 Scott James Remnant * configure.in: A few more checks, and added getopt and crypt dirs 2000-11-10 15:00 Scott James Remnant * contrib/log.pl: Added in docs for unfiltered ctcp 2000-11-10 14:59 Scott James Remnant * getopt/: .cvsignore, Makefile, Makefile.in, getopt.o, getopt1.o, libgetopt.a: Accidentally committed binaries, removed them and added a .cvsignore 2000-11-10 14:57 Scott James Remnant * crypt/: .cvsignore, Makefile, Makefile.in, dircproxy-crypt, main.o: Accidentally checked in the binaries (wakey, wakey!) Removed them and added in a .cvsignore file 2000-11-10 14:55 Scott James Remnant * contrib/Makefile.am, contrib/crypt.c, src/Makefile.am, src/getopt.c, src/getopt.h, src/getopt1.c, Makefile.am, crypt/Makefile, crypt/Makefile.am, crypt/Makefile.in, crypt/dircproxy-crypt, crypt/main.c, crypt/main.o, getopt/Makefile, getopt/Makefile.am, getopt/Makefile.in, getopt/getopt.c, getopt/getopt.h, getopt/getopt.o, getopt/getopt1.c, getopt/getopt1.o, getopt/libgetopt.a: Moved the getopt files out of src into their own getopt directory, which gets compiled into a libgetopt.a we include to make dircproxy itself. Also moved the crypt.c out of contrib and into its own crypt directory, improved this a bit and linked it to libgetopt.a to make it a bit neater 2000-11-06 17:02 Scott James Remnant * src/: irc_net.c, irc_net.h: Extra config options added and freed. Ports are int not shorts 2000-11-06 17:00 Scott James Remnant * src/: irc_client.c, irc_server.c: DCC code modified to work a lot better, and be configurable and take advantage of tunnel ports and stuff. Debug code should be inside ''s Fixed memory leak of not freeing p->serverpassword Made sure that msg.src contains information for server code (irc client code doesn't need this) 2000-11-06 16:57 Scott James Remnant * src/: dns.c, dns.h: Use an extra pipe to tell the child when the parent is able to reap it, this avoids the race condition that happens on really fast machines where the child exits before the parent's had time to realise its a dns query (therefore never finishes the request and hangs). Also use ints not shorts for ports! 2000-11-06 16:56 Scott James Remnant * src/: dcc_net.c, dcc_net.h: Code to do port ranges added, timeout code added, dcc send hooks added and p->type changed to be a mask 2000-11-06 16:55 Scott James Remnant * src/: dcc_chat.c, dcc_chat.h: Made data+error functions tatic as they aren't used outside of here. Also extra warning if connection fails. 2000-11-06 16:54 Scott James Remnant * src/: cfgfile.c, dircproxy.h: New config file options: dcc_proxy_incoming [bool] dcc_proxy_outgoing [bool] dcc_proxy_ports [specially handled] dcc_proxy_timeout [numeric] dcc_proxy_sendreject [bool] dcc_send_fast [bool] dcc_tunnel_incoming [int] dcc_tunnel_outgoing [int] 2000-11-06 16:47 Scott James Remnant * src/: Makefile.am, dcc_send.c, dcc_send.h: Added the code to do both simple and fast dcc send proxying. The dcc capture code will also go in here somewhere. 2000-11-06 16:47 Scott James Remnant * FAQ, README.dcc-via-ssh, TODO: Documentation updates 2000-11-02 16:48 Scott James Remnant * src/irc_server.c: Dropped the DCC code in wholesale, and it worked, whoo! 2000-11-02 16:39 Scott James Remnant * src/irc_string.c: Whoa, irc_strupr actually tolower()d things 2000-11-02 16:36 Scott James Remnant * src/irc_prot.c: Upper case the DCC command name according to IRC rules 2000-11-02 16:36 Scott James Remnant * src/irc_client.c: Twiddling 2000-11-02 16:15 Scott James Remnant * src/irc_server.c: Really cleaned this up by using msg.src.orig all over the place instead of trying to build it manually each time. Also made sure we never use msg.src without checking its there, and if not always use p->servername instead. 2000-11-02 16:14 Scott James Remnant * src/: irc_prot.c, irc_prot.h: Keep the original prefix so we don't have to rebuild it each time 2000-11-02 16:13 Scott James Remnant * src/irc_client.c: Cleaned up CTCP handling a fair bit, making it less indented and more streamlined 2000-11-02 16:13 Scott James Remnant * src/dcc_net.c: Slightly more useful debug information 2000-11-02 16:12 Scott James Remnant * src/dcc_chat.c: Was hooking the wrong socket (erk) and also need to check that the other side is connected before sending the data to it. 2000-11-02 13:29 Scott James Remnant * src/: dcc_chat.c, dcc_chat.h, dcc_net.c: Slight tidying to give a bit more response to the user. 2000-11-01 17:58 Scott James Remnant * src/dcc_chat.c: Changed the debug direction indicators to make it clear this is dcc 2000-11-01 17:57 Scott James Remnant * src/irc_prot.c: Don't dequote until we actually parse the CTCP message. This is so s->str can be guaranteed to be within \001's inside the msg.orig 2000-11-01 15:04 Scott James Remnant * src/: Makefile.am, main.c: Intergrated DCC chat stuff so its all cleaned up. Still need to actually do it though :o) 2000-11-01 15:03 Scott James Remnant * src/: dcc_chat.c, dcc_chat.h, dcc_net.c, dcc_net.h: Got a bit enthusiastic and wrote all the code necessary to do a dcc chat proxying. Well, still a bit to do (listen_port ranges and stuff for example) plus it could do with being a LOT cleaner - but hey! its getting there 2000-11-01 15:02 Scott James Remnant * src/net.c: If net_read() is called with a len of 0 just return how much data is in the buffer 2000-11-01 15:01 Scott James Remnant * src/: irc_client.c, irc_net.c, irc_server.c, net.h: new _FUNCTION() macros for the net stuff, made the code use these. Also cleaned up the CTCP stuff and made server work properly 2000-11-01 14:59 Scott James Remnant * src/: irc_log.c, irc_log.h: CTCP logging needs to be done a little differently to make sure the timestamp is fully inside the CTCP and after the command. New irclog_ctcp function to do this. 2000-10-31 13:11 Scott James Remnant * TODO, conf/dircproxyrc, doc/dircproxy.1, src/cfgfile.c, src/dircproxy.h, src/irc_client.c, src/irc_log.c, src/irc_net.h, src/irc_prot.c, src/irc_prot.h, src/irc_server.c: time_offset changed to log_timeoffset because of new log_events option that sits quite nicely with it in the config file. Lots more logging, which is done according to how log_events is set. We also now strip CTCP out of messages sensibly and are able to parse and act on the CTCP's we get out including logging them, or logging ACTION's now (yay!) and even in future doing DCC stuff. Also fixed: when kicked, channel wouldn't get deleted properly, join option in config file didn't like ",," or ", #chan" - appropriate errors added 2000-10-30 13:44 Scott James Remnant * FAQ, conf/dircproxyrc, doc/dircproxy.1, src/cfgfile.c, src/dircproxy.h, src/irc_client.c, src/irc_log.c, src/irc_log.h, src/irc_net.c, src/irc_net.h: Quite a large change to the way logging code works now. Made it a hell of a lot neater in the process too. The idea is that all dircproxy logs always end up in /tmp, and you can use the new _log_copydir (replacing the old _log_dir) option to specify a place to store ALL text logged, or the program to do stuff with it. 2000-10-30 13:42 Scott James Remnant * src/irc_server.c: Don't need to send a NICK command to the client on receipt of a bad nickname numeric, they'll respond to it anyway. 2000-10-30 13:41 Scott James Remnant * src/main.c: Prettied up the error/warning output a bit 2000-10-27 13:12 Scott James Remnant * src/irc_net.c: Should probably set c->key to 0 after freeing it 2000-10-27 13:11 Scott James Remnant * src/irc_server.c: Didn't bother to check whether p->modes was set or refuse_mode itself was set before doing a strcspn()... I must have written THAT at 4am! 2000-10-23 12:47 Scott James Remnant * src/net.c: Sockets with data to write now write that data before they close, and have a few seconds to write it during a shutdown as well. Fixed a few bugs here as well. 2000-10-23 12:39 Scott James Remnant * src/net.h: Added the net_closeall() prototype 2000-10-23 12:33 Scott James Remnant * src/irc_client.c: Made sure we don't net_gets() on a closed socket, tested and fixed the nickname generation so its much nicer now, fixed up the QUIT messages to try and get more irc clients to show them and finally modified to use the new dns/timer syntax 2000-10-23 12:32 Scott James Remnant * src/irc_server.c: Fixed KICK without a source bug, made sure we don't net_gets() a closed socket and modified the rest to use the new dns/timer syntax 2000-10-23 12:30 Scott James Remnant * src/irc_net.c: Modified the use of dns and timers 2000-10-23 12:29 Scott James Remnant * src/main.c: Bit of cleanup of the stop stuff, made errors more obvious in debug mode and calling net_closeall() 2000-10-23 12:26 Scott James Remnant * src/memdebug.c: Added some code to produce pretty statistics of which .c files are doing the most malloc()s. Also made it so if file is 0 it doesn't count it (but still checks it) so I can hide debug() mallocs 2000-10-23 12:19 Scott James Remnant * src/dircproxy.h: Added new define for net linger time 2000-10-23 12:03 Scott James Remnant * src/: timers.c, timers.h: Made it so that timers don't depend on a struct ircproxy, just a random void pointer 2000-10-23 12:03 Scott James Remnant * src/: dns.c, dns.h: Made it so that the DNS stuff doesn't rely on a struct ircproxy, just any random void pointer. 2000-10-23 11:56 Scott James Remnant * configure.in: Allow poll() and select() to be disabled through configure 2000-10-23 11:55 Scott James Remnant * TODO: Another bug to fix :( 2000-10-23 11:55 Scott James Remnant * FAQ, conf/dircproxyrc, doc/dircproxy.1: Lots of documentation improvements and documented the new dircproxy-crypt program too 2000-10-23 11:53 Scott James Remnant * doc/Makefile.am: Install the dircproxy man page 2000-10-23 11:53 Scott James Remnant * doc/dircproxy-crypt.1, contrib/.cvsignore, contrib/Makefile.am: Made the 'crypt' program into something called 'dircproxy-crypt' that gets installed with dircproxy and even has a man page too! 2000-10-20 12:44 Scott James Remnant * TODO, conf/dircproxyrc, doc/dircproxy.1, src/cfgfile.c, src/dircproxy.h, src/irc_log.c, src/irc_net.h: Added fancy new log timestamping and time offset code. 2000-10-20 11:03 Scott James Remnant * TODO, conf/dircproxyrc, doc/dircproxy.1, src/cfgfile.c, src/dircproxy.h, src/irc_client.c, src/irc_log.c, src/irc_net.c, src/irc_net.h, src/irc_server.c, src/irc_server.h, src/main.c, src/net.c, src/net.h: Completely moved over to new socket code now, so its all non-blocking and sexy. Also throttling of server sockets and appropriate server_throttle configuration file option. 2000-10-20 11:00 Scott James Remnant * configure.in: Check for poll.h,sys/poll.h and poll() itself 2000-10-18 17:23 Scott James Remnant * src/net.c: More static functions 2000-10-18 13:26 Scott James Remnant * TODO, src/Makefile.am, src/net.c, src/net.h, src/sock.c, src/sock.h: Replacing sock.c/sock.h with a new net.c/net.h which is much more advanced, and will also do things like the poll() / select() loop. 2000-10-16 12:48 Scott James Remnant * src/irc_server.c: Still need to check whether username/hostname are actually set, even if we're IRC_USER 2000-10-16 11:26 Scott James Remnant * src/irc_net.c: Code to do channel keys (yay!) 2000-10-16 11:23 Scott James Remnant * src/irc_server.c: Code to send and check MODE's for channel keys now added 2000-10-16 11:17 Scott James Remnant * src/irc_server.c: Couple of bugs with the privmsg/notice code, including a %s%s%s vulnerability These have been fixed 2000-10-16 10:59 Scott James Remnant * src/irc_server.c: Changed to use irc_strcasecmp for the commands, won't make any difference but its nicer 2000-10-16 10:52 Scott James Remnant * src/irc_client.c: Changed to use irc_strcasecmp for the commands, won't make any difference but its nicer 2000-10-16 10:51 Scott James Remnant * src/irc_client.c: Updated dircproxy persist docs 2000-10-16 10:49 Scott James Remnant * src/irc_client.c: Made sure you can't /DIRCPROXY PERSIST (and kill off any other possible users) if die_on_close is 1 because of the config file. If it is because of the config file, then just set die_on_close to 0 and announce that they can persist. 2000-10-16 10:46 Scott James Remnant * src/irc_net.h: Added header code for the new channel mode monitoring stuff, this means that irc_net.h will need irc_prot.h 2000-10-16 10:45 Scott James Remnant * src/irc_prot.c: Make sure that IRC_USER is only set if there's definitly a nickname, username and hostname 2000-10-16 10:45 Scott James Remnant * TODO: *sigh* Updates to the TODO file 2000-10-16 10:44 Scott James Remnant * conf/dircproxyrc, doc/dircproxy.1: Added a bit of extra text to try to explain that you shouldn't set chan_log_dir/other_log_dir unless you really want that 2000-10-16 10:43 Scott James Remnant * src/sprintf.h: Clive D.W. Feather himself came up with the prettiest suggestion for my sprintf() trick, so his gets to be in the code :) 2000-10-16 10:42 Scott James Remnant * src/help.h: Fixed the /DIRCPROXY PERSIST documentation so its a little more helpful 2000-10-16 10:42 Scott James Remnant * Makefile.am: Need to include the dcc-via-ssh docs with the distribution too 2000-10-16 10:41 Scott James Remnant * Makefile.am: The FAQ goes with the distribution 2000-10-16 10:41 Scott James Remnant * FAQ: Put some frequently questioned answers in 2000-10-13 17:02 Scott James Remnant * src/: sprintf.c, sprintf.h: Yay, thanks to l33t Demon staff, they dug out a new C99 syntax feature that GCC supports that lets you do variable argument macros. Because this is debug mode I'm happy to put this C99 stuff in :) 2000-10-13 14:33 Scott James Remnant * INSTALL: Got word that dircproxy 0.7.3 compiles under Windows NT without any modification, so added that to the list. 2000-10-13 13:56 Scott James Remnant * TODO: Traditional update to the TODO file 2000-10-13 13:55 Scott James Remnant * conf/dircproxyrc, doc/dircproxy.1, src/cfgfile.c, src/irc_client.c, src/irc_net.c, src/irc_net.h, src/irc_server.c: Channels can have keys locking them, so we should do our best to find out what these are and remember them so we can join channels and provide the right key. First step: Allowing the "join" config option to have keys in it '#chan key,#chan key' etc. 2000-10-13 13:50 Scott James Remnant * conf/dircproxyrc, doc/dircproxy.1, src/cfgfile.c, src/dircproxy.h, src/irc_client.c, src/irc_net.c, src/irc_net.h: Another new config option, detach_nickname - changes your nickname for you when you detach 2000-10-13 13:42 Scott James Remnant * conf/dircproxyrc, doc/dircproxy.1, src/cfgfile.c, src/dircproxy.h, src/irc_server.c: Removed the server_dnsretry config option. Now that we have non-blocking DNS, there's no real need to wait longer after a DNS retry - especially as it'll probably try another server anyway! 2000-10-13 13:36 Scott James Remnant * src/main.c: Oops, mucked up a sync patch somewhere 2000-10-13 13:35 Scott James Remnant * conf/dircproxyrc, doc/dircproxy.1, src/cfgfile.c, src/cfgfile.h, src/dircproxy.h, src/dns.c, src/irc_client.c, src/main.c: Instead of a few #define's which aren't easy to change for timeouts I've moved them into a new "globalvars" structure which is passed to cfg_read and be accessed everywhere as g. - this means these variables can now be altered inside the config file 2000-10-13 13:27 Scott James Remnant * src/irc_client.c: Improved the /DIRCPROXY HELP command so the command list gives a quick idea what the command does 2000-10-13 13:24 Scott James Remnant * conf/dircproxyrc, doc/dircproxy.1, src/cfgfile.c, src/dircproxy.h, src/help.h, src/irc_client.c, src/irc_net.h: Added in a new /DIRCPROXY DIE command and the appropriate allow_die config option (no by default!) 2000-10-13 13:17 Scott James Remnant * src/irc_server.c: Make sure the server_recon timer is deleted just in case they jump or quit during a reconnection phase 2000-10-13 13:15 Scott James Remnant * src/irc_server.c: Better feedback during server connections 2000-10-13 13:13 Scott James Remnant * src/irc_client.c: Included the code to actually make the new quit_message config actually do something 2000-10-13 13:06 Scott James Remnant * doc/dircproxy.1: Improved the documentation a bit 2000-10-13 13:02 Scott James Remnant * conf/dircproxyrc: Improved the documentation and general layout of dircproxyrc 2000-10-13 12:53 Scott James Remnant * src/: sprintf.c, sprintf.h: x_strdup() and x_sprintf() are now specially designed so that when DEBUG_MEMORY is enabled they talk to the memdebug layer directly and are able to tell you where x_strdup() was called instead of just the line inside x_strdup() that did the malloc(). Will make debugging a LOT easier. 2000-10-13 12:50 Scott James Remnant * src/irc_server.c: Improved the documentation 2000-10-13 12:47 Scott James Remnant * src/irc_client.c: Added more info to the top 2000-10-13 12:46 Scott James Remnant * src/irc_net.c: Fixed up the documentation 2000-10-13 12:44 Scott James Remnant * src/irc_log.c: Improved the top description 2000-10-13 12:43 Scott James Remnant * src/irc_prot.c: Better description at the top. 2000-10-13 12:43 Scott James Remnant * src/irc_string.c: Better described this 2000-10-13 12:32 Scott James Remnant * src/dns.c: Forgot to check whether the child returned a status of 0 (everything ok) if it doesn't then its probably timeout or system failure 2000-10-13 12:31 Scott James Remnant * src/dns.c: Improved the top comments so they describe this file better now. 2000-10-13 12:29 Scott James Remnant * src/dircproxy.h: Added prototype for new stop() function 2000-10-13 12:26 Scott James Remnant * src/main.c: Added a function that can be called to end the main loop 2000-10-13 12:23 Scott James Remnant * src/main.c: More fully described what this does. 2000-10-13 12:22 Scott James Remnant * src/memdebug.h: Being picky and marked the #endif with a comment 2000-10-13 12:21 Scott James Remnant * src/sock.c: Fixed some comments. If we're gonna have output buffers I want to not confuse them with the input buffers. 2000-10-12 16:24 Scott James Remnant * doc/dircproxy.1, src/cfgfile.c, src/dircproxy.h, src/irc_net.c, src/irc_net.h: Added support for default /QUIT messages 2000-10-12 16:12 Scott James Remnant * TODO: New ideas 2000-10-12 16:10 Scott James Remnant * conf/dircproxyrc: Added support for default QUIT messages 2000-10-12 16:05 Scott James Remnant * src/irc_client.c: Recall the other_log file *after* channels, so private messages appear last in the window 2000-10-12 16:04 Scott James Remnant * TODO: Non-blocking DNS done 2000-10-12 16:02 Scott James Remnant * src/: irc_client.c, irc_net.c, irc_server.c: Changes to accomodate the new DNS system 2000-10-12 16:02 Scott James Remnant * src/main.c: Handle DNS children in the SIGCHLD handler, and also clear up any DNS child processes 2000-10-12 16:01 Scott James Remnant * src/irc_net.h: To accomodate two-stage DNS lookups we need an extra server status that indicates the server is connected (so don't check for connection) but we haven't yet been introduced to it. 2000-10-12 16:00 Scott James Remnant * src/: dns.c, dns.h: Almost total rewrite of the DNS code. Now you have to request a DNS and provide a function to run once the DNS lookup is complete. The code will then fork() off to do the lookup and continue with normal execution of the program. When the client exits, the result is on a pipe, and once read execution is continued from the function you give it. (ie non-blocking DNS :o) 2000-10-12 15:59 Scott James Remnant * src/dircproxy.h: Added a #define to set the DNS timeout 2000-10-11 16:33 Scott James Remnant * TODO: More things 2000-10-11 16:07 Scott James Remnant * README, TODO: Don't need contrib scripts, clients should just pass /dircproxy to us 2000-10-11 16:05 Scott James Remnant * src/irc_client.c: Made /DIRCPROXY QUIT and DETACH just use every paramter joined together rather than the last one (removing the need for quoting!) 2000-10-11 16:02 Scott James Remnant * src/: irc_prot.c, irc_prot.h: Also record where in the msg.orig string a paramter started, so we can just copy the whole lot to things like quit messages etc. 2000-10-11 15:48 Scott James Remnant * CTCPSPEC, DCCSPEC: Added the DCC and CTCP specifications for reference. Not needed in the distribution, just handy to have around for the CVS developer (me). 2000-10-10 13:08 Scott James Remnant * TODO, conf/dircproxyrc, doc/dircproxy.1, src/cfgfile.c, src/dircproxy.h, src/help.h, src/irc_client.c, src/irc_log.c, src/irc_net.c, src/irc_net.h, src/irc_server.c, src/irc_server.h, src/main.c, src/timers.c: Been working on dircproxy for a week while on holiday, so this is gonna be a VERY big patch (only problem with sourceforge really, you can't take the CVS offline :( ) New options: server_autoconnect channel_leave_on_detach channel_rejoin_on_attach refuse_modes chan_log_enabled chan_log_program other_log_enabled other_log_program motd_file allow_jump allow_jump_new allow_host join (for connection class) Changed options: Any option that accepted "none" also accepts "" New commands: /DIRCPROXY SERVERS /DIRCPROXY JUMP /DIRCPROXY HOST /DIRCPROXY MOTD New features not mentioned: Timeouts for client authorization and connection to a server Unjoined channels (channels we are on, but won't join until a client attaches) Only does certain things for joined + active channels Instead of ignoring everything (including disconnect) from clients until we have a server connection, we simply return a RPL_TRYAGAIN for everything but the /DIRCPROXY command if we don't have a server connection. This means dircproxy will notice things like disconnects finally (yay!) Cleaned up quit messages to make them a bit more amusing Made sure ERRORs are sent for any non-user-requested client disconnection Cleaned up motd stuff and moved to seperate function etc. Looks a lot nicer and works nicer now too. Debug code added so you can see what dircproxy sends extra to that which it proxies Spaced out irc_net.h into the same groups as the config file SERVER_READY does not necessarily mean SERVER_SEEN (this gets set on a 001) - so if a server denies our connection we treat it as still in the "initial" phase. New function to drop+restore server connection (treating it as new initial connection) Send PARTs when server connection is lost, JOINs are sent again on restoration of service (to prevent client from getting baffled). Made sure we never send stuff in timers without checking the server is ready Child reaping Timer debugging Bugs fixed: The pesky "+i No such channel" bug.. gonna fix this in 0.7 too 2000-10-10 12:39 Scott James Remnant * contrib/log.pl: Added a nice script to demonstrate the new {chan,other}_log_program options that are to be added. 2000-09-29 16:08 Scott James Remnant * src/irc_client.c: Slight bug - didn't check that idle_maxtime was set when resetting idle time - so it actually did this with a timer of 0 2000-09-29 15:55 Scott James Remnant * TODO, conf/dircproxyrc, doc/dircproxy.1: Added documentation for allow_persist, attach_message and detach_message 2000-09-29 15:55 Scott James Remnant * src/irc_client.c: Fixed a bug - was using p not tmp_p (bad!) 2000-09-29 15:51 Scott James Remnant * src/: cfgfile.c, dircproxy.h, irc_client.c, irc_net.c, irc_net.h: Added the code to do attach_message and detach_message stuff 2000-09-29 12:43 Scott James Remnant * TODO, src/cfgfile.c, src/dircproxy.h, src/help.h, src/irc_client.c, src/irc_net.h: Changed the config file code so that it uses a struct ircconnclass to store the globals in rather than a million ickle variables - makes it much neater. Added the allow_persist option, and adjusted the help code accordingly to make sure that it doesn't show PERSIST in the help unless its on. 2000-09-28 12:32 Scott James Remnant * README, README.dcc-via-ssh, TODO: Added DCC-via-SSH documentation, and cleaned up the README itself. 2000-09-28 10:37 Scott James Remnant * TODO: More TODO updates 2000-09-28 10:37 Scott James Remnant * src/: irc_client.c, irc_net.h, irc_server.c, irc_server.h: Added code to prevent idling - uses a timer which is set to be idle_maxtime seconds after the last privmsg/notice. Sends an empty PRIVMSG which generates a 411 error, so need to have a setting to squelch this when we've sent it. (note: doesn't use allow_411 type syntax, because its a single response that we can't tell whether will be generated or not.) 2000-09-28 10:35 Scott James Remnant * src/: cfgfile.c, dircproxy.h: Added config code for new idle_maxtime option 2000-09-28 10:34 Scott James Remnant * conf/dircproxyrc, doc/dircproxy.1: Added config option and documentation for new idle_maxtime option 2000-09-28 10:33 Scott James Remnant * README: Added documentation for /dircproxy command 2000-09-27 17:12 Scott James Remnant * configure.in: Development of 0.8 now beginning, any changes to 0.7 will be done on a branch off 0.7.3. CVS version now 0.8.0 2000-09-27 16:56 Scott James Remnant * ChangeLog, NEWS, TODO: Version 0.7.3 released. 2000-09-27 16:45 Scott James Remnant * conf/dircproxyrc, doc/dircproxy.1, src/irc_client.c, src/irc_net.h, src/irc_server.c: Changed the way that stoned server checking works. Instead of measuring times between PINGs from server, do our own PINGs and measure time between the PONGs we get back. 2000-09-27 16:11 Scott James Remnant * src/memdebug.c: Heh, that pesky memory leak turned out to be in memdebug.c itself, forgot to free ms->file 2000-09-27 12:11 Scott James Remnant * TODO: More stuff 2000-09-26 15:10 Scott James Remnant * conf/dircproxyrc: Spaced out a bit more for legibility 2000-09-26 15:07 Scott James Remnant * TODO: More stuff for 0.8 - its gonna be a big release 2000-09-26 13:24 Scott James Remnant * RFC1413: Added the ident RFC, because 0.8 will have its own miniature identd daemon with it. 2000-09-26 12:13 Scott James Remnant * TODO: TODO changes 2000-09-26 11:52 Scott James Remnant * src/main.c: Forced QUITs (as apposed to user quits) generate different error messages 2000-09-26 11:51 Scott James Remnant * src/: irc_client.c, irc_net.c, irc_server.c: Added a few more QUIT messages, to make sure we never leave the server with "EOF from client" if we can help it. Each message is *slightly* different to aid debugging. 2000-09-26 11:45 Scott James Remnant * src/: irc_client.c, main.c: Finally found the course of the "missing QUIT message" problem. Turned out to be me closing the client socket before the server socket (which automatically closes the server socket - thus the GETFL error too). 2000-09-26 11:31 Scott James Remnant * src/cfgfile.c: Forgot to change a line to enable the config file directive 2000-09-26 10:58 Scott James Remnant * conf/dircproxyrc, doc/dircproxy.1, src/cfgfile.c, src/dircproxy.h, src/irc_client.c, src/irc_net.h: New config file option that sets die_on_close to 1 if set to yes. Basically means that you can use dircproxy without its detachable bit now. 2000-09-25 12:24 Scott James Remnant * configure.in: CVS version now 0.7.3. 2000-09-25 12:16 Scott James Remnant * ChangeLog, NEWS, TODO: Version 0.7.2 released. 2000-09-18 10:07 Scott James Remnant * src/main.c: listen_port problem should return 3 [ port error ] not 2 [ config error ] from main. 2000-09-18 10:06 Scott James Remnant * src/main.c: The ~/.dircproxyrc file should only be able to be read/write/exec by the user. It has passwords in it. We don't make the same restrictions for the others though. thanks to: Scott Bronson 2000-09-18 09:54 Scott James Remnant * src/irc_client.c: [ Bug #114688 ] Need to break out of the big while() loop as well if we get a matching mask list, otherwise we never report success. 2000-09-14 12:27 Scott James Remnant * configure.in: CVS version now 0.7.2. 2000-09-14 12:14 Scott James Remnant * ChangeLog, NEWS: Version 0.7.1 released. 2000-09-14 12:07 Scott James Remnant * src/irc_server.c: [ Bug #114352 ] Thought dircproxy had none of these pesky format string problems, but one slipped through in the late stages. Oops. 2000-09-04 13:56 Scott James Remnant * conf/dircproxyrc, doc/dircproxy.1: Cleared up the documentation to state that drop_modes 0 *doesn't* unset this option. 2000-09-04 13:39 Scott James Remnant * src/irc_client.c: Removal of a mode flag when p->modes is 0 resulted in core dump. Fixed this by checking p->modes is set BEFORE doing a strchr() on it. 2000-09-04 13:22 Scott James Remnant * src/irc_log.c: Only do log spinning if log->maxlines isn't 0 (duh!) 2000-09-01 14:11 Scott James Remnant * configure.in: CVS version now 0.7.1 2000-09-01 13:40 Scott James Remnant * ChangeLog, NEWS, README, TODO: Version 0.7.0 released. 2000-09-01 12:58 Scott James Remnant * src/irc_net.c: Need string.h 2000-09-01 12:47 Scott James Remnant * contrib/crypt.c: Also include string.h 2000-09-01 12:47 Scott James Remnant * contrib/crypt.c: Oops, put the #else in the wrong place 2000-09-01 12:19 Scott James Remnant * src/irc_log.c: Only replace / its not worth replacing ., just makes it harder to find the logs 2000-09-01 12:17 Scott James Remnant * doc/dircproxy.1: Added config file documentation to the man page of muchness 2000-09-01 12:16 Scott James Remnant * src/irc_net.h: New member for stoned checking and log spinning 2000-09-01 12:15 Scott James Remnant * conf/dircproxyrc, src/cfgfile.c, src/dircproxy.h, src/irc_server.c: Check for stoned servers 2000-09-01 12:13 Scott James Remnant * src/irc_log.c: Put the sick puppy log spin code in 2000-09-01 12:13 Scott James Remnant * src/irc_client.c: Pure sugar, say "all" if we're gonna recall the whole file cause its small enough 2000-09-01 12:07 Scott James Remnant * src/main.c: Can't use the local config file in inetd mode 2000-09-01 12:05 Scott James Remnant * README.inetd: Fixed up the text now that /DIRCPROXY PERSIT exists for those inetders 2000-08-31 15:36 Scott James Remnant * TODO: Almost there ... 2000-08-31 15:34 Scott James Remnant * src/irc_client.c: Seperated the code to detach a user from ircclient_data() Fixed the 416/461 swapped numeric typo. Removed the /DQUIT command and added the /DIRCPROXY command in all of its glory. Neatened motd output 2000-08-31 15:32 Scott James Remnant * src/: irc_net.c, irc_net.h: Fixed up the dedicate routines to make them work sweeter 2000-08-31 15:30 Scott James Remnant * src/: irc_log.c, irc_log.h: Added the code to do manual log file recollection 2000-08-31 15:26 Scott James Remnant * src/: Makefile.am, help.h: Added in the help text for the /DIRCPROXY HELP command 2000-08-30 14:25 Scott James Remnant * TODO, src/irc_log.c: Recall everything/nothing code added 2000-08-30 14:17 Scott James Remnant * src/irc_client.c: Only log the disconnection if they were active and authenticated 2000-08-30 14:03 Scott James Remnant * src/cfgfile.c: Oops, accidental ` in the code 2000-08-30 13:41 Scott James Remnant * contrib/crypt.c: Return a value from main() 2000-08-30 13:40 Scott James Remnant * contrib/Makefile.am: Oops had a typo 2000-08-30 13:40 Scott James Remnant * src/irc_log.c: Moved this message below the close() 2000-08-30 13:39 Scott James Remnant * Makefile.am, configure.in: Added the contrib subdir 2000-08-30 13:30 Scott James Remnant * contrib/crypt.c: Added new crypt program 2000-08-30 13:14 Scott James Remnant * src/irc_client.c: Extra comment for clarity 2000-08-30 13:13 Scott James Remnant * contrib/: .cvsignore, Makefile.am: Added a contrib directory that will have the simple "crypt" program in it. 2000-08-30 13:09 Scott James Remnant * TODO: Not much left to do now (yay!) 2000-08-30 13:09 Scott James Remnant * src/irc_log.c: Added in the code to actually send log stuff to the client 2000-08-30 12:29 Scott James Remnant * src/irc_client.c: Include crypt.h after dircproxy.h to ensure we get configure info 2000-08-30 11:56 Scott James Remnant * configure.in, src/irc_client.c: Some unixen put crypt() in crypt.h, others in unistd.h 2000-08-30 11:37 Scott James Remnant * src/irc_client.c: Don't check whether the log file is open (it might not be), just check it has a filename. And to recall, just do it and worry later. 2000-08-30 11:36 Scott James Remnant * src/irc_log.c: Don't check we have a conn_class, its a programming error to call irc_log without one - let it core dump and let the bug show 2000-08-30 10:57 Scott James Remnant * TODO, src/irc_log.c: Quite a few changes to the log code. Making sure that we have a conn_class is probably a good idea, also fixed the fact that the other log got our nickname as a filename! Made irclog_free() and irclog_close() do slightly different things (close just closes the file handle, free actually unlinks and free's memory). This is so we can do log->nlines while the user is online for !always log files. Also added the recall code, all except the bit that sends stuff to the user. 2000-08-30 10:54 Scott James Remnant * src/: irc_client.c, irc_net.h: Added a quick time_t to ircproxy so we know when a proxy session began. Display in the 003 header sent to the client in place of "(unknown)" we had before. 2000-08-30 10:53 Scott James Remnant * src/: irc_client.c, irc_net.h, irc_server.c: Added a flag so that if the user uses the /MOTD we don't squelch the reply from them. We still squelch any other MOTD that comes from the server though. 2000-08-30 10:51 Scott James Remnant * src/irc_client.c: Was using conn_class at a pre-authentication point without actually checking the client was active. 2000-08-30 10:48 Scott James Remnant * src/: dircproxy.h, irc_net.c, irc_net.h, main.c: We've only got 1 global variable left now, the list of connection classes. The rest are all static to whatever .c file uses it. At the same time added the defaults for motd_* to dircproxy.h 2000-08-30 10:42 Scott James Remnant * src/Makefile.am: Added logo.h to the compilation 2000-08-30 10:41 Scott James Remnant * conf/dircproxyrc, src/cfgfile.c, src/irc_client.c, src/irc_net.h, src/logo.h: Made the message of the day stats optional, and at the same time added some code to display a l33t "dircproxy" logo if they want. 2000-08-29 11:12 Scott James Remnant * src/: irc_client.c, irc_log.c, irc_log.h, irc_net.c, irc_net.h, irc_server.c: New log code is in place, and modified all the other bits of code to use the new log code. Also a few modifications to use local_address and away_message properly. 2000-08-29 11:10 Scott James Remnant * conf/dircproxyrc, src/cfgfile.c, src/dircproxy.h, src/main.c: Rewrote the log file a bit, and changed the way cfgfile.c works a bit. Made local_address and away_message global options, and added in all the new log-related options. Finally got rid of log_autorecall global variable at the same time. Also by using error() instead of printing directly to standard out, may have removed the need for the progname global. 2000-08-29 11:04 Scott James Remnant * TODO: Updated the todo file 2000-08-29 11:03 Scott James Remnant * RELEASING: Modified to take into account features list and things 2000-08-29 10:45 Scott James Remnant * TODO, src/dircproxy.h, src/irc_client.c, src/irc_net.c, src/irc_net.h, src/main.c: Added code to reload configuration file on a HUP. Does pretty well everything including kicking off users who's passwords have changed, changing the listen port etc. Only thing it doesn't do is move any open log files, but thats an icky thing to do anyway imho. 2000-08-29 10:42 Scott James Remnant * conf/dircproxyrc, src/cfgfile.c, src/dircproxy.h, src/irc_client.c, src/irc_net.c, src/irc_net.h: Added new drop_modes configuration option to drop user modes on detach. 2000-08-29 10:42 Scott James Remnant * TODO: Added a new drop_modes config file option for security and niceness. 2000-08-29 10:37 Scott James Remnant * conf/dircproxyrc: Added a note about passwords being encrypted 2000-08-29 10:34 Scott James Remnant * TODO, conf/dircproxyrc, src/cfgfile.c, src/dircproxy.h, src/irc_client.c, src/irc_net.h: Added code and configuration option to choose between disconnecting an existing user or denying an attempt connect. At the same time added a new boolean configuration type that can be yes/true/y/t/1/no/false/n/f/0 and sets an int to 1 or 0 2000-08-25 10:52 Scott James Remnant * RELEASING: Added instruction to copy to ftp 2000-08-25 10:05 Scott James Remnant * RELEASING: Added note about running build-site.pl to update the website 2000-08-25 09:57 Scott James Remnant * TODO: Ooh, TODO file is getting smaller now 2000-08-25 09:56 Scott James Remnant * conf/dircproxyrc: Updated the configuration file to fit the new config stuff 2000-08-25 09:56 Scott James Remnant * src/main.c: Use PACKAGE ('dircproxy') not progname ('../dircproxy-binary') for syslog 2000-08-25 09:54 Scott James Remnant * src/main.c: We must use syslog as soon as possible with inetd 2000-08-25 09:50 Scott James Remnant * src/irc_server.c: Actually check a channel existed before announcing we couldn't rejoin. I think that a re-use of a "bad channel" numeric is causing the "Cannot rejoin +iw" bug, but even if its not its a good place to start. 2000-08-25 09:49 Scott James Remnant * src/irc_server.c: Added the code to seperate the server password from the server string, and send it to the server when we connect. 2000-08-25 09:47 Scott James Remnant * src/irc_net.c: Use a static function to make a listening port, avoids duplication of that rather specialist code. This is called by both ircnet_listen and ircnet_dedicate() and only binds if a local_addr is given. 2000-08-25 09:46 Scott James Remnant * src/main.c: Changed the start order to make it a little more realistic 2000-08-25 09:43 Scott James Remnant * src/main.c: Changed the config file order to alphabetical 2000-08-25 09:42 Scott James Remnant * src/main.c: Argh! Bloody patch, I knew there was something up with it. 2000-08-25 09:38 Scott James Remnant * src/: dircproxy.h, irc_client.c, irc_log.c, irc_net.c, irc_server.c, main.c, sock.c, sprintf.c: Got rid of the DEBUG_SYSCALL_FAIL, DEBUG_SYSCALL_DOH macros and replaced them with a simple syscall_fail() function. Also added a debug() function to replace all those #ifdef DEBUG/printf things lying around. This meant adding a couple of headers to a few files too. 2000-08-25 09:26 Scott James Remnant * src/: irc_net.c, irc_net.h: Added a 'serverpassword' member to ircproxy 2000-08-25 09:20 Scott James Remnant * src/dns.c: Check port has a length. 'server irc.foo:' now means use default port, not 0. This is necessary so that '::' works (default port, but with password). 2000-08-25 09:19 Scott James Remnant * src/cfgfile.c: Adjusted the documentation for server, because thats gonna be able to have passwords in for the server 2000-08-25 09:15 Scott James Remnant * doc/dircproxy.1: Rearranged the man page so the options are in alphaspaghettical order. 2000-08-24 12:42 Scott James Remnant * .cvsignore: COPYING is in cvs ... don't ignore it. 2000-08-24 11:36 Scott James Remnant * COPYING: Physically adding the GNU GPL to the source, its automatically included by automake anyway, but I don't really want people downloading the CVS without a license, or people's own automake's applying a different license. Everything says its GPL anyway *but* this is just for safety and stuff. 2000-08-24 11:33 Scott James Remnant * configure.in: There's sufficient changes so far to warrant a new version jump, although not everything I want is in yet. CVS version now 0.7.0. 2000-08-24 11:32 Scott James Remnant * TODO: TODO changes. 2000-08-24 11:25 Scott James Remnant * src/: cfgfile.c, cfgfile.h, dircproxy.h, main.c: listen_port isn't a global variable anymore (yay!) This means the global variables have now been cut right down to essential state information (in_background, dedicated_proxy, progname) and the list of connection classes (*might* be able to get rid of this last one, with any luck) There's the log_autorecall one lagging still, but thats going with the new log code, so I'm not bothering about it right now. 2000-08-24 11:22 Scott James Remnant * src/irc_net.c: Adjusted the ircnet_listen() function so it doesn't close an existing listening socket until its absolutely sure that the new listening socket is working perfectly. This'll be handy for a HUP if they change the socket we're listening on. 2000-08-24 11:10 Scott James Remnant * src/: cfgfile.c, dircproxy.h, irc_net.h, irc_server.c, main.c: Nearly all options in a config file (except listen_port) can be listed in a connection { } now, providing even more customisability per connection class. The ones in the body *above it* are used as defaults (below serve as defaults for any further connection classes). This means that all the globals have gone, and are now just members of struct ircconnclass. 2000-08-24 11:08 Scott James Remnant * src/irc_net.c: Call sock_close() instead of close() just in case. Also ensure we close sockets when freeing a proxy (like when SIGTERM or SIGINT is sent). Due to changes in config file, look for all variables under conn_class now (except listen_port), and don't bother with checking awaymessage isn't -1. 2000-08-24 09:17 Scott James Remnant * doc/dircproxy.1: Made the man page even more spiffy, just gotta document the configuraton file options (which are changing soon anyway!). 2000-08-24 09:15 Scott James Remnant * src/sock.c: Fixed a memory leak if a send() failed to the server. 2000-08-23 14:30 Scott James Remnant * src/main.c: Only do mem_report stuff if DEBUG_MEMORY is defined, although this is generally defined with DEBUG it *might* not be ... 2000-08-23 14:13 Scott James Remnant * src/Makefile.am: dircproxy binary is now installed in 'bin' 2000-08-23 13:38 Scott James Remnant * doc/dircproxy.1: Neatened the options and added the homepage 2000-08-23 13:34 Scott James Remnant * doc/dircproxy.1: Made the man page a .1 2000-08-23 13:34 Scott James Remnant * doc/: Makefile.am, dircproxy.1, dircproxy.8: Just had a bit of a decision change. dircproxy is now installed under "bin" not "sbin", this means the man page is a .1 as well. 2000-08-23 13:30 Scott James Remnant * doc/: Makefile.am, dircproxy.1, dircproxy.8: As dircproxy gets installed in sbin it should be an (8) man page. 2000-08-23 13:25 Scott James Remnant * Makefile.am, configure.in, doc/.cvsignore, doc/Makefile.am, doc/dircproxy.1: I figured out how to do it finally and wrote a quick man page for dircproxy. Its not complete, but is pretty good by man page standards. 2000-08-23 11:48 Scott James Remnant * src/irc_client.c: Changed the password code to make it compile without warnings, actually #ifdef'ing out the "if" statement now instead of magic with pointers. 2000-08-23 11:47 Scott James Remnant * src/: irc_client.c, irc_client.h, irc_net.c, irc_net.h: Moved the dedicated_proxy code itself out of irc_client, and into irc_net. Added the function to actually dedicate the proxy to one particular proxy session, and also added function to announce if we're not listening for connections. 2000-08-23 11:43 Scott James Remnant * src/: dircproxy.h, irc_net.c, irc_net.h, main.c: Moved the definition of dedicated_proxy from main to irc_net, as its a bit more suitable there. Also made it a simple boolean, not a port, because code in irc_net can check the listen_sock itself. 2000-08-23 11:39 Scott James Remnant * configure.in: Added check for crypt() function in default library and in -lcrypt too. 2000-08-23 11:38 Scott James Remnant * README: Spiffy new readme file 2000-08-23 11:38 Scott James Remnant * TODO: More stuff todo 2000-08-22 17:09 Scott James Remnant * TODO: More TODO 2000-08-22 16:37 Scott James Remnant * TODO: More stuff to do *sigh* 2000-08-22 13:08 Scott James Remnant * TODO, src/irc_client.c, src/irc_client.h, src/main.c: Put in the code to announce on attach if we're a dedicated proxy. 2000-08-22 12:55 Scott James Remnant * src/main.c: Running under inetd means we're backgrounded 2000-08-22 12:54 Scott James Remnant * RFC1459, RFC2810, RFC2811, RFC2812, RFC2813: Added the RFCs to CVS so that they are in the developer source, comes in handy for me. 2000-08-22 12:46 Scott James Remnant * src/: dircproxy.h, main.c: New "dedicated_proxy" variable. Set this to be a port number other than 0 if we're a listening daemon on a non-standard port that only has one connection class. (For those people running from inetd or under the planned "user" directive) 2000-08-21 14:54 Scott James Remnant * src/main.c: Added variable to say whether we're in the background or not 2000-08-21 14:54 Scott James Remnant * src/irc_server.c: Moved the "join hook" stuff so its activated by a 004, and not by the end of a motd. (Mainly so /motd doesn't trigger it :o) 2000-08-21 14:53 Scott James Remnant * src/irc_client.c: Passwords in the config file are now encrypted using crypt(), so use that to compare passwords. 2000-08-21 14:53 Scott James Remnant * src/: dircproxy.h, irc_prot.h: Moved the OLD_RFC1459_PARAM_SPACE definition to dircproxy.h to keep it with the rest of the config stuff. Added a new config directive which says to use encrypted passwords, so people can undef it if they want smaff to kill them. 2000-08-21 14:38 Scott James Remnant * conf/dircproxyrc: Fixed a documentation typo 2000-08-21 14:38 Scott James Remnant * TODO: updated todo file 2000-08-21 14:37 Scott James Remnant * PROTOCOL: Bit of a rewrite of this to make it nicer 2000-08-21 14:36 Scott James Remnant * NEWS: Added copyright 2000-08-21 14:34 Scott James Remnant * AUTHORS, INSTALL: Spell checked and fmt'd 2000-08-18 09:20 Scott James Remnant * .cvsignore, INSTALL: Added new custom INSTALLation documentation, instead of the default autoconf documentation. Removed INSTALL from .cvsignore so we could commit it :o) 2000-08-18 09:20 Scott James Remnant * AUTHORS: Doing a bit of a documentation re-work, so changed the AUTHORS file. 2000-08-17 16:52 Scott James Remnant * AUTHORS, AUTHORS.map: Removed Stephen as an active developer, still kept the credit for work on documentation. 2000-08-17 15:19 Scott James Remnant * conf/dircproxyrc: Realised that the listen_port config file directive has never been in the config file, despite the fact its available. Added it, so people don't have to edit dircproxy.h to change the listening port (not that they did anyway) 2000-08-17 15:03 Scott James Remnant * src/dircproxy.h: Header file documentation was a bit wrong 2000-08-16 16:12 Scott James Remnant * TODO: Amended the TODO list 2000-08-16 15:41 Scott James Remnant * src/dircproxy.h: Changed filename of system dircproxy config file to dircproxyrc from dircproxy.conf 2000-08-16 15:40 Scott James Remnant * conf/: Makefile.am, dircproxy.conf, dircproxyrc: Changed the name of the default configuration file to dircproxyrc, this will be the name of the file wherever it goes (to avoid confusion) 2000-06-28 12:41 Scott James Remnant * src/irc_log.c: [ Bug #108464 ] The character replacement was replacing : with :, when it should have been replacing / with :. Oops. 2000-06-26 16:34 Scott James Remnant * configure.in: CVS version now 0.6.3 2000-06-26 16:24 Scott James Remnant * ChangeLog, NEWS: Version 0.6.2 released. 2000-06-26 16:21 Scott James Remnant * conf/: Makefile.am, dircproxy.conf, dircproxyrc.example: Adjusted these files so they reflect the way things now are. this file goes in share and isn't automatically installed. 2000-06-20 13:41 Scott James Remnant * src/main.c: Missed a space in the help text. 2000-06-20 13:40 Scott James Remnant * src/main.c: Fixed the --help which was wrong 2000-06-20 13:34 Scott James Remnant * README: Added Debian to the list too 2000-05-29 12:05 Scott James Remnant * AUTHORS, AUTHORS.map: Added Stephen Cope to the AUTHORS files, credited for documenting this thing. 2000-05-27 18:17 Scott James Remnant * README: Played with the VA compile farm, and added all the other architectures it offers to this list as its compiled on them all. 2000-05-27 18:02 Scott James Remnant * README: Added ia64 to the list of platforms, since I got access to the ones at VA. 2000-05-25 22:23 Scott James Remnant * src/main.c: Changed the logic behind the config file loading a bit. Now if one isn't explicitly specified, it'll use a ~/.dircproxyrc. If that doesn't exist it will use /etc/dircproxy.conf. This removed the need for -G. Also fixed missing options on --config-file= and --port= and made -P/--port override the config file 2000-05-25 22:20 Scott James Remnant * src/cfgfile.c: Removed fopen() error message, because we don't want to know! 2000-05-25 18:15 Scott James Remnant * src/irc_server.c: Checking the wrong parameter of a 437... doh! 2000-05-25 14:17 Scott James Remnant * configure.in: CVS version now 0.6.2 2000-05-25 14:07 Scott James Remnant * ChangeLog, NEWS: Version 0.6.1 released. 2000-05-25 14:00 Scott James Remnant * src/cfgfile.c: Heh who'd have thought an extra semi-colon could cause a nasty core dump. 2000-05-25 13:59 Scott James Remnant * src/: irc_client.c, memdebug.c: MIN() seems to be defined all over the place on different platforms. Just define it here, its not hard. 2000-05-25 13:58 Scott James Remnant * README: Added Solaris 2.7 to the platforms list seeing as I have an account on one now to test this on. 2000-05-24 22:21 Scott James Remnant * src/cfgfile.c: Argh! > didn't do what I expected here. This is one of those nasty "post release" bugs that causes the thing to core dump 2000-05-24 22:19 Scott James Remnant * README: Added FreeBSD 3.4 to this, because I have it running on that too 2000-05-24 22:04 Scott James Remnant * configure.in: CVS version now 0.6.1 2000-05-24 21:46 Scott James Remnant * ChangeLog, NEWS: Version 0.6.0 released. 2000-05-24 21:29 Scott James Remnant * conf/dircproxy.conf, conf/dircproxyrc.example, src/dircproxy.h: Changed the default rejoin to 15 seconds 2000-05-24 21:29 Scott James Remnant * src/main.c: Oops, ignored the listen_port config variable 2000-05-24 21:26 Scott James Remnant * TODO: Updated the todo 2000-05-24 21:21 Scott James Remnant * src/: irc_client.c, irc_net.c, irc_net.h: Added code so that an inetd socket doesn't linger 2000-05-24 21:08 Scott James Remnant * TODO: Updated the TODO file 2000-05-24 21:06 Scott James Remnant * src/main.c: Close cleanly on a ^C 2000-05-24 21:03 Scott James Remnant * src/irc_log.c: Use 'dircproxy' as the source of notices 2000-05-24 21:02 Scott James Remnant * src/irc_client.c: I use notice to notify of nasty system things, so I might as well make it come from dircproxy itself. 2000-05-24 20:58 Scott James Remnant * src/irc_server.c: Oops, msg.cmd is a string not an integer 2000-05-24 20:58 Scott James Remnant * src/irc_client.c: Neatened the motd output 2000-05-24 20:54 Scott James Remnant * src/cfgfile.c: Fixed it so it doesn't add the server list backwards 2000-05-24 20:53 Scott James Remnant * src/irc_net.c: Fixed the bug where you are rejoined to channels in the opposite order to that which you joined them 2000-05-24 20:50 Scott James Remnant * src/irc_client.c: Fixed the output so it doesn't keep repeating itself 2000-05-24 20:48 Scott James Remnant * src/irc_net.c: Bit of a bug, forgot to increment l, so if you got kicked the last channel you joined, it kinda forgot about the rest (oops) 2000-05-24 20:48 Scott James Remnant * src/irc_log.c: Whoa, scary, I wasn't freeing any log memory - talk about memleak! sheesh! 2000-05-24 20:47 Scott James Remnant * src/memdebug.c: Copied across the neatening from maestro - specifically this adds a little bit of code to show what is stored in the memory still allocated 2000-05-24 20:31 Scott James Remnant * src/irc_server.c: Fixed a couple of typo-bugs 2000-05-24 20:30 Scott James Remnant * src/irc_log.h: Removed dead function definition 2000-05-24 20:29 Scott James Remnant * src/irc_server.c: Added code for non-recoverable JOIN errors 2000-05-24 20:25 Scott James Remnant * src/irc_server.c: Removed the auto-rejoin code (its in irc_net.c now) Made a special case for the 437 numeric, because it can be either nickname or channel related. Added code so that while a client is detached, we attempt to rejoin channels if its full/invite only/banned/juped Also on join, we can reactive a channel, and then spool the log back to the client (in case of kick). 2000-05-24 20:22 Scott James Remnant * src/irc_client.c: Make log directory on successful first auth now - much better place to do it. Also make the misclog when we loose the client. Added code to spool stats about sizes of log files and channels user was on in the message of the day 2000-05-24 20:20 Scott James Remnant * src/irc_net.c: Moved the code to rejoin channels automatically to here. Moved the misclog code about, this log only gets created when the user disconnects now and then is removed when they connect. 2000-05-24 20:18 Scott James Remnant * src/irc_net.h: New 'inactive' variable for channels. This is set to 1 when we are removed from the channel while a client isn't connected. All the time this is one we attempt to rejoin the channel every few seconds until the join is successfull or the client comes back. 2000-05-24 20:17 Scott James Remnant * src/irc_log.c: When closing a log, make sure we set 'open' to 0 2000-05-24 19:11 Scott James Remnant * src/sprintf.c: Need to have some memory allocated to avoid buffer underruns, also need to null terminate after strncpy() 2000-05-24 19:05 Scott James Remnant * src/sprintf.c: Fixed a few bugs 2000-05-24 19:02 Scott James Remnant * src/sprintf.c: Added in an (almost) complete implementation of vsprintf() 2000-05-24 19:01 Scott James Remnant * configure.in: When in debug mode, don't even detect vsnprintf(), use our own implementation of vsprintf() 2000-05-24 18:30 Scott James Remnant * configure.in: [ Bug #106153 ] compiler error, partial make fix Added check to see whether socket() is in -lsocket and whether gethostbyname() is in -lnsl 2000-05-24 18:18 Scott James Remnant * README: There is a config file now :o) 2000-05-24 18:09 Scott James Remnant * TODO: Updated the TODO file with whats left to do 2000-05-24 18:05 Scott James Remnant * src/: irc_client.c, irc_log.c, irc_prot.c, irc_server.c, timers.c: Removed a lot of the printf() debug code, that which I still want to see I've placed inside #ifdef DEBUG stuff 2000-05-24 17:57 Scott James Remnant * src/: irc_client.c, irc_net.h, irc_server.c: Took out all the hacky defines and replaced them with the nice sexy config file variables 2000-05-24 17:52 Scott James Remnant * src/: irc_net.c, irc_net.h: Added new function to clean up a connection class structure, and made expunge clean them up too 2000-05-24 17:45 Scott James Remnant * src/main.c: Whoohoo, lets read some config file baby! 2000-05-24 17:42 Scott James Remnant * src/main.c: Changed the command line options a bit, especially added checks whether to use the global config file or not, and alternate local config file. I've decided not to do all the -p/-s stuff because it'll show up in a 'ps' list which isn't a good idea! 2000-05-24 17:39 Scott James Remnant * src/: dircproxy.h, main.c: Added the global variables and initialise them to the values in dircproxy.h Removed those horrid TODO_CFG things finally 2000-05-24 17:34 Scott James Remnant * src/main.c: Using an ALARM single to stop the main loop was pretty pointless, might as well just use the TERM signal which will let dircproxy clean itself up if its 'kill'd 2000-05-24 17:31 Scott James Remnant * src/dircproxy.h: Fixed a mistake in the comments 2000-05-24 17:30 Scott James Remnant * src/: Makefile.am, dircproxy.h: Added some defines to set the name and locations of the configuration files 2000-05-24 17:28 Scott James Remnant * src/Makefile.am: Added the new cfgfile.c and .h files to the Makefile 2000-05-24 17:23 Scott James Remnant * configure.in: Changing CVS version to 0.6.0 seeing as thats the version I said the config file code would be in 2000-05-24 17:22 Scott James Remnant * Makefile.am, configure.in: Added the new conf directory to Makefile.am and configure.in 2000-05-24 17:18 Scott James Remnant * src/: cfgfile.c, cfgfile.h: Wrote the code to read in a configuration file 2000-05-24 17:16 Scott James Remnant * conf/: .cvsignore, Makefile.am, dircproxy.conf, dircproxyrc.example: Written the default configuration files, and everything. So adding them to CVS :o) 2000-05-24 12:38 Scott James Remnant * TODO: More stuff todo, gonna work on a lot of this today 2000-05-14 20:56 Scott James Remnant * TODO: Updated the TODO file based on user-feedback and my own grudges 2000-05-14 20:55 Scott James Remnant * README: Added a quick meme that there is no config file at the moment ... Also fixed the bugs url so its not https 2000-05-13 17:05 Scott James Remnant * AUTHORS.map, RELEASING: Added a file detailing the steps to do a new release, to make sure I do it right. Also added the AUTHORS.map file cvs2cl.pl uses. 2000-05-13 16:20 Scott James Remnant * configure.in: CVS version becomes 0.5.5 (although potentially might be 0.6 if no more bugs appear and I can work on the config file). 2000-05-13 16:14 Scott James Remnant * ChangeLog, configure.in: Version 0.5.4 released. 2000-05-13 16:11 Scott James Remnant * src/main.c: Logic on the -D option was wrong, should set no_daemon to 1. 2000-05-13 16:05 Scott James Remnant * src/match.c: Requires sprintf.c because it uses strdup() 2000-05-13 16:04 Scott James Remnant * configure.in, src/sprintf.c: If --enable-debug is set, we actually don't want to check for strdup(), that way we are only checking for vsnprintf() and the code at the top of sprintf.c isn't required. (This gets rid of all those pesky "Free of illegal block" messages). 2000-05-13 15:47 Scott James Remnant * ChangeLog, NEWS, TODO: Version 0.5.3 released. 2000-05-13 05:25 Scott James Remnant * configure.in, src/dns.c, src/irc_client.c, src/irc_log.c, src/irc_net.c, src/irc_prot.c, src/irc_server.c, src/irc_string.c, src/match.c, src/sprintf.c, src/sprintf.h, src/timers.c: Using strdup() isn't entirely portably apparently, and also it pisses off memdebug.c something chronic. Check for it in configure.in, and use it as x_strdup() everwhere. If it does exist, x_strdup() is just a wrapper for strdup(), if it doesn't exist, or DEBUG_MEMORY is defined, then it does its own malloc/strcpy. 2000-05-13 05:12 Scott James Remnant * src/: dircproxy.h, irc_client.c, irc_prot.c, irc_server.c, main.c: Made some of the TODO_CFG macros into the proper macros they will be as the defaults for the config file. Gave them documentation too. Also added two FALLBACK defines for those things not in the config file that I/users might want to change 2000-05-13 04:43 Scott James Remnant * src/.cvsignore: Added the name of the executable to the ignore file 2000-05-13 04:43 Scott James Remnant * src/irc_log.c: fchmod() doesn't take a FILE *, grrr. Changed to just chmod() the filename, seeing as we have that anyway 2000-05-13 04:41 Scott James Remnant * src/: dns.c, irc_client.c, irc_log.c, irc_net.c, irc_prot.c, irc_server.c, irc_string.c, match.c, timers.c: Decided to embrace the fruit that is strdup() and in the process cleaned up a lot of code (yay!) 2000-05-13 04:23 Scott James Remnant * src/irc_log.c: Heh, anyone on the machine could not only see what channels you were on, not only read everything on those channels, they could also read your private messages. This isn't good. Made the dir be created 0700 and files 0600 now. 2000-05-13 04:17 Scott James Remnant * src/irc_client.c: Set bind to 0 after strdup(), heh 2000-05-13 04:13 Scott James Remnant * src/irc_client.c: Fixed a missing bracket problem that crept in and prevented compilation... doh! damned "TODO" code 2000-05-13 04:07 Scott James Remnant * src/sock.c: Made the calls to set/unset non blocking a bit more friendly. Also we now block when doing a send() otherwise we loose data (doh!) 2000-05-13 02:38 Scott James Remnant * src/dircproxy.h: PACKAGE and VERSION will always be defined in config.h unless something has really gone wrong, and that'll need fixing anyway. Define them in the elsif to save code and make things look neeter. 2000-05-13 02:34 Scott James Remnant * README, src/main.c: Changed the homepage and bug reporting locations now we're all fully sourceforge'd up 2000-05-13 02:28 Scott James Remnant * configure.in: CVS version is 0.5.3 2000-05-13 02:23 Scott James Remnant * .cvsignore, FILES.autoconf, src/.cvsignore: Removed the FILES.autoconf file, and replaced it with a .cvsignore in each directory. This means that 'cvs update' etc will ignore any files generated by auto{conf,make}. This is a good-thing. Means you can run autogen.sh on your checked out version without it getting in the way of CVS. 2000-05-13 02:13 Scott James Remnant * AUTHORS, ChangeLog, FILES.autoconf, Makefile.am, NEWS, PROTOCOL, README, TODO, acconfig.h, autogen.sh, README.inetd, configure.in, src/Makefile.am, src/dircproxy.h, src/dns.c, src/dns.h, src/sock.c, src/irc_prot.c, src/main.c, src/match.c, src/match.h, src/sock.h, src/sprintf.c, src/sprintf.h, src/irc_string.c, src/stringex.h, src/irc_net.c, src/memdebug.h, src/irc_prot.h, src/irc_string.h, src/stringex.c, src/irc_log.c, src/irc_log.h, src/irc_net.h, src/irc_client.c, src/irc_client.h, src/irc_server.h, src/memdebug.c, src/irc_server.c, src/timers.c, src/timers.h, src/getopt.c, src/getopt.h, src/getopt1.c: Initial revision