bug  (it  works  now  :) - Optimize some sendto() things that are
used a lot - Add usermode +I (server hiding)
  - Fix /whois, /admin, /who, etc to not allow a user to discover
which
    server  a +I user is on - Don't let *MY* opers /kill U: lined
things (but pass on kills destined for them  already)  -  Chatops
don't  require you to be +gb (now, just +b) - Various typos fixed
- No longer complain if a user is already on a  +i  channel,  and
they  /join  it  - Use hash tables for very common res functions,
which were taking up
  as much as 80% of CPU time in a pooled server - add a  command,
/userip,  for  opers. Works just like /userhost.  - Allow /who +c
@#channel +#channel @+#channel for more refined /who  listings  -
Add  a  /who  flag  for opers, +/-t, clients who have been on for
more/less than <param> seconds - Don't let  opers  get  stuck  in
weird anti-flooding bugs (oper recvq lock bug) - When an oper de-
opers, they are returned to the appropriate client class -  Allow
opers  to  /who +l <class> for local clients (class = Y: class) -
Send optimizations for high-volume server  connections  -  Remove
fdlists  for  lists  of  clients and instead use linked lists for
things:
  - recvq clients, instead of searching through *all* clients
  - listing clients, ditto - Remove certain things which actually
caused poor server operation:
  - HTM - relax sending out when we have high incoming traffic.
    This actually causes a nasty bursty cycle.
  - busy clients
    This was taking up a great deal of CPU time to save CPU time.
Hmm.  - Rewrite the  entire  base  socket  engine;  now  supports
kqueue on freebsd.
  - Poll() and select() use persistant states, so these should be
twice as fast as well.
  - Stop remapping fds. What's the point?  - /stats w reports  fd
map  (don't use this on a large server! :) - /stats z is more in-
formative - Hide the source servers of numerics (mask  them  with
me.name)  -  Hide  /kill  sources  in quit messages (still in +s,
though) and in messages
  sent to killed client - Hide split sources in quit  messages  -
Add  a  LINKSCONTROL  command  which allows a services-controlled
/links list - Better server traffic accounting in /stats ?  (uses
a moving average instead of a plain average) - Fix a bug in which
connecting servers will always remove a key if the channel exists
(argh!)  - Correctly propogate cmode +O - Show more squelched in-
fo in /whois to opers - Be smarter about broken FD_SETSIZE imple-
mentations - Crash if we try to free something twice in the block
allocator, produces a useful coredump
  instead of confused opers and an unrelated crash  hours  later.
-  ability  to  lock  /lusers  output  via services for a dynamic
amount of time - Fix 'ghost channels' where I  create  a  channel
but  none  of the users in it exist to me - Allow /who +i ip/cidr
and /who +I (show IPs only) for opers - SAJOIN, like  SAMODE  for
joining channels. Joins through all modes, sends a globop.  - Lo-
for N seconds, intended to replace
  enforcers  in  services.   -  Make HTM work on outgoing traffic
(the part of HTM that limits sending lots of expensive
  things like /list) - Don't  complain  about  servers  relinking
that look 'juped'
  (don't  complain if the server that already exists is U: lined,
unless I actually have a
   .conf U: line for it!)  - Compile with GCC3!   -  Nicer  umode
separation, ie what used to come in as *** Notice -- comes in as:
  +d : *** Debug --
  +y : *** Spy --
  +c : *** Client -- - Channel join  throttling  (cmode  +j,  but
disabled for user changes by default to be compatible with
  pre-1.4.36), defaults to 8 network non-split joins in 4 seconds
before saying channel is  full.   -  Fix  the  DEBUGMODE  pattern
string exploit

Changes  for  1.4.35 - Source address support on /connect problem
fixed - Squelching added, umode +x or +X (+X is silent  squelch),
this
  prevents  the  user  from  doing  certain  online tasks such as
privmsg.
  Meant to be set by a U: lined server or client  using  SVSMODE.
-  Complete rewrite of the kline/akill/zline system. (s)zlines no
longer
  exist. K: lines set on IP addresses without  username  portions
(or *)
  are  treated  as  Z: lines used to be. CIDR banning is now sup-
ported
  in all K: line/akill bans (ie, 204.127.54.112/28).  - +F  user-
mode  bypasses  ircd's recvq throttling for opers - Improved han-
dling under high load situations - Ban munching bug introduced in
1.4.34  is  fixed - /rehash GC now works - lots of sendto_ops_lev
changed to sendto_realops_lev for speed - Fix a  bug  where  we'd
try to target limit messages by a server and
  write  to  locations  of  memory  that weren't ours :) - Fix O:
flags that just didn't work as advertised - Moved  rejection  no-
tices  to  umode  +j  (re_j_ection) - Moved KILL messages from U:
lined clients to umode +K (oper only) - Support  for  a  loadable
drone module, compile with --enable-dronemodule,
  ircd tries to load drone.so from DPATH on startup or on /rehash
drones,
  read src/drone.c to view the interface - /stats  t  shows  more
information  - Various code cleanup and readability fixes - Users
and opers will now recieve a different output  to  '/who  ?'.   -
When 'HELP_FORWARD_HS' is defined, non-opers /quote help requests
  will be forwarded to HelpServ.

Changes for 1.4.34 - Don't use FD_SETSIZE at all if  USE_POLL  is
defined  -  Fixed a server negotiation bug that could break apart
the network
  when autoconnects and user connects were done at the  same  in-

--  WARNING -- 1.4.34 may cause desynch in net joins if used on a
network with newer servers!  This is because  the  algorithm  for
determining  which  channel modes to keep when servers rejoin has
changed. You should upgrade your entire network  to  1.4.34.   --
WARNING --

Changes  for  1.4.33  - Only ops can invite on channels - Various
desync-causing memory-corrupting bugs fixed  -  Fixed  a  problem
with  perm  klines where they werent removing the user - Moved to
zlib 1.1.4, as 1.1.3 was vulnerable (but not directly in ircd)  -
Fixed  minor  SVSKILL  wrong  direction  issue.   - Fixed a wierd
desync issue with sqlined  channels  -  Fixed  /stats  l's  sendM
statistic - it wasnt working properly with crypt

Changes  for 1.4.32 - Throttling modified to be more friendly and
punish repeat offenders - Major  bug  causing  memory  corruption
(coredumps as well as
  duplicate  or  missing  messages)  fixed  - Lag on signon fixed
(where a user connects, but the server chooses
  to ignore the user until something is sent to them) -  Fixed  a
netsplit detection bug when a leaf server splits from its hub
  (for  no_chanops_when_split)  -  Fix  for  .conf based K: lines
(that just didn't work)

Changes for 1.4.31 - Connection Throttling Patch from Chip Norkus

Changes  for  1.4.30 - Updated 'make profile'; now on glibc2 sys-
tems, you can kill -USR1 the
  process and get a current profile dump, and restart profiling -
Kline/akill/zline  matching  has been revamped, which should help
greatly with
  lag under heavy user loads with many klines/akills/zlines - De-
ny sending .zip files and . files (with a null extension) to pre-
vent
  the spreading of exploits

Changes for 1.4.29 - Umode +R to not allow msgs from  non  regis-
tered nicks - chanmode +R extended to deny msgs for -r clients in
channel - +c/+R extended to squelch quit messages with color/from
non  reg'd  nicks  -  wrapped HTM detection code in #ifndef HUB -
Added channel qline reason display -  Removed  LITTLE_I_LINES  as
with  services  they are dumb - Massive code reformatting - Moved
some oper notices around to reduce unnecessary traffic  -  klines
match  IP  field  too  now, for NICKIP akills.  - Changed default
mask to @DALnet so it's known it's a fake address

- This is the last 1.4 release planned.  For real this time.

Changes for 1.4.28 - Minor bug fixes

Changes for 1.4.27 - Fixed key bug -  Fixed  showstopper  remote-
clientsonlygetpiecesofaClient bug
er.dal.net:7325:10:192.168.10.200  -  Block  DCCs  of  .htm/.html
files due to script viruses being spread in this
  way  -  Prompt for max channels per user and oper pw encryption
in the config
  script - Example.conf brought up to date - Display proper error
messages  when you can't join a channel - Fixed the +a (away) who
flag; its behavior was reversed from what it should
  have been

Changes for 1.4.22 - Fixed a bug where a server with a  bad  name
trying to connect or trying
  to be used in /links could crash Bahamut

Changes  for  1.4.21  - rate-squelch zipinbuf complain messages -
turn off yet more DNS debug messages (forward<>reverse query  er-
ror)  -  oper hostmasking no longer pollutes IPHASH (ouch) - con-
figure script reworked to search better for libgmp.a -  configure
script bugs fixed

Changes for 1.4.20 - /whois works correctly for hostmasked opers.
growl.  - configure gives more information about gmp errors.

Changes for 1.4.19 (released, but not an advised upgrade) - Fixed
a  crashing  bug with /whois - Fixed a crashing bug with /oper (I
need to remember how to handle nulls correctly :) - Imported  res
fixes  from  bahamut-stable  - made configure work for solaris to
find gmp

Changes for 1.4.18 (never officially released) - Changed level of
some debug messages to not go to all opers

Changes  for  1.4.17 (never officially released) - Oper hostmask-
ing:
  Your I: line password is oper<.password> where password is  op-
tional.
  You   then  /server  <yourserver>  <yourport>  <portpass:>oper-
nick:operpass
  Anyone +A can see your real username, host, and IP.

Changes for 1.4.16 - deal with  long-time  buffer  overflow  when
more than MAXADDR
  A DNS answers are received.

Changes  for  1.4.15 (never officially released) - Crash in res.c
fixed (due to wrong question received under heavy  load)  -  name
resolution prevents ircd dns cache pollution

Changes  for 1.4.14 (previous release was 1.4.12) - RC4 streaming
encryption added, diffie hellman key exchange
  - Requires GMP library
  - Vulnerable to man-in-the-middle attacks
  - Requires 'E' flag in the N: line on both  servers.   -  zlib-

Man(1) output converted with man2html