*** 20001110_1 by lusky
updated rehash help message
parser fix
make ADMIN non-hunting for unregistered connections


*** 20001108_2 by lusky
don't allow VERSION from unregistered clients


*** 20001108_1 by lusky
removed bogus C++ comment (cab)
added CIDR documentation
fixed a cast in s_zip.c (cab)


*** 20001101_1 by lusky
disallow DNS command from non-opers
format string snafu in ts_warn()
format string snafu in debug()


*** 20001029_2 by lusky
revved patchlevel for rc6
added O_LINES_OPER_ONLY


*** 20001029_1 by lusky
fix for mIRC NAT+spoofedI DCC send problem (userhost now returns sockhost
for acptr==sptr).


*** 20001025_1 by lusky
fix path in viconf (ab)


*** 20001024_1 by lusky
fixed new x_LINES_OPER_ONLY defines (jdc)


*** 20001023_1 by lusky
sync'd key charset per discussion with comstud


*** 20001021_1 by lusky
fix for duplicate 401's for kick #validchan invalnick
ServerStats->is_ref is incremented twice on an X-line
  which is set to 1 (jdc)
STATS P notifications were not sent to opers (jdc)
includefile rehash notifications sent to FLAGS_DEBUG
stats l/L target to FLAGS_SPY (if STATS_NOTICE) (jdc)
uname info only displayed to opers
If X-line port field is 2, reject client but do not send
  a notification to opers
STATS y/Y now oper-only
Four new defines, I_LINES_OPER_ONLY, K_LINES_OPER_ONLY,
  P_LINES_OPER_ONLY, and SPOOF_NOTICE (jdc/jrl)
add some missing defines to m_info.h


*** 20001019_1 by lusky
dns cache entries were never fully expiring, stayed in the hashtable forever


*** 20001018_1 by lusky
fix for whois_notice (tv)


*** 20001017_1 by lusky
fixed a bug tickled by sending a bogus SERVER command from hacked server
auditted leakage of IP address from get_client_name calls


*** 20001011_1 by lusky
fix for *@*.foo.com I:lines being broken by a user@host.foo.com I:lines


*** 20001005_3 by lusky
added CVS Id tags to numerous files
brought Hybrid-team and version.c.SH
deleted ChangeLog.old and include/defs.h


*** 20001005_2 by bill

Added myself to Hybrid development team


*** 20001005_1 by bill

Fixed misnamed va var in sendto_realops()


*** 20001004_1 by lusky
changed ltrace to be consistant with trace for non-opers
mode channel +e now returns an error to non-chanops
unauth connection notices now include servername/port (jdc)


*** 20000917_1 by lusky
changed "juping locally" to "locally juping" (gp)
typo in stats z display (gp)


*** 20000914_1 by lusky
typo in channel jupe oper notice (db)
changed 461 error to show * for empty field (tv)
new config.h option ALLOW_DOT_IN_IDENT


*** 20000910_1 by lusky
backed out bill's patch for now


*** 20000907_2 by bill

Oops.  Forgot to remove canonize() and place function call in the #ifdef.


*** 20000907_1 by bill

Fixed the small bug with nick,nick,nick.


*** 20000901_1 by lusky
revved patchlevel to rc5
added canonize() call in m_message if NO_DUPE_MULTI_MESSAGES is defined


*** 20000824_4 by lusky
- removed trailing ')' from channel +/-j oper notices


*** 20000824_3 by lusky
- glines were not matched properly for unidented clients


*** 20000824_2 by lusky
- changed Q:line behaviour for NICKs to just return ERR_ERRONEUSNICKNAME


*** 20000824_1 by lusky
- server_estab() - mask IP in the op notices, but log the real ip
- disable wildcards in WHOIS (configurable for now)
- DLPATH didn't get loaded on REHASH


*** 20000822_1 by lusky
added support for CIDR IP tklines, just like normal klines


*** 20000821_2 by lusky
kludge to fix an I: bug where blah.foo.com could match I:nomatch::foo.com


*** 20000821_1 by lusky
fix for stats by a server causing a core


*** 20000820_1 by lusky
first shot at fixing a really old bug with USE_POLL that would cause the
  server to not parse queued commands until there was additional activity
  on the descriptor.


*** 20000812_2 by lusky
yet another test commit


*** 20000812_1 by lusky

*** 20000809_2 by lusky
changed the sendto_ops to sendto_realops for dupe gline votes (gp)
add G to the version flags to indicate G-line capability (gp)


*** 20000809_1 by lusky
revved patchlevel to rc4
syslog() format fix (wnder)
mod to clean_string() to display ctrl chars as \xxx


*** 20000719_1 by lusky
fixed check for valid chars in m_links()
fixed high char handling in clean_string() (db)
fix for core on malformed O/o line (db)
fixed a buffer size in m_server() and m_links() (db)
revved patchlevel to rc3


*** 20000626_2 by lusky
ghost kill fix


*** 20000626_1 by lusky
revved patchlevel to rc2
added db's I-line patch that was supposed to have been in rc1


*** 20000621_2 by lusky
more cygwin install fixes


*** 20000621_1 by lusky
revved patchlevel to rc1
fixes for ip_ilines (db)
fixes and notes for cygwin
check for getopt.h in configure script


*** 20000611_4 by lusky
fixed README.FIRST


*** 20000611_3 by lusky
revved patchlevel to rc0
updated Hybrid Team members for -6


*** 20000611_2 by lusky
updated README file with new Solaris7 64bit compiler info


*** 20000611_1 by lusky
removed unused variable (compile warning)


*** 20000609_1 by lusky
misc cosmetic typo fixes (tv)
fixes for DEBUGMODE (tv)


*** 20000608_2 by lusky
FLAGS_LOCOP was missing from ALL_UMODES, preventing +O from being displayed
  in a user's mode.
show_users() cache rebuild wasn't counting locops, causing "Oper count
  off by" errors.


*** 20000608_1 by lusky
revved patchlevel to b128
misc server notice fixes (gp)


*** 20000607_1 by lusky
updated docs with new list subscription instructions


*** 20000606_3 by lusky
fix logging of bad NICKs from servers


*** 20000606_2 by lusky
check for bogus NICK from peer server in m_nick
minor fix for some notices in m_stats and m_oper (mh)


*** 20000606_1 by lusky
typo in m_message causing infinite loop


*** 20000525_1 by lusky
revved patchlevel to b127
added logging to ts_warn()
log prefix of NICKs without TS


*** 20000516_3 by lusky
fixed a strncpy() (db)


*** 20000516_2 by lusky
reworked vsendto_one() again (pa)
another fix to the llist fix (db)


*** 20000516_1 by lusky
revved patchlevel to b126
missing va_start/end in send.c (db)
additional llist logging (db)


*** 20000514_1 by lusky
workaround in client.c for major bug causing llist corruption and server coring
vsendto_one cleanup in send.c


*** 20000423_1 by lusky
revved patchlevel to b125
fixed to s_conf for DEBUG mode (db)
config.h comments for CUSTOM_ERR updated (db)
syncd config.h.dist to config.h


*** 20000421_1 by lusky
cleanup prototypes in s_bsd.h
max recipients for privmsg & notice is now configurable at compiletime (perly)
clean up some char vs u_char issues in res.c


*** 20000419_1 by lusky
fixed channel unavailable error (db)


*** 20000410_3 by lusky
revved patchlevel to b124
fixed stats K for username@* klines


*** 20000410_2 by lusky
revved patchlevel to b123
moved NICKNAMEHISTORYLENGTH to near top of config.h


*** 20000410_1 by lusky
chan mode +p/+s fix (ejb)
use MAX_SETBACK_TIME for threshold of clock jump--now 1800secs (db)
unneeded va_end() broke compile on some OSes (db)


*** 20000402_1 by lusky
fixed bug that caused only the first connection in a class to be tried
  i.e. if you had several C: lines in one =class= only the first
  C: line was ever used. This is code that was #ifdef'd out from original
  hybrid-5 (db)
revved patchlevel to b122


*** 20000206_1 by lusky
fixed spaces in src/Makefile.in (db)


*** 20000201_1 by lusky
fixed UMR in poll code (th)
revved patchlevel to b121


*** 20000131_2 by lusky
revved patchlevel to b120
dropped TS_MAX_DELTA default to 300 seconds
various compile warning fixes
turn off GLINES by default


*** 20000131_1 by lusky
reverted to -5 nick collide code (db)
fixes to make debugmode compile (db)


*** 20000103_1 by lusky
revved patchlevel to b119


*** 20000102_1 by lusky
The "hack" ops message is just plain wrong. Its not needed anyway. (db).
userhost formatting problem (ce)
malformed U line caused strange cores on /rehash (db)


*** 19991228_1 by lusky
split m_list.c away from channel.c its getting too silly  ALL paced
  commands should give RPL_LOAD2HI if its a local client request.
  Its not going to flood off the user... Hence, I have added RPL_LOAD2HI
  to m_list.c splitting it from channel.c (db)
optimized the patch I did for USE_IP_I_LINE first.. not thoroughly tested. (db)
resync_channels was just a waste of time. If the clock goes that far off,
 restart the puppy. (db)


*** 19991227_1 by lusky
update the oper help file, which was getting out of sync (db)
fixed a redundant if in channel.c (db)
core dumps, hangs if USE_IP_I_LINE_FIRST was defined (db)


*** 19991223_1 by lusky
backed out previous change to config.h
upped MAXSENDQLENGTH slightly
redid dbuf handling to dynamically allocate more dbufs (db)
numeric 480 is unnecessary 479 does the same job on ircu ircnet (db)


*** 19991222_1 by lusky
changed BUFFERPOOL definition to try to fix mass disconnects during netsplits
  on larger (over 8k local clients) servers
revved patchlevel to b118


*** 19991220_1 by lusky
patch for core if there were no klines at all (db)
revved patchlevel to b117


*** 19991213_1 by lusky
another fix for dline bug (db)
"E lines" weren't being honoured on connect for glines (db)


*** 19991210_1 by lusky
revved patchlevel to b116
fix for quote dline's being treated as /8's (db)


*** 19991208_1 by lusky
revved patchlevel to b115
DNS coring problem is fixed!! (db)


*** 19991115_2 by lusky
added USE_LOGFILE to config.h
added MFLAGS to toplevel Makefile.in so I can do parallel makes


*** 19991115_1 by lusky
add fix for logging, if you define USE_LOGFILE, stuff will be logged to
  the ircd.log, if you define USE_SYSLOG, stuff will be logged to syslog,
  if you define both stuff will be logged to both. (th)


*** 19991113_2 by lusky
revved patchlevel to b114


*** 19991113_1 by lusky
rewrote the way chanwall was being handled, by moving where the varargs code had to be used (db)
m_userhost old behaviour restored, but rewritten. Need to support
  up to 5 userhost requests, this fixes ircle clients which depend on
  this behaviour. (db)



*** 19991024_1 by lusky
revved patchlevel to b112
disallow -ve limit on mode #channel +l (db)


*** 19991017_1 by lusky
revved patchlevel to b111
commented about NO_JOIN_ON_SPLIT being broken in config.h
removed (+) cruft from idented clients as this was a Tanerism (db)
fixed missing mask check in IP kline code (db)


*** 19991013_5 by lusky
revved patchlevel.h to b110
fixed m_ison to put trailing space on 303 responses
CONNECTFAST is always defined for USE_POLL now, was causing very poor
  accept performance on heavily loaded non-Solaris machines using poll()


*** 19991013_4 by lusky
syncd config.h.dist to config.h


*** 19991013_3 by lusky
added display of logLevel as a string in /set log (db)
updated opers.txt to include set log


*** 19991013_2 by lusky
backported set log from -7, really needs to be here


*** 19991013_1 by lusky
revved patchlevel to b109
fixed botched wild card matching for K/I lines (db)
added INIT_LOG_LEVEL to config.h


*** 19991011_1 by lusky
cptr->fd is <0 in some cases when its being used in send.c (db)


*** 19991010_1 by lusky
fixed bogus strncpy in s_conf.c report by Q (th)


*** 19991009_3 by lusky
updated RELNOTES to indicate that AIX is unsupported


*** 19991009_2 by lusky
revved patchlevel to b108
fixed -DNDEBUG in Makefile.in (th)
fix for resolver blocking on Linux 2.0 /libc5 (th)
workaround for broken poll() in Linux 2.0 / libc5 (th)


*** 19991009_1 by lusky
added -DNDEBUG back to CFLAGS (jl)
put channel topic back before names (db)
another umode hack fix (db)
fixed a broken cast for IRIX (jl)


*** 19990928_1 by lusky
another +o hack fix (db)


*** 19990927_1 by lusky
This patch corrects a case where a normal user can oper themselves (db)
also corrects a possible core due to a bogus H or L line. (neph)


*** 19990911_1 by lusky
another bogus fd check in send.c


*** 19990910_2 by lusky
removed an exit that shouldn't have been there


*** 19990910_1 by lusky
revved patchlevel to b107
user sys/poll.h instead of poll.h


*** 19990909_2 by lusky
corrected error in ChangeLog


*** 19990909_1 by lusky
revved patchlevel to b106
fix return values for client_dopacket and dopacket (th)
m_links check for local client instead of connect


*** 19990908_2 by lusky
revved patchlevel to b105
cleanup m_userhost fix


*** 19990908_1 by lusky
changed 302 reply back to -5 form to fix userhost


*** 19990907_4 by lusky
more dbuf fixes (th)
check in send_message() that the descriptor is valid


*** 19990907_3 by lusky
changed killpath again.  I think I can live with this one.  (jl)


*** 19990907_2 by lusky
bumped patchlevel to b104
fixed a couple of stary index()'s
fix a cast in viconf
fixed broken tools/Makefile.in


*** 19990907_1 by lusky
disallow ':' in fix_key_old() too


*** 19990906_1 by lusky
compromise on supressed killpath and just not send to non opers at all rather than send two to real opers (jl)
more +k/-k fixes


*** 19990904_2 by lusky
more dbuf fixes (th)


*** 19990904_1 by lusky
major fixes to dbuf code (th)
bumped patchlevel to b103


*** 19990902_1 by lusky
added check for '#' in username and hostname of /quote kline


*** 19990831_1 by lusky
bumped patchlevel to b102
left over aconf->user gets freed twice, causing some malloc packages to leave their lunch all over the disk.... NULL things after every free (db)


*** 19990829_1 by lusky
fix for umode +O (jk)


*** 19990826_1 by lusky
turned on ANTI_DRONE_FLOOD by default
sync'd config.h.dist
include class.h in m_message.c
bumped patchlevel to b101


*** 19990825_2 by lusky
changed a strncpy to DupString in s_conf.c (db)


*** 19990825_1 by lusky
bumped patchlevel.h to b100
more kill path fixes (db)
m_oper fix for local oper flags (db)
ReadMessageFile stat fix (db)
cleanup of tools/Makefile.in (jl)


*** 19990819_1 by lusky
call release_client_dns_reply for servers too (th)
fixes for U and X lines (db)
Hide path on kill from "victim" (db)
Hide path on kill from oper to non opers (db)


*** 19990818_2 by khuon
Mental note: 

	Always make sure to check in from the directory where you actually
	got things working.



*** 19990818_1 by db
- backed out a change. You can't strcpy to a pointer without
  allocating memory. 



*** 19990817_2 by khuon
Ugh!  Seems sendto_prefix_one() accepts different args now.


*** 19990817_1 by lusky
fixed LIMIT_UH and IDLE_CHECK which were using old structs
revved patchlevel to b99


*** 19990816_1 by lusky
removed redundant "New highest connections" server notice
fixed SYSLOG_USERS bug (th)
discard broken DNS replies (th)
fixed IP mismatch check (th)
revved patchlevel to b98


*** 19990814_1 by lusky
small bug in packet.c in the byte counting code (th)


*** 19990812_1 by lusky
revved patchlevel to b97
ip hash function fix (th)


*** 19990811_1 by lusky
fake direction bug fix to send.c (th)
throttle accept errors in listener.c
oper motd rehash bug fix from perly
ensure that SERVER must come before SVINFO (jl)
unneed stropt.h include in s_bsd.c
neglected to detach_conf for umode -o (jl)


*** 19990810_1 by lusky
revved patchlevel to b96
fixed bug with NO_JOIN_ON_SPLIT on a coldstart
FLAGS_SPY was being checked against old flags in m_whois, its now umodes (db)
%lu screws up idle times as seen by a lot of scripts, notably bitchx (db)
added include for stdlib.h to mkpasswd.c
moved rcs Id into comments in fixklines.c


*** 19990809_2 by lusky
remove <sys/syslog.h> check from configure, assume <syslog.h> exists (sw)
cleaned up attach_Iline some more (db)


*** 19990809_1 by lusky
bumped patchlevel to b95
removed unneeded arg to attach_Iline and fixed tklines for non-resolving hosts
fixes to allow SLAVE_SERVER to work (db)
RPL_MYINFO should report the user modes and channel modes available (db)
missed the user mode +b for bots (db)
applied neph's operwall/wallops pacing patch (db)


*** 19990806_2 by lusky
updated patchlevel.h to b94 for new tarball


*** 19990806_1 by lusky
diane fixed another unkline bug.


*** 19990805_2 by lusky
fixed rehash dump, would core on bad admin line


*** 19990805_1 by lusky
bumped patchlevel for new tarball
added KNOWN BUGS to relnotes
bug in stats Q line found by Dustin Marquess (Jailbird)
in client.h, umodes were moved to umodes in client, forgot to redefine the macros for SetInvisible etc.
user_mode allowed decrement of oper count even if client was not opered



*** 19990804_2 by lusky
bumped patchlevel to b92 for new beta snapshot


*** 19990804_1 by lusky
fix for IP Klines in stats from Diane
fix for broken m_unkline.c from Diane it would unkline everything
fix for lusers from Tom


*** 19990803_2 by lusky
bumped patchlevel for new tarball


*** 19990803_1 by lusky
changed all occurances of USE_ALLOW_OP to NO_CHANOPS_WHEN_SPLIT
fix to prevent coring on malformed conf lines


*** 19990802_4 by lusky
changed a syslog to log for Bleep


*** 19990802_3 by lusky
Updated documentation files, removed -DNDEBUG from the default CFLAGS,
and sycn;d config.h.dist to config.h


*** 19990802_2 by lusky
added release notes to the tree


*** 19990802_1 by lusky
fixed 216 reply
bug in mtrie_conf.c causing ~ klines not to work
major bug in s_conf.c to do with reading of kline.conf


*** Entries below this point were entered manually

version hybrid-6-b90 02-Aug-1999
* updated patchlevel in anticipation of snapshot release
-Rodder

version hybrid-6-current 26-Jun-1999 through 01-Aug-1999

1999/08/01 (tomh) - typos 
1999/08/01 (tomh) - setup_signals just before init_sys 
1999/08/01 (tomh) - remove uneeded checks in configure.in 
1999/08/01 (tomh) - move dbuf_init after init_sys 
1999/08/01 (tomh) - more getopt notes 
1999/08/01 (tomh) - more cleanups 
1999/08/01 (tomh) - misc cleanups 
1999/08/01 (tomh) - minor cleanups 
1999/08/01 (tomh) - log message cleanups 
1999/08/01 (tomh) - log m_dies 
1999/08/01 (tomh) - include getopt.h to avoid declaring extern. hopefully this should work - everywhere. Solaris has getopt. 
1999/08/01 (tomh) - cleanup startup code 
1999/08/01 (tomh) - bug fix to make -h work 
1999/08/01 (tomh) - bug fix 
1999/08/01 (tomh) - ackvi s_bsd.c bug fix 
1999/08/01 (lusky) - added missing define for INADDR_NONE 
1999/08/01 (db) - removed Makefile defines that aren't ready 
1999/08/01 (db) - oops misplaced parens 
1999/08/01 (db) - fixed compile error, getopt needs optarg declared extern. -   We should verify interface of getopt on other OS's notably solaris 
1999/07/31 (tomh) - split m_mode 
1999/07/31 (tomh) - sketch log interface 
1999/07/31 (tomh) - restart instead of exit on clock fail 
1999/07/31 (tomh) - new s_log, nothing there yet but soon 
1999/07/31 (tomh) - move sbrk memory stuff to ircd.c 
1999/07/31 (tomh) - move sbrk code to ircd.c 
1999/07/31 (tomh) - log code 
1999/07/31 (tomh) - header shuffle 
1999/07/31 (tomh) - header cleanups 
1999/07/31 (tomh) - bug fix 
1999/07/31 (tomh) - added include 
1999/07/31 (db) - server should not fork() if -s is used, it makes it very hard to debug 
1999/07/31 (db) - resolved cvs checkin conflict in s_user.c oops. removed m_kill which -   is now in m_kill.c 
1999/07/31 (db) - removed global kills of nick collides, let each server handle it itself 
1999/07/31 (db) - moved m_message/m_notice/m_private into m_message.c - moved more stuff from struct.h to m_message.c - rebuilt .depend 
1999/07/31 (db) - moved m_kill out of s_user.c 
1999/07/31 (db) - moved m_ison out of s_user.c - cleaned up m_ison - fixed botch in parse.c 
1999/07/31 (db) - moved MATCH defines from m_message.c into send.h, they are needed in send.c 
1999/07/31 (db) - m_userhost.c was so broken, rewritten ... it looks like it -   was recursively modified after the fact, with the original code left -   in taking up space.. in any case, it now only handles one target. 
1999/07/31 (db) - forgot to commit, sorry Tom 
1999/07/31 (db) - bug fixing. this is good. redid ip I lines, not using seans' version -   of add_ip_Iline yet. not until its thoroughly tested. SO, #if 0 out -   in dline_conf.c 
1999/07/30 (wnder) - cleanup, fixed a potential problem with the reason field 
1999/07/30 (tomh) - readd dns search, see if this fixes vhost probs 
1999/07/30 (tomh) - new m_command files 
1999/07/30 (tomh) - new files, header cleanups 
1999/07/30 (tomh) - moved stats stuff to stats module 
1999/07/30 (tomh) - moved stats stuff to separate module 
1999/07/30 (tomh) - more header cleanups 
1999/07/30 (tomh) - definitions for get_client_name 
1999/07/30 (db) - split userhost out of s_user.c, its soooo broken, but committed for now 
1999/07/30 (db) - split m_quit.c out - corrected m_set.c for NO_JOIN_ON_SPLIT cases 
1999/07/30 (db) - removed usrip - moved pieces of m_user.c into m_away.c, m_ison.c, m_oper.c m_ping.c m_pong.c 
1999/07/30 (db) - oops. fixed header on flud.c - send floodbot notices to +b not +r 
1999/07/30 (db) - oops 
1999/07/30 (db) - moved m_whois.c 
1999/07/30 (db) - moved m_who to m_who.c 
1999/07/30 (db) - moved ban struct from struct.h to channel.h 
1999/07/30 (db) - moved FLUD code from s_user.c into flud.c/flud.h 
1999/07/30 (db) - added proper header on flud.h 
1999/07/29 (tomh) - new m_commands 
1999/07/29 (tomh) - new .depend 
1999/07/29 (tomh) - fix connect to hubs?? 
1999/07/29 (tomh) - ewps missed one 
1999/07/29 (tomh) - conf_counter bug fix 
1999/07/29 (sean) - wow, needed that fix in more than one place. 
1999/07/29 (sean) - hopefully fixed that coredump problem.. - I think there was an if() outside of the -   for(cptr2 = serv_cptr_list; cptr2; cptr2 = cptr2->next_server_client) - loop referencing acptr. - someone verify that the logic makes sense there. 
1999/07/29 (sean) - fixed logic in m_trace to determine if we show someone's IP or not. 
1999/07/29 (sean) 
1999/07/29 (db) - removed UTMP and COMMA, no one was using them 
1999/07/29 (db) - fixed parse bug I introduced. *sigh* 
1999/07/28 (tomh) - update C/N line documentation 
1999/07/28 (tomh) - remove bsd.h, move deliver_it protoype to s_bsd.h 
1999/07/28 (tomh) - rearrangements 
1999/07/28 (tomh) - new files 
1999/07/28 (tomh) - new file, rearrangements 
1999/07/28 (tomh) - new .depend 
1999/07/28 (tomh) - move deliver_it to s_bsd.c, remove bsd.c, support.c 
1999/07/28 (tomh) - messages cleanup 
1999/07/28 (tomh) - little cleanups 
1999/07/28 (tomh) - fix compile warning 
1999/07/28 (tomh) - Move programming error checks to asserts. Just return the string for release. 
1999/07/28 (tomh) - Finish net cleanup of connects (mostly). - NOTE: Please check this carefully to make sure it still works right. - The original code was entirely too twisted to be sure I got everything right. 
1999/07/28 (tomh) - Finish cleanup of net connect code. - NOTE: Please check this carefully to make sure everything still works correctly. - The original code was entirely too twisted to be sure I've gotten everthing - right. Please read the new notes in the example.conf file for conf line rules. 
1999/07/28 (db) - removed find_channel() in channel.c, use hash_find_channel. -   gosh. hash code hasn't been experimental in years. 
1999/07/28 (db) - moved prototype into list.h from channel.c 
1999/07/27 (wnder) - Channel ban memory usage was being way undercalculated for stats Z - - never took the length of the banmask into account. 
1999/07/27 (tomh) - move try_connections to s_serv.c 
1999/07/27 (tomh) - more connect cleanups 
1999/07/27 (tomh) - more cleanups of connect 
1999/07/27 (tomh) - cleanup connect stuff, comments 
1999/07/27 (db) - set num_bed = 0 when all bans/exceptions/denies are cleared out 
1999/07/27 (db) - removed USE_FD_ALLOC - fixed typo 
1999/07/27 (db) - redid escape code, hmmm why do we need this? :-) 
1999/07/27 (db) - missing colon in an H line =really= shouldn't core the server. - bad Diane. bad bad bad. no cookie for you. 
1999/07/27 (db) - many changes to account for denies - integrated deny code in with already present ban/exception code - added function to free all bed's - forgot to subtract one from bed_count when removing a +e due to kick - quietly ignore error in removing empty channels 
1999/07/27 (db) - don't forget to decrement num_bed when deleting ban entries. -   Bad Sean. bad bad bad. no cookies for you, straight to bed! 
1999/07/26 (tomh) - new functions for s_conf cleaning up connect 
1999/07/26 (tomh) - new file new .depend 
1999/07/26 (tomh) - cleanup some conf stuff dealing with connects 
1999/07/26 (sean) - priorities were a bit twisted in is_banned() 
1999/07/26 (sean) - fixed weirdness with +d.. once servers are all updated, can remove the hack perhaps?.  did the same thing as +e does (mbuf_new, pbuf_new  --> mbuf_newer, pbuf_newer) 
1999/07/26 (db) - use prototype already present in s_misc.h 
1999/07/25 (tomh) - update .depend 
1999/07/25 (tomh) - untangle m_commands 
1999/07/25 (tomh) - new file m_pass start untangling m_server 
1999/07/25 (tomh) - more header cleanups 
1999/07/25 (tomh) - bit of header cleanups 
1999/07/25 (tomh) - bit of header cleanup 
1999/07/25 (sean) - not needed 
1999/07/25 (sean) - fixed an oversight. 
1999/07/25 (sean) - changed +d behaviour to something more feasible... matches bans on user's gecos field.. like Xlines for a channel. 
1999/07/25 (db) - test of parse.c changes 
1999/07/25 (db) - some parse cleanups 
1999/07/25 (db) - moved whowas definitions from struct.h into whowas.h - optimized and verified parse.c changes - attempted correction on I line botch - updated .depend JIC 
1999/07/25 (db) - moved gline defs from struct.h to m_gline.h 
1999/07/25 (db) - moved aConfItem defs from struct.h to s_conf.h 
1999/07/25 (db) - interim commit of parse.c cleanups, more to come 
1999/07/25 (db) - fixed parse code 
1999/07/25 (db) - added ORATIMING to parsetest 
1999/07/24 (wnder) - removed obsolete #ifdef for NO_LOCAL_KLINE 
1999/07/24 (wnder) - removed #ifdef for obsolete R_LINES (CONF_RESTRICT as well). 
1999/07/24 (tomh) - put sbrk back in, fixup includes to get tree to build 
1999/07/24 (tomh) - new .depend just in case 
1999/07/24 (tomh) - cleanup fdlist code a bit 
1999/07/24 (tomh) - cleanup fdlist code 
1999/07/24 (tomh) - cleanup debug a little 
1999/07/24 (tomh) - cleanup compile warning: parse.c:183: warning: numeric might be used uninitialized in this function 
1999/07/24 (tomh) - cleanup IsMe in poll/select loops 
1999/07/24 (tomh) - changed timeofday and NOW to CurrentTime 
1999/07/24 (tomh) - attempt to fix memory usage reporting for sbrk calls, still needs work?? 
1999/07/24 (tomh) - added missing # 
1999/07/24 (sean) - partially trust remote servers.. allow them to set more than 25 bans, dont let local clients exceed the limit. - don't check regex validity if introduced by another server, only check up on users 
1999/07/24 (sean) - made +d insensitive... (case insensitive, not cold-hearted) 
1999/07/24 (sean) - alrighty what did I do? - undid the "trusting" or servers in add_banid/add_exceptionid since this causes duplicate bans on channels after a split+rejoin - finished add_denyid. this is case sensitive. - modified is_banned() to check for +d stuff as well.. precedence is now +b, +d, +e (+e overrides +b and +d). - added num_bed to channel structure to track total number of bans+exceptions+denies on the channel instead of counting each time 
1999/07/24 (sean) - added num_bed to structure to count total bans/exceptions/denies 
1999/07/24 (sean) 
1999/07/24 (db) - simple optimization in numeric handling 
1999/07/24 (db) - further simplification 
1999/07/23 (wnder) - m_info.c is much much cleaner now. added m_info.h dependency to .depend. 
1999/07/23 (wnder) - branches:  1.1.2; - file m_info.h was initially added on branch 1.27. 
1999/07/23 (wnder) - Totally redid m_info.c - all the ugly #ifdef stuff removed. m_info.h - now contains an array with all the information. 
1999/07/23 (wnder) - Sean's info wasn't lined up with the rest of us :-) 
1999/07/23 (wnder) -  Rewrote m_info.c - got rid of all the ugly #ifdef stuff. m_info.h - is much cleaner. 
1999/07/23 (tomh) - trivial dependency tweaks 
1999/07/23 (tomh) - remove unneeded include, update .depend 
1999/07/23 (tomh) - remove sbrk, replace with get_maxrss 
1999/07/23 (tomh) - include channel.h first 
1999/07/23 (tomh) - cleanup signals, remove unused header 
1999/07/23 (tomh) - cleanup signal code 
1999/07/23 (tomh) - analyze and fixup dependencies 
1999/07/23 (sean) - new capab DE (channel mode +d : CAP_DE) 
1999/07/23 (sean) - modularized regular expresison handling.. more on this later 
1999/07/23 (sean) - further modified to enable +d.  still no regex checking as of yet. - only pass +d modes on to capable servers. 
1999/07/23 (sean) - channel +d work. 
1999/07/23 (sean) - added channel mode +d (straight copy of +b code) - no parsing yet in is_banned().. coming soon. - (this is the regular expression deny mode by the way) - I'm possibly going to do mode +a to perform the same function as +e does to +b. 
1999/07/23 (db) - yet more cleanups in the wonderful world of includes 
1999/07/23 (db) - use definitions in channel.h 
1999/07/23 (db) - the wicked witch is dead. h.h is no more - removed s_numeric.c its silly to put a small function like that into one file -   and its only used in parse.c 
1999/07/23 (db) - more include fun 
1999/07/23 (db) - more include file fixes 
1999/07/23 (db) - more include cleanups 
1999/07/23 (db) - last bit of fixes 
1999/07/23 (db) - include file fixes 
1999/07/23 (db) - fixed headers here 
1999/07/23 (db) - couple more include fixes 
1999/07/23 (db) - cleaned up missing includes defines in NO_JOIN_ON_SPLIT 
1999/07/23 (db) - channel.c needs config.h - moved externs from s_user.c into channel.h - made whowas variable static 
1999/07/23 (db) - There is no more  RFC1035_ANAL 
1999/07/22 (tomh) - work on socket code 
1999/07/22 (tomh) - rename FLUSH_BUFFER to CLIENT_EXITED 
1999/07/22 (tomh) - removed redundant check 
1999/07/22 (tomh) - cleanup socket code 
1999/07/22 (tomh) - cleanup compile warnings 
1999/07/22 (tomh) - bug fix 
1999/07/22 (tomh) - added username hostname attributes 
1999/07/22 (tomh) - added new attributes for username and hostname checks and rewrote check - functions. - NOTE: please check the policy for user chars in match.c, I was a bit more - restrictive than the original code, it allowed "#%&'()+/ in usernames - the table does not. If you don't want this, just add USER_C to those entries. 
1999/07/22 (tomh) - add missing include for list.h 
1999/07/22 (tomh) - add SideWnders configuration changes 
1999/07/22 (db) - trust what servers throw at us when bans/exceptions are added to channels 
1999/07/22 (db) - s_rehash should always be defined no? - instead of calling is_chan_op() has_voice() separately, return both found -   bits at once using user_channel_mode(), this is a slight win -   for  m_whois(), set_mode() 
1999/07/22 (db) - oops forgot s_misc.h parse.h - other cleanups 
1999/07/22 (db) - moving globals from inside the .c into the .h 
1999/07/22 (db) - moved channel definitions from struct.h to channel.h 
1999/07/22 (db) - moved a pile of defs from h.h into ircd.h s_bsd.h channel.h s_misc.h 
1999/07/22 (db) - just about done 
1999/07/22 (db) - even more cleanups and move of stuff from h.h 
1999/07/22 (db) - built m_gline.h, scache.h , moved more stuff from h.h - 	1.27: 1.1.0.2 
1999/07/22 (db) - built m_gline.h, scache.h , moved more stuff from h.h 
1999/07/22 (db) - added user_channel_mode, lookup the users mode once instead -   of several times 
1999/07/21 (tomh) - untabify headers 
1999/07/21 (tomh) - untabified code 
1999/07/21 (tomh) - little perl thing to untabify code 
1999/07/21 (sean) - removed oper notification messages for blocking list... if this is ever suspected to be abusable, we can add the notifications again.. for now, I dont see the point. 
1999/07/21 (sean) - provisions for blocking list w/ resume 
1999/07/21 (sean) - lock out all other commands while /list is blocked. 
1999/07/21 (sean) - blocking list code 
1999/07/21 (db) - you guessed it, more cleanups. removed undefined function that had -   a prototype in h.h cool 
1999/07/21 (db) - yet more h.h cleanups, the nightmare that never ends 
1999/07/21 (db) - yet more cleanups of h.h, removed a completely undefined reference yum. 
1999/07/21 (db) - updated .depend 
1999/07/21 (db) - untabified send.c for sean (Hi Sean!) 
1999/07/21 (db) - this animal is dying, (h.h) 
1999/07/21 (db) - removed bad_tld completely, reworked m_gline.c m_kline.c (sidewnder) 
1999/07/21 (db) - oops 
1999/07/21 (db) - more prototype and header fixing, added s_user.h 
1999/07/21 (db) - more h.h pruning 
1999/07/21 (db) - more cleanups 
1999/07/21 (db) - made a function static, removed from h.h 
1999/07/21 (db) - found missing entry in ChatAttr table '`' 
1999/07/21 (db) - cleaned up auto conn freq code 
1999/07/21 (db) - check for minimum connect frequency if < 300 default to 300 - if not valid_hostname give user the sockhost as their hostname, whine -   gently to the user. 
1999/07/21 (db) - added sidewnders m_kline.c changes for wild card prevention 
1999/07/21 (db) - added a very primitive program for checking CharAttr table 
1999/07/21 (db) - I'm beginning to hate this file 
1999/07/20 (tomh) - rewrote clean_channelname, rename check_channel_name 
1999/07/20 (tomh) - new char macros 
1999/07/20 (tomh) - new char attrs 
1999/07/20 (tomh) - more cleanups 
1999/07/20 (tomh) - cleanup socket code 
1999/07/20 (tomh) - cleanup IsAscii 
1999/07/20 (tomh) - cleanup 
1999/07/20 (sean) - working on /list 
1999/07/20 (sean) - who calls me "good" anymore? 
1999/07/20 (sean) - learning how to read... 
1999/07/20 (sean) - hash_get_channel_block() added so that we can get our fingers into the tables from outside of hash.c 
1999/07/20 (sean) - hash_get_channel_block() 
1999/07/20 (sean) - fixed sign issues 
1999/07/20 (sean) - fixed diane's fixes.  Do we ever try to make before we commit ;) 
1999/07/20 (sean) - added fields listprogress and listprogress2, and FLAGS2_SENDQ_POP.  This /list bitch shall yield to me!!! I swear it! 
1999/07/20 (db) - use valid channel char macros 
1999/07/20 (db) - oops should have been sptr not cptr 
1999/07/20 (db) - moved oper flags back into umodes - added prelim reporting of server joins to network 
1999/07/20 (db) - moved getfield from parse.c to s_conf.c which is the only place its used - removed duplicate prototype from h.h , it was in dline_conf.h already - send.c needs s_zip.h included to know about ziplinks 
1999/07/20 (db) - more removal of stuff from h.h 
1999/07/20 (db) - more moving of stuff from h.h, added s_zip.h 
1999/07/20 (db) - more cleanups from h.h 
1999/07/20 (db) - more cleanups 
1999/07/20 (db) - drone flooders should also be under flags +b BOTS 
1999/07/20 (db) - added user mode +b, opers have been asking for this, so they -   don't need to watch rejected clients just to see bots, FLUDBOTS too 
1999/07/20 (db) - added umode +x for watching eXternal server introductions 
1999/07/19 (tomh) - fixed off by one in CharAttrs 
1999/07/19 (tomh) - fix errno stuff 
1999/07/19 (tomh) - changed prototype for _getlong 
1999/07/19 (tomh) - added _getshort and _getlong protos 
1999/07/19 (tomh) - add res_ourserver from bind 8.3 for systems without it (bind 4.x) 
1999/07/19 (tomh) - ack solaris fix for FIONBIO which should be removed anyway 
1999/07/19 (tomh) - Work on char attributes for nick names, changed isvalid macro - Const correctness changes - Fixed file close bug on successful read - Header cleanups - Checked all usage of sprintf_irc for correctness, added terms where needed 
1999/07/19 (tomh) - Work on char attributes for nick names, changed isvalid macro - Const correctness changes - Fixed file close bug on successful read - Header cleanups - Checked all strncpy_irc usage added terminations where needed 
1999/07/19 (tomh) 
1999/07/19 (db) - removed MyFludConnect, it can be safely replaced with MyConnect 
1999/07/19 (db) - local oper deopering should be removed from oper link lists, and fdlist - adjust Count.oper when deopering 
1999/07/19 (db) - interim checkpoint - rewritten pieces of u_mode handling, because oper flags are no -   longer in the same flags as the settable flags, special case code -   will have to be added to send those modes on to the next server. -   Thats next. 
1999/07/19 (db) - first working code with new umodes 
1999/07/19 (db) - cool. remote opers are flagged using lower case o, not upper case 
1999/07/19 (db) - bitmask clash in client.h meant everyone was oper fun. - adding remote oper mode code 
1999/07/19 (db) - added obvious speed up test in m_mode 
1999/07/18 (tomh) - remove strncpyzt and cleanups 
1999/07/18 (tomh) - new reference file 
1999/07/18 (tomh) - header cleanups 
1999/07/18 (tomh) - fixed broken poll code 
1999/07/18 (tomh) - cleanup compile warnings 
1999/07/18 (tomh) - changed strncpy to strncpy_irc 
1999/07/18 (tomh) - added new tests 
1999/07/18 (tomh) - added me and Neph (only got his nick sorry) 
1999/07/18 (tomh) - add new file 
1999/07/18 (db) - yet more include file cleanups 
1999/07/18 (db) - yet more header cleanups 
1999/07/18 (db) - yet more h.h cleanups - removed duplicate prototype from h.h for off_history() - moved initwhowas() into whowas.h - added #include "whowas.h" to s_user.c client.c ircd.c 
1999/07/18 (db) - updated the Hybrid-team file. blah. I'm not a writer. 
1999/07/18 (db) - removed last vestiges of references to sys.h in tools dir - gave up. its now ircd-hybrid-6-current for a while, rely on serno.h for now 
1999/07/18 (db) - removed 0xDF hack replaced with tolower() macro - removed <string.h> include added irc_string.h include 
1999/07/18 (db) - re-arranged oper_flags, they now have their own int to play in 
1999/07/18 (db) - prettied up shows_ports - fixes in s_err.h s_err.c for those dumb client writers 
1999/07/18 (db) - moved restart code from ircd.c to restart.c (neph) 
1999/07/18 (db) - more header cleanups 
1999/07/18 (db) - more cleanups. show_servers only used by s_serv.c moved from s_misc.c -   to s_serv.c 
1999/07/18 (db) - more cleanups on h.h, - removed functions not even defined anymore, such as find_service... - moved channel definitons into channel.h where they belong 
1999/07/18 (db) - major changes to get rid of sendto_realops_lev - still bug in m_umode code oops. 
1999/07/18 (db) - interim checkpoint - sendto_ops_lev is gone now, replaced with sendto_ops_flags - still bug to fix, clients can set themselves +os . oops. 
1999/07/18 (db) - forgot listener name on stats P , oops 
1999/07/18 (db) - fixed missing whowas.h include in channel.c - added sendto_ops_flags sendto_realops_flags in preparation for -   removal of sendto_ops_lev and sendto_realops_lev. I've been meaning -   to do this one for ages. 
1999/07/18 (db) - fixed missing irccmp in s_serv.c - m_umode is still in a mess, but handles properly oper flags -   +s +w +k etc. does not understand local/remote Oper or +i yet 
1999/07/18 (db) - as pointed out by bleep, strncasecmp, strcasecmp aren't portable. -   changed all cases to use irccmp or ircncmp 
1999/07/18 (db) - added neph|l|m and bleep to version.c.SH and Hybrid-Team 
1999/07/18 (db) - added /stats P, I hate making it case sensitive, but its the logical place. -   deal. - hacked a prototype problem for now. *cough* in channel.h 
1999/07/18 (db) - a few more header cleanups - motd.c included channel.h, no need 
1999/07/17 (tomh) - remove conf from listeners 
1999/07/17 (tomh) - cleanup osdep stuff 
1999/07/17 (tomh) - build error fixes 
1999/07/17 (db) - viconf.c was broken for viklines form, copied most of the lockfile -   code from m_kline.c 
1999/07/17 (db) - unopered client doing stats o cored server. ooops. 
1999/07/17 (db) - rodder's fix + mine for get_client_name 
1999/07/17 (db) - removing sys.h and testing as I go.. hi ho... 
1999/07/17 (db) - removed sbrk() in ircd.c and s_debug.c -   still needs cleanup 
1999/07/17 (db) - removed now unused sys.h 
1999/07/17 (db) - remoeved a few obsolete Debug's 
1999/07/17 (db) - reconciled config.h.dist with config.h 
1999/07/17 (db) - passwd is a pointer to a "" not NULL when there is no passwd 
1999/07/17 (db) - oops missed dline_conf.c for removing sys.h 
1999/07/17 (db) - my bad. - fixed prototype in s_conf.h - fixed typo of password for passwd in s_conf.c 
1999/07/17 (db) - moved write_pidfile from s_bsd.c to ircd.c where it belongs - made it static.. These people were on crack. - removed a bunch of redundant defines in config.h/config.h.dist reconciled -   names in ircd.c to use only one #define not two - ditto with viconf.c which needs more work still 
1999/07/17 (db) - moved show_opers from s_misc.c to s_serv.c which is the only place it -   was being referenced from in the first place. duh. 
1999/07/17 (db) - more include fixes 
1999/07/17 (db) - merge collision, put back new P line handling 
1999/07/17 (db) - interim commit/checkpoint - cleaning up includes for dbuf - redid memory reporting slightly, still more to do - added new function to count memory usage in blalloc.c, not used yet! 
1999/07/17 (db) - forgot to add m_kline.h 
1999/07/17 (db) - fixed prototype for safe_write() 
1999/07/17 (db) - fixed const char * problem in m_unkline.c 
1999/07/17 (db) - fixed #includes 
1999/07/17 (db) - corrected type casting problems, mainly const char * - moved prototype for safe_write into s_conf.h 
1999/07/17 (db) - corrected const char 
1999/07/17 (db) - committed sidewnders changes to kline file handling -   we'll have to clean this up - committed listener P line change code in s_conf.c 
1999/07/17 (db) - added more memory count debug info to s_debug.c - removed some unused variables in viconf.c 
1999/07/17 (db) - added code to s_debug to report memory used by remote/local clients - ditto to client.c 
1999/07/17 (db) - added FLUD memory reporting - properly #ifdef'ed FLUD in list.c 
1999/07/16 (tomh) - yet another 
1999/07/16 (tomh) - unlink/relink P:line in rehash 
1999/07/16 (tomh) - undo change to Makefile.in 
1999/07/16 (tomh) - new test file 
1999/07/16 (tomh) - feh, removed extra -DNDEBUG 
1999/07/16 (tomh) - bah, C++ comments 
1999/07/16 (db) - rename some function names to make function clearer - moved prototypes into headers - made some functions static - added some needed comments 
1999/07/16 (db) - removed #ifdef HAVE_GET_RUSAGE, it still needs to be removed from configure - removed some debug counters that weren't terribly useful - always enabled stats r even without DEBUGMODE - moved prototype for send_usage() into s_debug.h 
1999/07/16 (db) - optimized get_conf_name - replaced char * with const char * for filename 
1999/07/16 (db) - more cleanups - removed unused function in FLUD code 
1999/07/16 (db) - how did this not get committed? Anyway, do not look at the class -   for a P line, do not add it to the conf item 
1999/07/16 (db) - fix for /stats H, its been broken for some time apparently ;-( - removed some old comments - changed a function to a static 
1999/07/16 (db) - even more cleanups. moved prototype from h.h to s_conf.h 
1999/07/16 (db) - cleaned up dline_conf.h, s_conf.c was not using prototypes from header 
1999/07/16 (db) - 1024 should be PATH_MAX , 1024 is a remnant of the original mess in m_kline 
1999/07/15 (tomh) - removed extra free_class in free_conf 
1999/07/15 (tomh) - bug fix 
1999/07/15 (tomh) - add listener code, cleanup of other stuff 
1999/07/15 (db) - use %d in "was connected for %d seconds" strings etc. instead of %lu 
1999/07/15 (db) - redid m_kline, moved conf file writing from m_kline into s_conf.c -   thus "hiding" the details of where the kline gets written.. -   Temporarily removed Shadowfax's LOCKFILE code until this settles down. 
1999/07/15 (db) - freeing local instead of remote 
1999/07/15 (db) - fixed core bug in m_kline.c, probably should add extra sanity test there -   REDUNDANT_KLINES was using aconf->name instead of aconf->user - cleaning up conf file generation etc. 
1999/07/15 (db) - don't delete .depend file on distclean 
1999/07/15 (db) - committed changes for SideWnder - removed older varargs check 
1999/07/15 (db) - added conf_connect_allowed() 
1999/07/15 (db) - #include <string.h> needed for memset() 
1999/07/14 (db) - rewrote send.c to use undernet sprintf_irc, - redid any %ld as %lu to take advantage of new sprintf_irc code - yes, I know it needs a prototype 
1999/07/14 (db) - oopsies... thought I had removed ircsprintf.c/ircsprintf.o 
1999/07/14 (db) - added header file for sprintf_irc 
1999/07/13 (tomh) - new file work in progress, cleanup s_bsd a little 
1999/07/13 (tomh) - cleanup error handling in s_bsd, work on listener in progress 
1999/07/13 (tomh) - cleaned up DEBUGMODE for hash_find_server 
1999/07/13 (tomh) - GPL + copyright for fileio.h 
1999/07/13 (db) - removed ircsprintf() - added undernet's sprintf_irc, renamed entry point to ircsprintf() - modified sprintf() to use ircsprintf() where possible 
1999/07/13 (db) - oops. had a missing continue in sprintf_irc.c 
1999/07/13 (db) - couple of cleanups, removed BOOT_QUICK BOOT_OPER, moved -   send() definitions from struct.h to send.h 
1999/07/13 (db) - cleaned up conf file handling, handled by read_conf_files() 
1999/07/13 (db) - bug in opers@server code fixed 
1999/07/12 (tomh) - removed log file as a client, BOOT_INETD BOOT_AUTODIE, cleanup rcs tags 
1999/07/12 (tomh) - removed log as client, BOOT_INETD, BOOT_AUTODIE, cleanup rcs tags 
1999/07/12 (tomh) - couldn't resist, more hash cleanups 
1999/07/12 (tomh) - cleanup hash code 
1999/07/12 (tomh) - clean up hash code 
1999/07/12 (tomh) - ackls I'm done now, I promise ;-) 
1999/07/12 (db) - unfortunately, EFnet still likes hostmasked servers... and this particular -   ugly mess of code is somewhat necessary to handle hostmasking. ick. -   Perhaps, it could be rewritten to be less offensive, but for now... 
1999/07/12 (db) - remoed unused variable - moved isbot to local part of client 
1999/07/12 (db) - only do bot checks on locally connecting clients 
1999/07/11 (tomh) - sockhost cleanup and a lot of other stuff 
1999/07/11 (tomh) - removed flush_cache, it was wrong and not needed 
1999/07/11 (tomh) - removed flush_cache 
1999/07/11 (tomh) - new file 
1999/07/11 (tomh) - included config.h here 
1999/07/11 (tomh) - fixed wrong name 
1999/07/11 (tomh) - fixed hostname copy bug 
1999/07/11 (tomh) - client.c 
1999/07/11 (tomh) - cleanup 
1999/07/11 (tomh) - changed depend target in makefile, minor bug fix in motd.c 
1999/07/11 (tomh) - changed .depend include, added prebuilt dependency file 
1999/07/11 (tomh) - bug fix 
1999/07/11 (tomh) - added assert.h 
1999/07/11 (tomh) - add release_client_dns_reply 
1999/07/11 (tomh) - HARD_FD_LIMIT? 
1999/07/11 (db) - redid motd handling completely. most of the motd handling is now -   done in motd.c -   motd handling includes, motd, oper motd, help file 
1999/07/11 (db) - redid BOTCHECK for new dns/auth any botcheck based on user given -   hostname has to be done in m_user and stored for later checking -   after user@host and I line lookup is done. 
1999/07/11 (db) - minor changes in motd code 
1999/07/11 (db) - fixed botch with SHORT_MOTD - fixed some spelling mistakes in comments in send.c tsk tsk 
1999/07/11 (db) - corrected BOTCHECK code - corrected FLAGS2_OPER_FLAGS 
1999/07/11 (db) - [11-Jul:15:24 Bleep] it's downright dangerous and wrong -   agreed ;-) 
1999/07/10 (tomh) - new test file 
1999/07/10 (tomh) - fixed username bug for servers 
1999/07/10 (tomh) - cleanup 
1999/07/10 (tomh) - Moved user.username and user.host to client struct. Chances are that this - change has introduced a few problems, it seems to work here, but needs to - be fully verified. 
1999/07/10 (tomh) - Changed unsigned long to unsigned int in client struct for rollups. See the - comment and associated test file in test for my rationale. The code that - calculates traffic density needs to be gone over and cleaned up, perhaps the - calculations should use another set of variables for this. I don't know if - using the client rollups is entirely suitable for the purpose, perhaps a - refreshed average (a vector of the last 5) would be better. 
1999/07/10 (db) - some tiny cleanups in ircd.c 
1999/07/10 (db) - fix for identd 
1999/07/09 (tomh) - fixed performance bug in cache expire 
1999/07/09 (tomh) - Changed resolver code to use reference counting instead of blind hostent - removal. This will ensure that if a client resolved we will always get - it's hostent. Currently we are saving the hostent for the life of the client, - but it can be released once the access checks are finished so the resolver - cache stays reasonably sized. 
1999/07/09 (db) - receiveK etc. have to be at least a long in client.h - ircd.c changes to fix HTM 
1999/07/08 (tomh) - removed pyr 
1999/07/08 (tomh) - removed cdefs.h remnant from old resolver code 
1999/07/08 (tomh) - new files 
1999/07/08 (tomh) - moved client dns/ip check to s_auth.c, fixed broken ip check code in s_bsd.c 
1999/07/08 (tomh) - minor optimization for match 
1999/07/08 (tomh) - fixup double defines 
1999/07/08 (tomh) - constify send, cleanup more dependencies 
1999/07/08 (tomh) - constify send 
1999/07/08 (tomh) - changed ts_val to time_t, looks like a duck - quacks like a duck... 
1999/07/08 (tomh) - chage ts_val to time_t 
1999/07/08 (db) - stop at first @ seen in username, it might be an email address -   but ircd only needs the username 
1999/07/08 (db) - sidewnder fix for install_ircd for use with new configure - added windewnder's mkconf script 
1999/07/08 (db) - removed unused tables in match.c =no one= was using these. I remember -   pulling these before, they must have come back in through chip's match.c ? - removed unused #ifdef in send.c 
1999/07/08 (db) - removed USE_VARARGS (Sidewnder) 
1999/07/08 (db) - put me out to pasture. tables are used. duh. backed out last change 
1999/07/08 (db) - one more change to autoconf for Sidewnder 
1999/07/08 (db) - neph's patch for [O] [o] and oper privs 
1999/07/08 (db) - loads of changes to add function prototypes for send.c functions -   all these files now include "send.h" 
1999/07/08 (db) - fixed goof in s_conf.h 
1999/07/08 (db) - fixed botch in s_user.c missing } - fixed compile whine in hash.c - adding send.h file (for Sidewnder) - adding modified send.c (for Sidewnder) - removed function prototypes for send-* from h.h (for Sidewnder) - multiple 'c' files will need addition of send.h to stop compile whining.. -   coming.... - commit stamp, automatically updated 
1999/07/08 (db) - fixed botch in s_user.c missing } - fixed compile whine in hash.c - adding send.h file (for Sidewnder) - adding modified send.c (for Sidewnder) - removed function prototypes for send-* from h.h (for Sidewnder) - multiple 'c' files will need addition of send.h to stop compile whining.. -   coming.... 
1999/07/08 (db) - cosmetic changes only 
1999/07/08 (db) - corrected some missing const 
1999/07/08 (db) - changes to centralize config.h ircd config files to one struct 
1999/07/08 (db) - blew away another lame #define in config.h - removed lame #ifdef correspoding to define in config.h removed 
1999/07/07 (tomh) - renamed get_sockhost to set_client_sockhost 
1999/07/07 (tomh) - little fixups 
1999/07/07 (tomh) - cleanup of sendheader code and macros for GotId NeedId 
1999/07/07 (tomh) - cleanup of sendheader code 
1999/07/07 (db) - rewrote how ident was parsed. 
1999/07/07 (db) - removed last remnant of old configure files 
1999/07/07 (db) - removed MIN/MAX replaced with IRCD_MIN IRCD_MAX 
1999/07/07 (db) - last of Sidewnders autoconf changes 
1999/07/07 (db) - fixed two problems with auth code in s_bsd.c fd == -1 cores server - added /msg opers@server.name for messaging all opers at once -   needs better formatting. Perhaps should be restricted to opers only? 
1999/07/07 (db) - committed Sidewnders new autoconf changes 
1999/07/07 (db) - commited fixes for neph's stats p change to show O or o 
1999/07/07 (db) - allow /msg opers@server syntax only to global opers - fixed minor bug in s_auth.c 
1999/07/07 (db) - added a missing autoconf file 
1999/07/06 (tomh) - updated comments 
1999/07/06 (tomh) - changed auth code to use new AuthRequest 
1999/07/06 (db) - trimmed int to unsigned char in fdlist.h 
1999/07/05 (db) - use GetPrintableaConfItem() 
1999/07/05 (db) - updated example.conf with new oper flags H/D 
1999/07/05 (db) - memmove isn't even =used= in mtrie_conf.c anymore 
1999/07/05 (db) - fixed msg.h to account for no more OPER_REHASH etc. - no more ANTI_IP_SPOOF removed obsolete #ifdef's 
1999/07/05 (db) - converted bcopy to memcpy 
1999/07/05 (db) - backed out premature channel.c change 
1999/07/04 (tomh) - more cleanup, only call delete_resolver_queries when there are outstanding requests 
1999/07/04 (db) - rudimentary error checking in s_conf.c, flag non 0 classes that -   default to class 0 
1999/07/04 (db) - fixed stupid typos in s_conf.c 
1999/07/04 (db) - added D and R flags in oper flags of port of O line, for /rehash and /die -   /restart is considered a form of /die and needs same privs 
1999/07/03 (tomh) - rework res.c, implement resolver callbacks, change hostent generation code, cleanup of other code that uses the resolver 
1999/07/03 (tomh) - removed netdb.h include 
1999/07/03 (tomh) - removed chkconf target 
1999/07/03 (tomh) - more dependency hacks 
1999/07/03 (tomh) - commit merge, must have missed this last night 
1999/07/03 (tomh) - cleanup some globals, header dependencies 
1999/07/03 (tomh) - cleanup dependencies 
1999/07/03 (tomh) - clean up class macros, includes 
1999/07/03 (tomh) - added -DNDEBUG to release CFLAGS 
1999/07/03 (tomh) - a bit more dependency cleanup 
1999/07/03 (db) - removed unnecessary ASYNC' defines in struct.h 
1999/07/03 (db) - fixes to res.h for bsd 
1999/07/03 (db) - as pointed out by neph, in check_fdlists, IsOper(cptr) should be IsAnOper(cptr) - local opers would never go on busycli_fdlist 
1999/07/02 (db) - m_admin was broken (sidewnder) 
1999/07/02 (db) - found bug in TS 0 detect code in channel.c duh 
1999/07/01 (db) - removed chkconf from tools, moved most of its functionality into -   s_conf.c of ircd itself. chkconf.c was always out of date anyway. 
1999/07/01 (db) - removed ANTI_SPAMBOT_EXTRA too much CPU for too many false positives 
1999/07/01 (db) - more removal of globals, this time in m_htm 
1999/07/01 (db) - combined all the split options into NEED_SPLITCODE in config.h 
1999/07/01 (db) - bunch of changes to get rid of global m_set options, and put them -   all into one structure. I've been meaning to do this for months. - rewrote how fdlist's work, still needs more testing, but appears -   to be major win in CPU. Consider building up the FD_SET for -   default_fdlist and simply using that FD_SET in select() (similar for POLL) -   then the select() loop becomes a memcpy() of default_fdlist FD_SET -   this would also imply dns/ident fd's enter and leave the default_fdlist - removed the dup2 loop that was being used to "keep local[] filled at bottom" -   I thought I removed this already. dup in a loop is going to be an -   expensive sys call, I don't think its worth the bother, especially on -   a bigger server. 
1999/06/30 (db) - removed unnecessary include of fdlist.h in m_gline.c m_kline.c - removed global definition of add_gline() in h.h 
1999/06/29 (tomh) - cleaned up attach_iline a bit 
1999/06/29 (db) - finished slowaris's mods, removing obsolete bot checks, cleaned up a lot - re-arranged order of privmsg testing, slightly optimized for channel -   check with first char &# this will favour channel privmsgs over client 
1999/06/29 (db) - check for valid alphanum as first char of username 
1999/06/29 (db) - botrject only needs one argument now. functionality of gcos botcheck -   can mostly be done in X lines anyway. "X:/msg*hello:eggdrop" 
1999/06/28 (db) - Removed some obsolete bot checking - Moved privmsg to check channel first then nicks, since most privmsgs -   are to channels. - done by rjp (Slowaris) 
1999/06/28 (db) - Found serious stupid bug in m_gline.c - Encapsulated as much as possible of gline code into one file 
1999/06/27 (tomh) - removed sock.h from dependency list 
1999/06/27 (tomh) - removed empty unused header 
1999/06/27 (tomh) - remove sock.h (unused) 
1999/06/27 (db) - removed obsolete comment 
1999/06/27 (db) - redid m_set parser with code from slowaris rjp@wpmedia.com 
1999/06/27 (db) - redid how klines/glines were done - cleaned up yet again, s_user.c 
1999/06/27 (db) - patchlevel needed upping - redid s_user etc. some more to handle bans better, and REJECT_HOLD 
1999/06/27 (db) - bleah forgot to increment a counter 
1999/06/27 (db) - Quick fix for rehash conf file dumping to take account new aconf format 
1999/06/26 (tomh) - cleanup includes for resolver 
1999/06/26 (tomh) - clean up dependencies, clean up resolver (initial) 
1999/06/26 (db) - removed yet more "noise" from config.h made some defines always on - cleaned up register_user some more 
1999/06/26 (db) - removed more "noise" from config.h - removed IDENTD_COMPLAIN completely, as same functionality can be -   done with I line flags now - simplified rights test in m_kline() - ensure local ops don't get the priv flags in port field they shouldn't 
1999/06/26 (db) - oops. 
1999/06/26 (db) - more cleanups in ... you got it s_user.c - removed some dead defines in config.h - added max reject held client counters - make sure numeric.h has definitions for now removed defines 
1999/06/26 (db) - found one aconf->name instead of aconf->user in m_kline.c this broke klines - testline was reporting ->name instead of user for K lines 
1999/06/26 (db) - Yet more s_user.c cleanup blech. will it ever end? 
1999/06/26 (db) - Still more cleanups to s_user.c register_user() getting there... 
1999/06/26 (db) - Even more clean up in s_user.c register_user 
1999/06/26 (db) - Added two missing includes to make it compile. 

version hybrid-6-b87 26-Jun-1999
* enough changes to merit a patchlevel update
* rewrote s_user.c register_user
* removed a ton of useless defines, made them default
-Dianora
	
version hybrid-6-b86 2[2-5]-Jun-1999
* never released	
-Dianora
	
version hybrid-6-b85 21-Jun-1999
* worked on serial number some more..
* fixed a few compile warnings related to the s_serv.c split
-Rodder
* Massive changes to conf formatting, preformatted user@host entries
* fixed Q lines to allow multiple user@host separated by ,
* removed obsolete resolver code
* removed obsolete options in config.h
* split s_serv.c into several smaller pieces
-Dianora

version hybrid-6-b84 14-Jun-1999
* removed more dead code for now (R lines)
* redid Q lines to allow user@host exceptions
-Dianora
	
version hybrid-6-b83 12-Jun-1999
* removed TIMED_KLINES entirely
* fixed stupid in s_conf.c
-Dianora
* Don't send 479 errors for SJOIN to bogus channel
-Rodder

version hybrid-6-b82 12-Jun-1999
* added more rudimentary block allocator debugging	
-Rodder

-Dianora	
version hybrid-6-b81
* only show hacked ops if from this server to an opless channel
* added PACE_WALLOPS wallops is not a substitute for a channel
-Dianora

version hybrid-6-b80
* fixed "cannot join" numerics to display full error messages
* fixed ERR_BANLISTFULL to include channel name and banid
* reject non-RFC channel names from clients and servers instead
  of truncating (new numeric 479 coordinated with the other major nets)
-Rodder

version hybrid-6-b79
* fixed compile problems if SPLIT_PONG was undefined
* more cleanup
* moved TIMED_K's to broken section of conf
-Rodder

version hybrid-6-b78   2-Jun-1999
* renamed mycmp() to irccmp() and myncmp() to ircncmp()
-Rodder

version hybrid-6-b77   2-Jun-1999
* more minor cleanup
-Rodder
* duh. just realized that hostip is now obsolete because of the way
  IP klines are being done. removing it saves 15 bytes per local client.
-Dianora

version hybrid-6-b76   28-May-1999
* make sure mtrie returned aconf is a CONF_KILL in s_serv.c
* take care of ~*@some.host.at.tld case
-Dianora

version hybrid-6-b75   26-May-1999
* '*' is not a legal IP. corrected is_address code.
* corrected possible buffer overflows in m_knock, m_invite
* server auto sets +nt on new channels.
* was never setting ip/ip_mask on m_kline ip klines, so
  ip /quote kline klines needed rehash to take effect.
-Dianora

version hybrid-6-b74   19-May-1999
* backed out incorrect change in dline_conf.c
* Corrected sendto_ops in send.c that was recursive in sendq errors,
  this one could have restarted server in infinite loop. (Raistlin Mejere)
* Using variant of soleil's is_address() code
* Fixed handling of kline/dline in s_serv.c s_bsd.c s_conf.c 
-Dianora

version hybrid-6-b73   15-May-1999
* attempt to workaround 64bit Solaris gcc-2.8.1 bug
* more compile cleanup for obscure config options
-Rodder

version hybrid-6-b72   15-May-1999
* don't allow SJOIN to & local channels.	
* restored hybrid-5 m_names code	
* Fixed send.c to be rfc compliant. 
* kick of client who joined through a ban due to a +e, has +e removed by server
* misplaced returns in mtrie_conf.c fixed.	
-Dianora

version hybrid-6-b71   12-May-1999
* corrected mtrie_conf.c problems
* added stats o flags
-Dianora

version hybrid-6-b68   10-May-1999
* corrected a few missing tests in mtrie_conf.c
-Dianora

version hybrid-6-b68   8-May-1999
* more cleanup
* RedHat 6.0 / glibc fixes
* Y2K fixes.  All dates that were YYMMDD are now YYYYMMDD.  Affects
  SEPARATE_QUOTE_KLINES_BY_DATE and GLINE code.
* SEPARATE_QUOTE_KLINES_BY_DATE wouldn't compile
-Rodder

version hybrid-6-b67   9-May-1999
* fixed broken LIMIT_UH code
-Dianora

version hybrid-6-b66   8-May-1999
* Added TESTLINE looks for given user@host,ip returns info
  on any found I line or K line for that user.
* found and fixed major IP kline bug. 
* O lines can have an optional flags field, to set default oper flags	
-Dianora

version hybrid-6-b65   8-May-1999
* changed ANTI_DRONE_FLOOD and JUPE_CHANNEL to undeffed by default
* servers and opers can no longer trip the drone detection
-Rodder

version hybrid-6-b64   8-May-1999
* code clean-up...
-Rodder

version hybrid-6-b63   6-May-1999
* SPY_LEVEL notices for clients attempting to join juped channel
* sendto_realop notices when mode +/-j #channel is used
-Dianora

version hybrid-6-b62   4-May-1999
* Added ANTI_DRONE_FLOOD code	
* Added Channel jupe code, Q line of form Q:\#channel:reason
  jupes that channel locally only on this server.
* '|' character in kline reason stops everything afterwards from being seen
  by non opers.
-Dianora

version hybrid-6-b61   2-May-1999
* fixed major bug in mtrie code. I lines would be treated as K lines
  in some cases. 2-May-1999
-Dianora

version hybrid-6-b60   29-Apr-1999
* if server split time is 0, i.e. split code is disabled, dont'
  put the server into split mode, this can leave 0 member channels
  lying around after a split.
* recoded NO_JOIN_ON_SPLIT, all cleaned up.	 
-Dianora

version hybrid-6-b59   17-Apr-1999
* missing ac2ptr_is_NULL check in m_ltrace
-Rodder
* if client is being spoofed in I line, don't show real IP to non opers
  in trace or stats L
* consistently use 127.0.0.1 for spoofed/oper ip's	
-Dianora

version hybrid-6-b58   17-Apr-1999
* SOLARIS7 64bit USERS: this code appears to tickle a bug in gcc and egcs
  ONLY on 64-bit Solaris7.  You must compile on a 32bit kernel, then you
  can run the ircd binary on 32bit or 64bit.  Or reinstall your ircd
  machine as 32bit.  Or buy SunPro C.
* Created NO_JOIN_ON_SPLIT_SIMPLE.  Totally disables the JOIN command
  for non-opers while split.  Doesn't care if the channel existed "before"
  or not.
* server notices are sent to +s clients when entering or leaving "split-mode"
-Rodder

version hybrid-6-b57   28-Mar-1999
* integrated ChangeLog with README.hybrid
* updated Hybrid-team and version.c.SH to reflect the current core team
* updated INSTALL file to match current install_ircd script
* updated all Makefiles with new makedepend info    
* massive cleaning of the doc subdir
* changed defaults in config.h for public consumption
* install_ircd now installs viconf and mkpasswd
* added a couple of ifdefs to help compile under cygwin32b20.1
* added simple.conf to doc directory
* fixed rcs_version string in mtrie_conf.c and s_debug.c
* added SPLIT_PONG...  sends a PING at the end of m_server_estab(),
  checks for PONG from a server before resetting server_was_split.
* commented out malloc-2.6.1 in Makefile.in.  There is a doublefree
  somewhere, which most system mallocs can handle, but this one can't.
* updated m_info in s_serv.c to include all the new defines in config.h
-Rodder
* fixed mtrie_conf.c kline code
-Dianora

version hybrid-6-b54   23-Mar-1999
* rewrote kline code (mtrie_conf.c), no more reverse, its faster now
  and ... works
* no more arbritray spoofs. too many complaints, it spoofs as 
  oper.server.name now
-Dianora

version hybrid-6-b54   19-Mar-1999
* fixed SLAVE_SERVERS in LOCOPS
-Dianora

version hybrid-6-b53   17-Mar-1999
* fixed misplaced #ifdef's and } causing undef'ed ANTI_SPAMBOT_EXTRA to fail
in s_serv.c s_user.c
-Dianora
* optimization in can_send() in channel.c
-orabidoo


version hybrid-6-b52   15-Mar-1999
* userlength oopsies with usernames
* added fix by comstud to s_misc.c remove_dependents() unnecessary WALLOPS
-comstud/orabidoo
* fixed mtrie_conf.c bugs
* added ip to /trace (help with virtual host cloners)
-Dianora

version hybrid-6-b51   11-Mar-1999
* added WHOIS_WAIT to info output 
-Rodder
* was using idented username instead of ~ name for unidented clients
  caused weird bug. s_conf.c attach_Iline()
* clients with > I line were still being limited by client per IP limits.
* had BUFSIZ instead of BUFSIZE in strncpy() in s_serv.c broke m_unkline
* fixed "Bad Nick" problem. was harmless but stupid. users who used
  a nick beginning with '~' would trigger this one. Had Q line code in
  slightly wrong place. s_user.c m_nick()
* fixed truncation for username, affects k-lines both unidented, idented.
  s_user.c register_user()
* Added sendto_realops notification of spoofed IP's. should be SYSLOG
  or logged, for proper backtracking if necessary IMO
* fixed CLUSTER code, still needs thorough testing. s_serv.c send.c
-Dianora

version hybrid-6-b50   24-Feb-1999
* report_specials was showing aconf->host not aconf->user
* return ERR_TOOMANYTARGETS if privmsg is used with multiple targets
-Dianora

version hybrid-6-b49   19-Feb-1999
* botch with POLL code fixed, forgot to test it on solaris after
  adding back fdlist code *sigh* 
-Dianora

version hybrid-6-b48   19-Feb-1999
* allow all opers to see stats c IP's
* added two more examples to Q lines, crush and cwush
* added fix from syrk (Christophe Kalt) in res.c
-Dianora

version hybrid-6-b47
* oops I don't know what happened to this one, but irc.colorado.edu
is running this one oops.

version hybrid-6-b46   15-Feb-1999
* put fdlist code back in. Ok, I goofed. mea culpa.
* #ifdef USE_SYSLOG missing in ircd.c
* Ultrix'ed the Makefile.in as per Ian
-Dianora

version hybrid-6-b46   15-Feb-1999
* FAST_FD_ISSET was causing the high CPU, *sigh* ok ripped out for now
* Fixed buffer overflow problem in m_unkline() s_serv.c, if a long long
  kline was in the kline.conf file, it cored the server. (reported by Phisher)
-Dianora

version hybrid-6-b45    9-Feb-1999
* may as well use the same numeric for not being able to join a channel
  as ircnet uses changes to channel.c, s_err.c, s_err.h, numeric.h
* added small net user count to split end detection
* removed lame sleep()
* try non blocking reads of all connected servers, local opers
 then read_message()
-Dianora

version hybrid-6-b44    2-Feb-1999
* remove trailing white space on H/L lines (just for Gersh)
* (s_bsd.c) fixed a botch with rr = 0 causing bizarre behaviour under solaris
  (ping time outs etc.) due to a mis-cut and paste from the select code
* (s_bsd.c) redid read_packet() to use msg_ready again
* (s_bsd.c) removed unnecessary default_read_set default_write_set, that was a
  remnant from a failed experiment with pre-set up fd set's, it was
  just slowing down the code for no reason.
* (s_misc.c) redid get_client_name() slightly to be consistent,
  idented names should not have ~ non-idented names should have ~
  lets not be inconsistent with (+) prefixes for idented names
-Dianora
* changed example.conf to remind people to have their virtual address in
  the M: line for outbound connects
* fixed the STATS_NOTICE invalid directive.  made it #define by default.
-FlashMan
* channel has to be +ip to show invite notices "p is for paranoid
  and thats good enough for me" too many complaints. I think this
  is a reasonable way of doing it for now.
* s_bsd.c moved some code around in in connect_inet() to remove
  a redundant if(specific_virtual_host). Also moved the error check
  on socket open logically where it should be.
* fixed the USE_FAST_FD_ISSET botch I introduced, corrected an unforseen
  error thats been there for a while.
* added a little more useful information in the bug report in blalloc.c
  I added a report of what size of block is being freed.
* I added a horrible kludge to ircd.c/struct.h to bit mark clients
  that have already been exited. It appears that somehow, the same
  client is being examined twice and exited twice =occasionally=
  Because of the block allocator, its safe to check the bit after free
  *kludge* I really didn't want to admit I coded that.
* Don't allow non local opers to see spoofed I lines. 
-Dianora

version hybrid-6-b43    24-Jan-1999
* reworked io_loop dropping CPU load significantly, this is still something 
  that needs to be looked at.
* allow stats p even if LTRACE is defined, its habit for users even if
  it is redundant.
* I liked WINTRHAWK RPL_TRACESERVER report, so thats now the default.
* Added a test in DEBUGMODE to ensure fd == 2 was never read. This
  won't happen with select() read, but can if read_messages is
  called directly. Might as well be paranoid about it now. This one
  caused ircd to abort when compiled with DEBUGMODE in b42
-Dianora

version hybrid-6-b42    24-Jan-1999
* removed [IP] being sent in CONNECT in connect burst
* removed [IP] if seen in m_links from prying eyes of users
-Dianora

version hybrid-6-b41    23-Jan-1999
* removed USERNAMES_IN_TRACE default is always on now
* get_client_name() will default to sptr->username if sptr->user->username
  is null
* made config.h/config.h.dist consistent again, went back to stock defaults
-Dianora

version hybrid-6-b40    21-Jan-1999
* redid m_invite for better sanity testing, you can no longer
  invite users to a non-existent channel for example.
* Don't send SJOIN's for zero length MODE_SPLIT channels (Mortiis)
* redid m_sjoin for MODE_SPLIT channels treat it as a brand new channel
* fixed broken NO_JOIN_ON_SPLIT to only care about channels that had
  existed before a split

-Dianora

version hybrid-6-b39    20-Jan-1999
* sanity test m_gline parc argument count, older hybrid-5 servers
  with buggy GLINE can core new hybrid-6 correct GLINE code 
* Forward the GLINE even if GLINE is not defined on this server.
  No point having GLINE for opers on a HUB for example, and servers
  that wish to opt out of others placing GLINE's can still relay it.
* keep a link list of 0 member channels created on a split
  if PRESERVE_CHANNEL_ON_SPLIT or NO_JOIN_ON_SPLIT is defined
  remove all 0 member channels when split heals
  redid NO_JOIN_ON_SPLIT to only care about channels that once existed.

-Dianora

version hybrid-6-b38    20-Jan-1999

* bumped version up to b38
* fixed bugs with "reason" code in ircd.c
* duplicated config.h to config.h.dist
* fixed bug in ircd.c with SEND_FAKE_KILL_TO_CLIENT
  if IDLE_CHECK not defined
* Added new defines to m_info() in s_serv.c
* Started adding code to deal with user@IP I lines to s_conf.c

-Dianora

============================================================================
|        Mon Jan 18 00:13:39 PST 1999	Jake Khuon <khuon@GCtr.Net>        |
============================================================================

* b37mod1

[1] Added the following options:

	IDLE_IGNORE
		When used in conjunction with IDLE_CHECK will prevent the
	        server from idle'ing clients connected from the listed IP#s. 
	        This should probably be moved into a conf file entry at
	        some point in the future.
	
	SEND_FAKE_KILL_TO_CLIENT
		Make the client think it's being KILL'ed.  This was
		originally intended to prevent clients from reconnecting to
		the server after being dropped for idleness.  It can
		probably be used for other events too.  This really only
		works well if the client was compiled with
		QUIT_ON_OPERATOR_KILL which was mandatory policy on
		UMich.Edu hosts.

	LTRACE (Limited TRACE)
		Reports only link and oper traces even when O:line is
		active. Displays only Oper, Serv, Link, and Class reports
		even if the O-line is active.  Useful for just showing
		pertinent info of a specific server. Note however that if
		the target server is not running this option then you will
		still receive a normal trace output.  Defining this will
		remove "STATS p" funtionality since the two are basically
		redundant.

	LWALLOPS
		This is actually a compatibility command which really calls
		m_locops().

	STATS_NOTICE
		Notify opers on STATS request.  Some people find this
		invasive and with the STAT command on PACE throttle the
		server shouldn't suffer but lusers stat for different
		reasons and many times it's been a prelude to some other
		form of attack.  Wrestle with your own morals before
		defining.

	SHOW_FAILED_OPER_ID
		If FAILED_OPER_NOTICE is defined, also notify when a client
		fails to oper because of a identity mismatch (wrong host or
		nick)

	SHOW_FAILED_OPER_PASSWD
		If FAILED_OPER_NOTICE is defined, also show the attempted
		passwd.  Once again, this may be morally offensive.

	WINTRHAWK
		Enable WintrHawk's style of reporting things.  This is most
		evident in TRACE and LTRACE which won't report idletimes
		otherwise.


[2] Bugfixes/changes:

	Fixed *_WHEN_SPLIT bug whereby a server was still considered split
	even though the network had reached SPLIT_SMALLNET_SIZE (but hadn't
	yet surpassed it).

	Added capability for defining OPER_UMODES, LOCOP_UMODES, and
	DEFAULT_SERVER_SPLIT_RECOVERY_TIME from config.h.

	Fixed m_trace() so that it now reports correct idletimes and added
	WINTRHAWK styling option.

	Updated opers.txt with mod1 commands.

	Added a ChangeLog |8^)

	Added some code for K-line files but it's not yet functional
============================================================================


version hybrid-6-b37    13-Jan-1999

* removed M: line port & address activation on startup
  you *must* use at least one P: line in your config file now -- FlashMan
* completely rewrote get_client_name() to clean up the conditionals mess
  makes things look prettier overall -- FlashMan
* RPL_YOURHOST is now given to the client as server_name[sockhost/port]
  that the client connected to -- for virtual addresses and such -- FlashMan
* Removed SHOW_UH define from config.h -- no longer needed -- FlashMan




---------------------------------------------------------------------------
+hybrid-6bXX (12/24/1998)
* NAMES now only works for a single target
* WHOWAS now only works for a single target
* For server compiled with NO_CHANOPS_WHEN_SPLIT, the server now starts
  up in the same state as if it was split--not allowing chanops.
* U: lines, server cluster lines.. see example.conf (Dianora)
* applied a pile of fixes for alphas made by jailbird, Dustin Marquess
 (jailbird@alcatraz.fdf.net)
* non chanops cannot see +e
* removed ANTI_IP_SPOOF (Dianora)
* redid semantics of LITTLE_I_LINES. Clients who are i lined
  can be opped, they can do everything a normal op can do,
  but cannot op anyone else (Dianora)
* removed REJECT_IPHONE code and refined X line code (Dianora)
* fixed bad dns problem (kalt)
* fixed m_topic (Dianora)
* fixed m_motd oper notice in the wrong place (Dianora)
* fixed m_lusers, added send_lusers() (Dianora)
* Fixed install script to try to create IRCDDIR if it doesn't exist
* non-opers can now /trace nickname properly (Rodder)
* These commands are flood controlled: VERSION, INFO, LINKS, STATS, HELP,
  LUSERS, ADMIN, MOTD, WHOIS (remote only)
* These functions are local-only for non-opers:
  INFO, LINK, STATS (except 'p'), HELP
* removed pacing from m_time() (Dianora)
* fixed remote m_info() for opers (Dianora)
* added OPER_MOTD code, when oper opers up they get an unique motd (Dianora)
* track maximum dbuf usage in stats Z
* OS/2 mods from Roger Haskins (nth.tech@iname.com) (Rodder)
* spare_fd kludge to fix rehash DNS on Solaris (Rodder)
* fixed stderr logging (ircd -s) for report_error() when SYSLOG undef'd (Rodder)
* ircd now understands .include "filename" in ircd.conf file (Dianora)
* modified configure.in for use with zlib (Rodder)
* added CAPAB code, understands EX ZIP QS (orabidoo/Dianora)
* reworked set_mode() completely in channel.c (orabidoo/Dianora)
* privmsg/notice @#channel will send to all chanops
* added +e (orabidoo)
* Q lines are back, quarantine nick, X line reject gecos info (Dianora)
* allow users who are invited to walk through any bans/limits (dr)
* disallow class -1 in conf file (dr)
* allow mode outside channel to see mode limit (dr)
* added knock command to ask for invites to +i channel (dr)
* disabled the ability to set a ban including a prefixed colon (Dianora)
* added kline matching on ip (CIDR) you can now kline
  user@ip.ip.ip.ip/mask (Dianora/good)
* d-line now recognizes CIDR notation as well (Dianora/good) 
* added ANTI_SPAMBOT_EXTRA (read config.h) added heuristics to catch
  spambots (Dianora)
* added ANTI_SPAM_EXIT_MESSAGE no quit message from client, if client
  is less than 5 minutes on irc (ThaDragon)
* unkline will unkline temporary klines now as well (Dianora)
* added oper priv field in normally unused port field of O line
  possible flags "ORUGT"
  K enables, k disables, local kill and kline 
  O enables, o disables, global kill,
  R enables, r disables, remote operator commands, squit/connect
  U enables, u disables, unkline
  G enables, g disables, gline
  N enables, n disables, the use of umode +n
  defaults for global O if no flags is OKRUG, for local o, KU
  with K flags not being shown normally, only k flag (Dianora)
* E lines replaced by ^ in front of username in I line
* F lines replaced by > in front of username in I line
* B lines replaced by & in front of username in I line
* "^>&" can be combined with any combination of "+!-" characters (Dianora)
* = as a prefix char will spoof that user, see example.conf (Dianora)
* will not allow any user with username including '!' '*' '?'
  or high bit/control characters to user the server (Dianora)
* added LIMIT_UH code (Dianora)
* fixed missing USE_SYLOG in ircd.c (ThemBones)
* use Count.local instead of sptr->fd in s_user for SET MAX (ThemBones)
* reworked s_err.c/numeric.h (Dianora)
* added hash debug on /quote hash (Dianora)
* report user doing /motd, removed STATS_FLAG (Dianora)
* added delay between motd requests (Dianora)
* fixed REJECT_HOLD code, fripping backwards if (Dianora)
* added +-! special I line prefix character ($ is not applicable to hybrid)
  (comstud/Dianora)
* ripped out dich_conf replaced with mtrie_conf (Dianora)
* added /quote set autoconn ALL 0/1 enable/disable autoconns
* added /quote set autoconn servername 0/1 enable/disable this server
  or /quote set autoconn ALL 0/1 enable/disable all autoconns (Dianora)

-----------------------------------------------------------------------
see doc/ChangeLog.old for changes in older releases

