CHANGES are always downwards compatible to earlier versions. ---------------------------------------------------------------------- Version 2.2.2: date boog/enhancement ---------------------------------------------------------------------- 04-14-01 - removed a bug in tokening networks found by {alex} - removed all // - comments for old gcc-compilers suggested by dor - added checking for sys/time.h and time.h. did not compile on newer glibc-hosts. found by different users. Version 2.2.2BETA: date boog/enhancement ---------------------------------------------------------------------- 03-24-01 - removed internal references to (v)snprintf,and referenced it to ap_(v)snprintf in all cases. removed parameters %p and %n from the list of usable formats. enhances security a bit. - usage of getipnodebyname instead of gethostbyname2 in the case of SunOS-IPV6-Extensions suggested by eldoc patch by duckel - removed a sigsegv in resolve (null-pointer) - added command AUTOGETDCC only use this command if you are sure that you would like psybnc to get all files sent. suggested by steve_ (with default setting to OFF) - removed the annoying ACOLLIDE-Feature suggested by those, who where annoyed by nick-changes - fixed a bug in network-modes, where the network-name was put at the end of a mode-line found by real-riot - fixed a bug in writing the pid-file, changed from ending \r\n to \n. suggested by different users - set AUTOREJOIN by default to 0 (=off) if the bouncer should rejoin channels on kick/kill, set this to 1. (/AUTOREJOIN 1) suggested by those, who where annoyed by rejoining clients. - fixed some bugs in menuconfig found by different users - removed some bugs in the english-phrases (confifuration, too much input..) suggested by dor Version 2.2.1: date boog/enhancement ---------------------------------------------------------------------- 10-28-00 - removed MIBs snprintf and replaced it to apaches snprintf. should compile on Digital Unix/solaris older as well nqow suggested by illusi0n 10-27-00 - fixed the channelsaving, so that channels would be saved on join found by wudoo - fixed DCC timout handling running into a null pointer found by AndrewX - fixed a bug in BHELP on aliases found by AndrewX - fixed a bug in trafficlogging found by different users Version 2.2.1(beta): date boog/enhancement ---------------------------------------------------------------------- 10-21-00 - fixed compilation of convconf.c, which wont compile on systems without snprintf - added checking, if libbind is needed found by bats - added command AUTOREJOIN to disable rejoining channels after being kicked requested by different users - dcc handling wrote chat and send requests to networks to the main network - found by CAJOLiNE 10-14-00 - fixed whois on network, added networktokens found by arakis - fixed invite on network, added networktoken found by arakis - fixed menuconfig-compile-bug found by spy - network-mode wasnt right parsed found by arakis - added DCCENABLE, to allow to set on the bouncer to allow DCCs answered by the bouncer. Default set to 1 (=enabled). suggested by arakis - added timeout period to wingate and socks-connect (3 seconds) before sending USER and NICK. suggested by arakis - fixed some bugs in scripting found by kode54 - added IPs only to hostallows suggested by zycx 10-02-00 - Added Pn Parameters to scripting, which divides the ircinput to different Parameters suggested by CAJOLiNE 10-02-00 - did not compile on solaris. Thanks to Phil Tyler for support :) 10-02-00 - on *BSD, the DCCANSWER command did not work. This happened because of a different handling of numeric resolves under BSD. found by CAJOLiNE 10-02-00 - If crypting was disabled, the bouncer could not compile because of variables still needed but not defined. found by ZZyZZ 10-02-00 - If a link in intnet was removed, all clients quitted because of a wrong disconnecting-order in the removelink-handling. found by me 10-02-00 - crash on bogus DCC SEND and DCC CHAT requests this bug was already fixed in a "fast-patch", called psyBNC2.2p1. found by cras 10-02-00 - if userdir wasnt writeable, the bouncer crashed. found by HERZ 10-02-00 - If linkage was turned off, the bouncer could not compile because it missed the "cmdrelink"-routine. 10-02-00 - In scripting, the content mask-compare did not work. found by AndrewB 10-02-00 - .ispoof was create rw User only, so a nobody-oidentd could not read it. 10-02-00 - the leavequit-command triggered the antiidle-flag. 10-02-00 - cleaning up structure 10-02-00 - A bug in names and networks set the userflag behind the network token. found by jerky 10-02-00 - Server notices and messages dont get logged anymore suggested by Tha-Mob Version 2.2: date boog/enhancement ---------------------------------------------------------------------- 08-13-00 - Changed the mode handling for scripting, so every single mode will be handed over. - Added timeouts to resolves 08-05-00 - Added SWITCHNET to switch from the main to another network. - Added LEAVEQUIT to leave all channels when signing off - Added LEAVEMSG $QUIT, if set to $QUIT, the leavemsg will be posted from the text to the quitmessage - made a cronny script 07-20-00 - Added scripting (cgi-stylish) See the readme and the litte example script in scripts/example. - Added DCC Chat & Files Allows you to dcc chat directly from the bouncer and to receive/send files from and to the shell. DCCCHATS are to be enabled with #define DCCCHAT and DCC File send/receive with #define DCCFILES - IPv6 Support psyBNC allows from version 2.2 the support of IPv6 in every mean. This includes listening and connecting to IPv6 hosts. Also implemented is DCC CHAT6 and DCC SEND6, but this is still experimental, and only hell knows, if it will be solved the way psybnc uses it. - Support of oIdentd added psyBNC allows the method of ident spoofing oIdentd supports. Use #define OIDENTD in the config.h File to enable it. - Moved all single INI-Files to one config file called psybnc.conf by default. - Multiple Listeners psyBNC can listen on as many ips and Ports as which are defined in the psybnc.conf file. This also allows to listen on an intranet ip and not as it was in 2.1 only on ALL interfaces. - Moved channels/names to internal This allows names and channelspecific informations much faster to be sent to the user, and will not create traffic on the server when the user rejoins psyBNC. - Reorganized string routines, reorganized socket string builds. - Invented an internal ircd into psybnc, which can be adressed by using int~ as token. This will be shared thruout the linked network of psybnc, and allows all modes including kicks/bans/op/voice. This was done to replace the old &partyline, which still can be used by setting the compiling option. The internal network can be enabled by entering #define INTNET and the old partyline channel by #define PARTYCHANNEL to the config.h File. - Flood protection The serverside socket will wait for a server reply before sending additional strings to the server. This allows sending many lines of text without getting flooded. The maximum same total number of bytes is set to 700. - Singleusermode / Multiusermode If Multiusermode is disabled, the login has not to fit to the added user, only the password is being checked. Also, the user may not add any other users than himself. Multiusermode gets defined with #define MULTIUSER and singleusermode will be active, when MULTIUSER is not defined. - Anonymous Mode This allows to open the proxy for anonymous users, so every login would be successfull. Will be enabled with #define ANONYMOUS. - Dynamic Mode This will kill the server connection after a user signed off from the bouncer. Will be enabled with #define DYNAMIC - Provider Configuration The shellprovider can define a global psyBNC config.h by putting this into /psybnc/config.h. On Compilation that config will be used. - Bugfixes in Networking The user did not see modes or nickchanges correctly on secondary networks. - The possibility to switch networks off by removing the NETWORK define from the config.h, the user cannot create any new Networks. - Bugfixes in Parsing Some Bugs in Parsing of IRC-Strings could crash the bouncer. This has been solved with 2.2. - Wrote a menuconfiguration with GUI for psyBNC. Just use make menuconfig to start it. - Deleted the os specific makefiles and replaced them with a selfdetecting configuration tool, which will sense the abilities of the system. date boog/enhancement ---------------------------------------------------------------------- (last changes for 2.1) 06-02-00 - Altavista decided to change their website at, so i had to rebuild the translation part. 04-19-00 - added password for servers see the changed syntax in /quote bhelp addserver requested by plato - added allow to switch logging off just add #define NOLOG into the config.h before compiling requested by [DRACON] 01-17-00 - another Bug in p_idea.c fixed found by XanTheR - partyline channel joining fixed found by bla - erasemainlog crash fixed found by plato - added spamcheck / "you have notes waiting" filter for private logging i was annoyed by this :) - whois bug fixed, if a whois on another nick was set before reconnect, his channels were shown as to be on. found by herz - talk encryption also encrypted DCC requests and other none-Message PRIVMSG transmissions. 2.1.1 will handle this messages correctly. Warning: The Change for ACTION is NOT downwards compatible. found by ace24 - a typo bug in ADDALLOW and DELALLOW to ADDALOW and DELALOW reported by different Users - relaying was disfunctional found by mac Version 2.1: date boog/enhancement ---------------------------------------------------------------------- 12-25-99 - crashed, when two partys got an encrypted talk established, and bogus data was sent using the IDEA prefix ([I]). found by gatecrash and by XanTheR - removed SIGDIE-action will now ignore any TERMINATE request. - bug fixed in linkage, crashed on uplink loss found by plato - did not compile on sunos-sparc (no static compiling) found by _enigma date boog/enhancement ---------------------------------------------------------------------- 11-29-99 - added connection and talk encryption see the readme or /bhelp ENCRYPT for further infos. requested by me - redevelopment of the connection handling this demon can really handle 500 connections w/o lag now :) requested by me - full channellogging see /bhelp PLAYTRAFFICLOG for more infos. requested by different users - added a "last on" field to /bwho requested by mac - redevelopment of the help function and creating help texts for any topic requested by those who dont understand everything :) - the partyline has been moved to a partychannel.. but dont try to join it on irc, it's not really existent :) the channel is &partyline by default, until you dont part it, see p_global.h if you want to change it. still downwards compatible. A user with old psybnc will still see $$ as partyline, also in a new psybnc network. you are automatically joined to it :) mentioned by me, accepted by all tcl members :) - sysmsg-command removed well, just part the partyline channel if you are annoyed :) consequence from doing a partychannel - hostallows included This allows you to set hosts which may connect the bouncer. see /bhelp ADDALLOW or /bhelp DELALLOW. requested by me. - translator included This allows you to translate queries in italian, german, french or portugese to english and vice versa. see /bhelp TRANSLATE for further infos. - setaway splitted into /setaway, /setawaynick and /setleavemsg. requested by bla. - changed the makefiles. please read the readme file. - added channel key support. you can set a key for channel joins. requested by XanTheR - added autoop features allows you to set users and their hostmasks to autoop. be sure not to use this feature extensivly. Autoop is extremeley insecure. requested by keule and others. - added external proxy support. For Usage of sock4, WinGates and Webproxys which allow the CONNECT request. requested by different Users. - made the 5000 lines of code modular. it was really time to do that. requested by wudoo (i hope you get it now *g*). Version 2.0.2: date boog/enhancement ---------------------------------------------------------------------- 08-16-99 - eggies newer than 1.3.2x needed to wait for input done before sending the user/password found by nomercy - allows you to switch off systemmessages in the partyline using /SYSMSG 0 and to turn it off using /SYSMSG 1 requested by multiple users - BitchX needs names messages after JOIN message of each channel. The bouncer will now send a fake answer and then send the real answer on names gotten from the server it should work now. requested by multiple users - Some clients (as like mIRC) retreive the local IP from the 001 Message the server responds. This is fixed, the motd will contain the users real ip now. found by multiple users. - When reconecting to the bounce, it randomly reasked for op sometimes. found by gatecrash Version 2.0.1: date boog/enhancement ---------------------------------------------------------------------- 07-29-99 - dead connections solved, when a client machine got offline without the bouncer noticing it found by gatecrash - on third /adddcc the bouncer got to a endless loop found by coke Version 2.0: date boog/enhancement ---------------------------------------------------------------------- 07-18-99 - when /relaylink was set to 0, the message from the bouncer answered with "relay enabled", and on setting to 1, with disabled. Just a wrong message *g* found by coke. 07-17-99 - usernames with 0-length did not appear on the BWHO list. found by me - added SETUSERNAME to set the username to a user defined string requested by denniz - changed the email of the systemmessages. requested by myself - automatically setting MODE +i-s nick on connect to prevent the filling of the logs with spam requested by myself 07-09-99 - fixed a bug which occurs on removing a nonexistent dcc session, which resulted in a deadlock and processor usage of up to 90 %. heavy one :) found by birdy 07-07-99 - fixed IAM broadcasting in bouncer linkage found by me - fixed linksaving only saving 4 digits ports found by dracon - fixed message multiposting on multiple clients found by plato - fixed wrong nick adressing found by me - fixed posting the partylines query to the current users partyline nick found by me 06-29-99 - Crypting of Passwords requested by SpWn - variable Memory - Management this improves the Performance on < 586 Processors. also the memory used is drastically reduced. requested by gatecrash and others - Multinetworking requested by myself idea by scut - Linking of Bouncers requested by myself - No Nick Change on Nick Loss found by Coke - fixing the Setaway-Query found by SpWn - Bot-DCC requested by myself Version 1.2: date boog/enhancement ---------------------------------------------------------------------- 06-19-99 - The Nick was changed until regained This Function was thought as anticollide due to the fact a nick is only lost in being a collide victim. Changed this to an option. Just use /quote acollide 0|1 to remove or set Nick cycling after loss. found by plato. - The Partyline query to $NICK was lost when the ircnick was changed compared to the login. This is fixed. found by plato and hotacid. - AskOp could flood the bouncer, when too much bots where added. This version always only asks one bot/bounce for op for every channel. found by dracon and julze. - changed the command /quote ADMIN to /quote MADMIN /admin is a standard irc command and therefore conflicts with the bounce command. found by myself. - changed server-Ping-reply to asked content Thats needed on spoof-checking irc-servers. found by myself. Version 1.1: date boog/enhancement ---------------------------------------------------------------------- 06-01-99 - finally created a makefile *g* 05-31-99 - maximum Users fixed.. some maxuser entrys still where constant :) found by myself 05-25-99 - fixed a bug in connecting from blocking sockets bugged transmission of data (some windoze sockets are blocking only) found by myself 05-24-99 - fixed a timeout bug in readsock(), which could lead to denial of service to the proxy - heavy one :) found by myself 05-23-99 - fixed PASSWORD bug on displaying the currentusers pass found by plato - added unset of away when reconnecting to the bouncer using setaway requested by dracon 05-21-99 - fixed timeouts on connects found by xanther - fixed a bug in deleting first added server, resulting in error message "no server added" found by dracon - fixed bjump, did not save actual channel stats found by sister_j - changed /password to let admins set passwords of users requested by dracon - added /setaway to set a leaving message that will be posted to the channels and set as away text when leaving the bouncer. based on a request by plato. - added nonblocking to build connections - added channel flags to all maskcommands - added a setaway function Version 1.0: date boog/enhancement ---------------------------------------------------------------------- 05-12-99 - fixed antiidle, rejoining and reasking for op on join - replaced autopong to a server ping for normal timing - added ./make.sunos, i hope it works :) ------------------------------------------------------------------------