$Id: Changes1.8,v 1.58 2011/11/10 22:07:25 thommey Exp $

Eggdrop Changes (since version 1.8.0)

    _____________________________________________________________________

1.8.0 (CVS):

  - Fixed the format specifier for the Tcl [traffic] command.
    Found by: Vertigo / Patch by: thommey

  - Added missing read trace flag to the nick-len variable trace after
    being unset to make the trace be removed properly on unload.
    Found by: Dopsy / Patch by: pseudo

  - Fixed a bug in the mainloop for Tcl threads which is now
    also being used as vwait/update recursion mainloop.
    Patch by: thommey

  - Ran autotools.
  - Work around Tcl8.5.10 bug 3371644 (strings starting with # could crash
    in Tcl_ConvertElement()). TCL_DONT_QUOTE_HASH can be used to work
    around it, as long as the string is not passed to Tcl_Eval().
    Found by: Austin
  - Use the autoconf macros AC_LANG_PROGRAM/AC_LANG_SOURCE for sourcecode
    to avoid warnings in autoconf >= 2.68.
    Patch by: thommey

  - Make sure to account for null termination when using Tcl_ScanElement
    to generate a string representation of a list using Tcl_ConvertElement.
    A behavioural change in Tcl8.5.10 revealed this bug.
    Found by: various / Patch by: thommey

  - Moved variable declarations to conform to C89 (beginning of blocks only).
    Found by: Anon-e-mouse / Patch by: thommey

  - Documented a .+ban/+exempt/+invite feature allowing to make the hostmask
    sticky by prefixing the comment with '*'.
    Found by: Robby / Patch by: pseudo

  - script listen sockets with the pub flag no longer perform ident lookups
    Found by: FireEgl / Patch by: thommey

  - Fixed a bug with connecting to numeric addresses when compiled with
    --disable-ipv6, reintroduced with a recent sync between branches.
    Found by: skydrome / Patch by: pseudo

  - Fixed statuslog documentation.
    Found by: ziplock / Patch by: pseudo

  - Fixed a bug with [channel get] returning types instead of values for
    udefs.
    Found by: Robby / Patch by: pseudo

  - Check for pending data on SSL sockets even when select() reports the
    descriptor's not readable.
  - Allow moving write buffers for SSL sockets.
    Patch by: pseudo

  - Added missing message for incoming telnet connections.
    Found by: Robby / Patch by: pseudo

  - Changed the prototype in module.h for check_tcl_event
  - bind evnt return value now ignored for non-signal events as documented
    Found by: Robby / Patch by: thommey

  - Reran autotools
  - Clarified --with-tcl* usage in configure and mentioned tcl-dev packages.
  - Fixed some section numbering in doc/COMPILE-GUIDE.
    Patch by: thommey

  - Added a little hack to send starttls before password exchange during the
    initial handshake.
    Patch by: pseudo

  - Fixed a problem with sharing causing starttls to fail.
    Found by: DarkReap1
  - Moved STARTTLS early in the bot link process and synchronized the
    handshake.
  - Made it possible for ssl handshakes to complete even without data to be
    sent on the channel.
  - Fixed an ancient bug resulting in sending uninitialized strings when
    sharing bot addresses.
  - Enabled (user)file sending over ssl.
    Patch by: pseudo

  - Fixed a problem with resolving hostnames when compiled with IPv6 disabled.
  - Made server.mod report connection failures properly.
    Found by: Arkadietz / Patch by: pseudo

  - Fixed getudef() to return intptr_t instead of int to prevent crashes on
    64-bit systems.
    Found by: izy` / Patch by: pseudo

  - Fixed a bug in (u)timers which could lead to invalid memory access.
    Found by: DarkReap1 / Patch by: thommey

  - Made it possible to specify ssl independently for telnet and user ports
    when modifying bot addresses.
  - Changed the syntax of .chaddr and .+bot to use space as a port separator
    instead of ':'.
  - Changed the syntax of server list entries to enclose IPv6 addresses in
    square brackets, instead of using a comma to separate the port.
    Patch by: pseudo

  - Fixed dcc_telnet_pass() to not use a constant string with fingerprint
    authentication, because strip_telnet() may attempt to write to it later.
    Found by: grawity / Patch by: pseudo

  - Modified tcl_channel_get to return a flat list of all channel settings
    and their values when called without a setting argument.
  - Added two new Tcl commands: [chansettype] returning setting types and
    [getudefs] listing user defined channel settings.
    Patch by: pseudo

  - Added optional count argument to Tcl timer and utimer to allow them run
    more than once.
    Patch by: pseudo

  - Renamed the vhost Tcl variable to vhost4 as it is in the documentation.
    Patch by: pseudo

  - Removed -mwin32 on Windows. It's no longer necessary and causes problems
    with Cygwin 1.7.
    Patch by: Kirben, pseudo

  - Removed few wire.mod leftovers. Removed IRC_FUNKICK.
    Patch by: pseudo

  - Performed some cleanup. Removed some obsolete config aliases.
  - Added missing parts of the documentation. Updated news and features
    for 1.8.
    Patch by: pseudo

  - Added -lcrypto when probing for -lssl in --with-ssllib
    Patch by: pseudo

  - Removed the never-give-up, sort-users and kick-fun/ban-fun variables.
    Sorting users shouldn't be a challenge for CPUs nowadays. The rest are
    rarely used and can be scripted.
    Patch by: guppy

  - Removed wire.mod and all references to it. Botnet and partyline encryption
    are now available using ssl.
    Patch by: guppy

  - Modified SIGQUIT handler to restart the bot by default.
  - Added support for evnt bind procs to cancel default signal actions.
  - Removed the die-on-sighup and die-on-sigterm variables.
  - Added a new bind type DIE triggered before a clean shutdown.
  - Changed the exit status on clean shutdown to 0.
    Patch by: pseudo

  - Clarified the OpenSSL version requirements.
  - Rewrote open_telnet() to make it more useful.
  - Replaced some calls to open_telnet_raw() with open_telnet().
    Patch by: pseudo

  - Added few autoconf checks for ssl.
  - Added tls to tcl_status()
    Patch by: pseudo

  - Added full SSL support including Tcl commands.
  - Added support for certificate authentication.
  - Added support for botnet and partyline encryption using ssl.
  - Documented the new features and commands.
  - Fixed add_server() problems with IPv6 addresses in the server list.
    Patch by: pseudo

  - Fixed dns.mod on QNX6/Mac OS X/Solaris
  - Rewrote dns.mod's autoconf checks to detect the resolver library properly
    on Darwin/Solaris.
  - Added -lsocket to the list of libraries, searched for res_* functions, in
    order to support QNX6.
    Patch by: pseudo

  - Altered the permission check on the pls/mns ban/exempt/invite commands
    from USER_MASTER to USER_OP to allow global operators to set global bans.
    Patch by: pjb

  - Removed the unrecognized options warning when configuring modules.
  - Modified -v output and .status display configure options.
    Patch by: pseudo

  - Added the process and parent pids to .status output. Increased the
    precision of cpu time reporting.
  - Added a new Tcl command 'status' to provide access to cpu/memory/cache
    information now and some more in the future.
    Patch by: pseudo

  - Fixed some problems with IPv6 autodetection and system headers.
    Patch by: pseudo

  - Made some corrections to the contributors list, removed a duplicate entry.
    Patch by: pseudo

  - Fixed bind cron html documention to be in sync with non-html one.
    Found by: 64MAAMVDH / Patch by: thommey

  - Replaced most dns.mod preprocessor definitions with config variables.
  - Added support for user-specified dns servers and non-standard ports.
    This is most important for Cygwin 1.7, where the dns server list won't
    get initialized under some common conditions.
  - Added a trace to the new variable dns-servers, allowing scripts to get
    or set the current dns server list.
  - Added the servers list to the dns module information displayed by
    .status all
    Patch by: pseudo

  - Fixed a bug in setsockname() making it fail with IPv6 enabled due to a
    variable not being set.
    Found by: afterlife / Patch by: pseudo

  - Fix env(TZ) config setting to not contain a space. The space is just
    inserted in POSIX documentation to clarify, it must not be there.
    Found by: Digdilem / Patch by: thommey

  - Made dcc_telnet_new() allow non-latin characters in new handles like
    other handle validation functions.
    Patch by: pseudo

  - Modified src/compat/ replacements of gethostbyname2() and inet_ntop()
    to not compile when IPv6 is disabled.
  - Added a missing header preventing gethostbyname2() from compiling on
    FreeBSD.
  - Fixed few lines with wrong indentation.
    Patch by: pseudo

  - Reran autotools.
  - Added detection of Tcl_NotifierProcs members to ensure the notifier can
    be replaced. Fixes compilation against Tcl 8.2 and 8.3.
    Found by: AlIt0 / Patch by: thommey

  - Added full IPv6 support. New patch, nothing in common with older ones.
  - Changed a lot of functions and variables without breaking scripting
    compatibility. The list of changes is too long to include here.
    Patch by: pseudo

  - Updated documentation to reference 1.8 instead of 1.6.
  - Changed module dependencies to 1.8.
  - Changed default handlen to 32.
  - Changed default make type to 'debug' as it should be in CVS builds.
    Patch by: pseudo

  - Ran misc/runautotools for 1.8.0.
    Patch by: pseudo

  - Ran misc/newversion for 1.8.0.
    Patch by: pseudo

  - initial commit of old 1.6.20 source
    Commit by: simple

  # 1.8 tree started on July 26, 2010
