/*
 * UnrealIRCd Changes File - (C) Carsten Munk 1999-2000 &
 *                               The UnrealIRCd Team
 * $Id: Changes,v 1.297 2000/04/22 19:31:42 stskeeps Exp $
 * 
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 1, or (at your option)
 * any later version.
 * 
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 *
*/

*** BUGS ***
* Potential problem with die/restart from 3.0(fix) ... peopl can not restart/kill servers even
  if they have the neseccery O:Lines -- can any one conferm ?, add RD?
* /map has a few little display problems (fixable? sts: no not the hide ulines, already fixed)
* You can make the server flood off opers if you clone with > MAXCLIENTS
  fix: make a unknown connection clone defense:P
* Autoconnects dont work
* [10:26] -irc2.tspre.org- *** Global -- from Irc.Pahang.Dhs.Org: AIEEE!!!
  Server Terminating: Segmention fault (buf: PONG :38D117F9)
   Unreal3.0-beta3 unrealircd.conf  :P
* /vhost, dccdeny recode
* Dynconf recode
* -ex-2.routing.md.us.exchat.org- *** Notice -- Aieeee!!! Server terminating: Segmention fault (buf:
  :Methos PRIVMSG #exchat :for the * flag)

*** Unreal3.1 *** (state: alpha)
- Moved REMOVE_ADVERTISE a little
- Fixed bug where you could /mode #test +L #test (link a channel to
  itself)
- Fixed a bug where a +L channel didn't have to be valid ex /mode #test
  +L blah would work, dangerous if 0 is used
- Fixed /map showing U:lines even if HIDE_ULINES was set oops :)
- Fixed a bug where opers couldn't walk through +l
- Fixed a bug where /mode #test +f *N:N was recognized the same as +f N:N
  (if *2:3 was set then /mode #chan +f 2:3 it wouldn't set, thought it was the same)
- Removed src/cio_init.c src/cio_main.c src/win32.c src/win32.rc as we don't
  use that anymore
- Added ircsprintf() (ircsprintf.c and ircsprintf.h)
- Converted to use ircsprintf
- Now using sprintf_irc from ircu, as %li would screw up the hybrid variant
- Some fdlist updates from bahamut
- Header change
- Some more Header change
- Added agent.c for IRCd Agents (remote control etc)
- Fixed up some make misalignments
- Fixed +I /names
- Removed TESTNET defines
- Added poll() engine from bahamut (hard!)
- Made /vhost send failed login's to +e
- Made /stats V/R/F use raw rather than NOTICE
- Fixed some poll() engine problems
- Some more problems with poll()
- Removed the \2's from the is a Coder msg, whywere they there, no one
  knows (codemastr) Because i was the only one using it =P (Stskeeps)
- Fixed /names problem..
- Made /mode <nick> use get_mode_str() to list the modes
- Made /lusers info be pre-calculated :) Saves hell of a lot CPU time
- Made /stats z/Z oper only
- Fixed SJOIN bug only totally fixed when all servers upgraded
- Moving old 3.0 stuff to Changes.old
- Re-added README.ALPHA
- Fixed some more SJOIN bugs
- Fixed NICKv2 bugs with non NICKv2
- Fixed up /info, there will be a better layout for this
- Fixed up some poll() engine bugs (i hope)
- Start of telnet proxy scan code
- Took telnet proxy scan code out again =/ It really fux0red up
- Added networks/treklink.network
- Added options to /HTM, ON/OFF TO (what load do we auto start at) NOISY/QUIET (toggle whether HTM should
  announce when it starts)
- Fixed a little bug where /part didn't show the correct channel case
- Made unresolved host connections go faster, idea from PTLink IRCd v3.5.4 great job :)
- Removed support for & and + channels (i hope) and made m_message more
  handy and support for /notice +#channel, %#channel etc etc
- Topic fix?
- Incorperated the bahamut m_list and send_list, it's faster and smaller :P
- When /HTM is active /list is disabled to non-opers
- OperMOTD is now loaded into memory (faster, saves memory, and CPU)
- Added /rehash -omotd to rehash the OperMOTD
- Added unrealircd.conf option for SETUID and SETGID if ircd started as root.  And you can turn that off/on
   by defining/undefining BIG_SECURITY_HOLE in config.h
- Fixed small bug in ircd.c and dynconf.c (not using #ifndef BIG_SECURITY_HOLE)
- Removed & and + channels for sure..
- All MOTDs, RULES are read into memory (including T:lines)
- Added /rehash -bmotd (BotMOTD) /rehash -motd/-rules (MOTDs/RULES)
- Fixed memory leak in dynconf.c, allocated 2048 on each /rehash -dynconf
- Fixed _serious_ memory leak in cloak.c, abused 128 bytes every time
  someone went +x 
- Alphabeticalized making..
- flush_connections more better
- Fixed calls to check_registered*, more CPU spare:)
- Fixed a bug in /tsctl svstime
- Fixed a bug in the cached MOTDs
- Added support for remote /htm
- Even more tokensation
- Removed IRCII_KLUDGE
- Fixed /lusers wrong reply
- Removed V28PlusOnly define
- Fixed a bug in channel_modes()
- More and more and more tokenzation >:)
- Fixed a bug in m_user
- Removed have_ops() and is_deopped(), they weren't used
- Reorganized can_send() to make it faster
- More tokenzation >:)
- Fixed ircsprintf() %lu error when %lu == 0
- Added devel/ directory, put ideas/specifications in here
- Added devel/new.plines to describe new upcoming P:lines
- Added NO_IDENT_CHECKING in config.h
- Fixed bugs in get_version() and also made it a bit faster
- Fixed RPL_MYINFO problem with UnrealIRCd/32 version and ircII
  misunderstanding it, prob other clients too
- Updated msg.h hashtable to get most used commands more close
- Removed some unused defines in msg.h
- Removed dusers (not in use)
- m_user stuff
- Made use of : 's in between ircd.conf field working, using this format:
  A:"Test test:Moo":Moo:moo
- Fixed some /lusers miscalculations
- Added INET6 patch, now for making it work :P
- More INET6 patching (not working atm)
- INET6 compiles now, works? :P
- Fixed some WebTV stuff
- Made the m_message routine not do a user hash lookup if it starts with #
- Removed some fields in structures like aClient etc that was unused
- Removed Client->iown and the OWNLOGON code
- Removed Channel->blist
- Removed heaps of unused variables in functions
- Fixed THE G:line bug, missing parameter
- Hopefully fixed some calculation bugs
- +F bugfix
- In TKL a gline shows reason in quit message now
- Fixed the SVSMOTD OPERMOTD and BOTMOTD bug, suggest parantheses problem
- In K:Line it shows reason in quit message now, not sure about AKILL
- Experimental NOTE in register_user added
- Implemented hybrid scache.c, created by orabidoo and Dianora
- Fixed /connect scache problem, and actually fixed the OPERMOTD bug
- The hopefully last calculation bug..
- Made bans and exceptions actually sync *ducks*, done in old fashion MODE
  manner, better than making BS (bansync) or incorporating it in SJOIN
- Made /opermotd oper-only, bug reported by Bagge@ROXnet
- Made TOPICs be dynamically allocated - saves heaps memory
- Added hybrids/+cs'es /whowas system. Improved so it doesn't use static
  character arrays, and uses dynamically allocated strings instead 
- Added UMODE2 PROTOCTL and command, when a usermode change it uses :nick
  UMODE2 +-umodes. token = '|'
- Made CONNECTFAST default, will ensure faster connecting
- Updated /helpop to list more commands and new modes
- the 1-message-per-2-sec not applied to opers
- Topic fix with dynamic allocation
- 1-message-per-2-sec now 1-message-per-1.5-sec
- Removed TS fix notice
- Removed User %s tries to become server notice
- Made MAXCHANNELSPERUSER an unrealircd.conf option
- Changed unrealircd.conf version to 1.2
- Credit changes..
- Uses dgets() from hybrid now, should be a minor CPU fix
- Moved WebTV support, and +I disabling to an unrealircd.conf option
- Updated doc/conf.doc, removed references to DALnet, and fixed typos
- Moved doc/Elite.Changes to doc/History/Elite.Changes, away away away with
  that one
- Tokenized SQLINE
- Recoded dynconf, validates data too now
- Fixed a /list bug that crashed the server
- Fixed a minor bug in the new dynconf
- Fixed a bug in vhost.conf and dccdeny.conf where if the line was not valid it would crash, now it just
  ignores that line
- Added comment support to vhost.conf, dccdeny.conf, and chrestrict.conf (makes loading faster)
- Fixed one of those "code, what the fuck were you smoking" bugs in m_svsmode etc
  (what = MODE_DEL - eh?)
- Added AUTO_JOIN_CHANS to unrealircd.conf to force a user to join 1 or
  more channels on connect, read networks/unrealircd.conf for more info
- Added networks/axenet.network
- Possible change in the -1 operator bug
- /info changes
