/***********************************************************************
X3 ChangeLog
+2009-12-12 Alex Schumann <rubin@afternet.org>
+
+ src/x3ldap.c: Fix crash bug with ldap adding users. Deal with some warnings.
+
+ src/x3ldap.h: Deal with some warnings.
+
+2009-12-09 Henrik Stuart <evilnet@hstuart.dk>
+
+ src/mod-python.c: add support for module_register.
+
+2009-12-09 Henrik Stuart <evilnet@hstuart.dk>
+
+ src/mod-python.c: add support for log_register_type.
+
+2009-12-09 Neil Spierling <sirvulcan@sirvulcan.co.nz>
+
+ src/nickserv.c: Shuffle the auto oper functions around to fix a
+ desync issue.
+
+ src/proto-p10.c: Ignore PRIV_NONE within the first 5 seconds of
+ a client's connection. Temp fix for now.
+
+2009-12-06 Matthew Beeching <jobe@mdbnet.co.uk>
+
+ * src/chanserv.c: Removed seemingly unnecessary "cannot invite"
+ warning from chan_opt_automode.
+
+2009-12-02 Matthew Beeching <jobe@mdbnet.co.uk>
+
+ * src/nickserv.c: Added merging SSL fingerprint lists during
+ account merging.
+
+2009-12-01 Matthew Beeching <jobe@mdbnet.co.uk>
+
+ * src/opserv.c: Added ADDALERT reactions noticeuser and msguser
+ to go with trace reactions notice and privmsg.
+
+2009-11-29 Matthew Beeching <jobe@mdbnmet.co.uk>
+
+ * src/nickserv.c: Rewrote parts of loc_auth() to get it working
+ the same as cmd_auth() with regards to SSL fingerprint support.
+
+2009-11-29 Neil Spierling <sirvulcan@sirvulcan.co.nz>
+
+ * src/nickserv.c: Small tweak.
+
+2009-11-29 Neil Spierling <sirvulcan@sirvulcan.co.nz>
+
+ * src/nickserv.c: Small tweak to the password checks with sslfp LOC.
+
+2009-11-29 Neil Spierling <sirvulcan@sirvulcan.co.nz>
+ * src/nickserv.c: Added SSL fingerprint support to LOC.
+
+ * src/nickserv.h: Added sslfp to loc_auth.
+
+ * src/proto-p10.c: Added support for the new S loc auth type.
+
+2008-11-28 Matthew Beeching <jobe@mdbnmet.co.uk>
+
+ * src/nickserv.help: Added help for ADDSSLFP, DELSSLFP, OADDSSLFP
+ and ODELSSLFP
+
+ * src/nickserv.c: Added support for SSL fingerprint authentication.
+
+ * src/nickserv.h: Added support for SSL fingerprint authentication.
+
+2009-11-28 Matthew Beeching <jobe@mdbnet.co.uk>
+
+ * src/mod-memoserv.c: Fix for bug where MemoServ is created as a
+ local bot but not registered as a service on first startup.
+
+2009-11-26 Matthew Beeching <jobe@mdbnet.co.uk>
+
+ * src/chanserv.c: Fixed a missing ',' in cmd_myaccess output.
+
+2009-11-26 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/common.h src/main-common.c: add extra parameter to reg_exit_func and
+ exit_func_t.
+
+ * src/proto-p10.c src/mod-qserver.c src/chanserv.c src/mod-snoop.c
+ src/hash.c src/helpfile.c src/gline.c src/global.c src/mod-helpserv.c
+ src/opserv.c src/timeq.c src/saxdb.c src/modcmd.c src/saxdb.h
+ src/mod-sockcheck.c src/shun.c src/mod-python.c src/spamserv.c
+ src/mail-common.c src/mod-memoserv.c src/mod-track.c src/log.c src/ioset.c
+ src/nickserv.c src/main.c src/sar.c: collateral evolution fixes due to
+ exit_func change.
+
+2009-11-26 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/proto-common.c: fix typo in malloc variable name.
+
+2009-11-26 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/modcmd.h src/modcmd.c: add extra parameter to reg_svccmd_unbind_func
+ and svccmd_unbind_func_t.
+
+ * src/chanserv.c: collateral evolution fixes due to svccmd_unbind_func
+ change.
+
+2009-11-24 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/proto.h src/proto-common.c: add extra parameter to
+ reg_mode_change_func and mode_change_func_t.
+
+ * src/chanserv.c: collateral evolution fixes due to mode_change_func
+ change.
+
+2009-11-24 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/nickserv.h src/nickserv.c: add extra parameter to reg_unreg_func and
+ unreg_func_t.
+
+ * src/chanserv.c src/mod-helpserv.c src/mod-memoserv.c: collateral
+ evolution fixes due to unreg_func change.
+
+2009-11-24 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/nickserv.h src/nickserv.c: add extra parameter to reg_auth_func and
+ auth_func_t.
+
+ * src/chanserv.c src/mod-snoop.c src/global.c src/mod-helpserv.c
+ src/opserv.c src/mod-memoserv.c src/mod-track.c: collateral evolution
+ fixes due to auth_func change.
+
+2009-11-24 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/nickserv.h src/proto-common.c: add extra parameter to
+ reg_user_mode_func and user_mode_func_t.
+
+ * src/mod-snoop.c src/mod-track.c: collateral evolution fixes due to
+ user_mode_func change.
+
+2009-11-24 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/nickserv.h src/proto-common.c: add extra parameter to
+ reg_channel_mode_func and channel_mode_func_t.
+
+ * src/chanserv.c src/mod-snoop.c src/mod-track.c: collateral evolution
+ fixes due to channel_mode_func change.
+
+2009-11-24 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/hash.c src/hash.h: add extra parameter to reg_kick_func and
+ kick_func_t.
+
+ * src/chanserv.c src/mod-snoop.c src/mod-track.c: collateral evolution
+ fixes due to kick_func change.
+
+2009-11-24 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/hash.c src/hash.h: add extra parameter to reg_part_func,
+ unreg_part_func, and part_func_t.
+
+ * src/chanserv.c src/mod-snoop.c src/mod-helpserv.c src/spamserv.c
+ src/mod-track.c: collateral evolution fixes due to part_func change.
+
+2009-11-24 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/hash.c src/hash.h: add extra parameter to reg_del_channel_func and
+ del_channel_func_t.
+
+ * src/opserv.c src/proto-p10.c: collateral evolution fixes due to
+ del_channel_func change.
+
+2009-11-23 Matthew Beeching <jobe@mdbnet.co.uk>
+
+ * src/nickserv.c: Removed 2 nonsensical spaces in
+ *NickServ.accountinfo output for "Karma"
+
+2009-11-22 Matthew Beeching <jobe@mdbnet.co.uk>
+
+ * src/nickserv.c: Fix for bug allowing the use of odelcookie
+ to result in an account's password changing when it shouldn't.
+
+2009-11-22 Matthew Beeching <jobe@mdbnet.co.uk>
+
+ * src/nickserv.c: Added fix for LDAP password not being updated
+ on odelcookie where account password is changed anyway.
+
+2009-11-21 Matthew Beeching <jobe@mdbnet.co.uk>
+
+ * src/x3ldap.c: Updated OpServ level in LDAP feature to remove
+ the attribute when 0 instead of setting it to 0
+
+ * src/x3ldap.h: Updated OpServ level in LDAP feature to remove
+ the attribute when 0 instead of setting it to 0
+
+ * src/nickserv.c: Updated OpServ level in LDAP feature to remove
+ the attribute when 0 instead of setting it to 0
+
+2009-11-21 Matthew Beeching <jobe@mdbnet.co.uk>
+
+ * src/x3ldap.c: Fix for bug allowing accounts in LDAP to
+ authenticate to unactivated accounts.
+
+ * src/nickserv.c: Fix for bug allowing accounts in LDAP to
+ authenticate to unactivated accounts.
+
+2009-11-16 Matthew Beeching <jobe@mdbnet.co.uk>
+
+ * src/proto-p10.c: Added support for MARK SSLCLIFP.
+
+ * src/hash.h: Added support for MARK SSLCLIFP.
+
+ * src/opserv.c: Added SSLCLIFP mark to cmd_whois.
+
+2009-11-16 Matthew Beeching <jobe@mdbnet.co.uk>
+
+ * src/nickserv.c: Fix for crash in cmd_oregister due to incorrect
+ parameter counts.
+
+2009-11-15 Matthew Beeching <jobe@mdbnet.co.uk>
+
+ * src/hosthiding.c: Fix for crash bug in make_virthost() when host
+ name doesnt have a '.' in it.
+
+2009-11-15 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/hash.c: fix variable set for registering nick change functions.
+
+2009-11-14 Matthew Beeching <jobe@mdbnet.co.uk>
+
+ * src/nickserv.c: Fix for bug #2869968 (*NickServ.oregister allowing
+ invalid handles)
+
+2009-11-01 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/hash.h src/hash.c: add extra parameter to new_channel_func_t and
+ reg_new_channel_func.
+
+ * src/chanserv.c src/opserv.c: add extra NULL argument/parameter to
+ reflect change in hash.
+
+2009-11-01 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/nickserv.h src/nickserv.c: add extra parameter to
+ handle_merge_func_t and reg_handle_merge_func.
+
+ * src/mod-helpserv.c: add extra NULL argument/parameter to reflect change
+ in nickserv.
+
+2009-11-01 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/nickserv.h src/nickserv.c: add extra parameter to allowauth_func_t
+ and reg_allowauth_func.
+
+ * src/mod-helpserv.c: add extra NULL argument/parameter to reflect change
+ in nickserv.
+
+2009-11-01 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/nickserv.h src/nickserv.c: add extra parameter to failpw_func_t and
+ reg_failpw_func.
+
+ * src/mod-helpserv.c: add extra NULL argument/parameter to reflect change
+ in nickserv.
+
+2009-11-01 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/hash.h src/hash.c: add extra parameter to topic_func_t and
+ reg_topic_func.
+
+ * src/chanserv.c src/mod-python.c: add extra NULL argument/parameter to
+ reflect change in hash.
+
+2009-11-01 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/proto.h src/proto-common.c: add extra parameter to chanmsg_func_t
+ and reg_chanmsg_func.
+
+ * src/chanserv.c src/modcmd.c: add extra NULL argument/parameter to
+ reflect change in proto.
+
+2009-10-31 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/nickserv.h src/nickserv.c: add extra parameter to
+ handle_rename_func_t and reg_handle_rename func.
+
+ * src/chanserv.c src/mod-helpserv.c src/mod-memoserv.c: add extra NULL
+ argument/parameter to reflect change in nickserv.
+
+2009-10-30 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/mod-snoop.c src/mod-helpserv.c src/mod-sockcheck.c src/mod-track.c:
+ fix missed NULL argument/parameter additions from earlier commits.
+
+2009-10-30 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/hash.h src/hash.c: add extra parameter to join_func_t and
+ reg_join_func.
+
+ * src/chanserv.c src/opserv.c src/mod-python.c src/spamserv.c: add extra
+ NULL argument/parameter to reflect change in hash.
+
+2009-10-30 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/hash.h src/hash.c: add extra parameter to nick_change_func_t and
+ reg_nick_change_func. Also fix memory leaks from not freeing extras lists
+ for some callback routines.
+
+ * src/chanserv.c src/opserv.c src/mod-python.c src/spamserv.c
+ src/nickserv.c src/modcmd.c: add extra NULL argument/parameter to reflect
+ change in hash.
+
+ * src/proto-p10.c: fix logic for calling call_new_user_funcs.
+
+2009-10-30 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/proto.h: add extra parameter to reg_oper_func and oper_func_t.
+
+ * src/global.c: add extra NULL argument parameter to reflect changes.
+
+ * src/proto-common.c: add extra parameter to implementation of
+ reg_oper_func and reflect the extra parameter in call_oper_funcs.
+
+ * src/proto-p10.c: free storage for extra parameters.
+
+2009-10-28 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/hash.h src/hash.c: add extra parameter to del_user_func_t,
+ reg_del_user_func, and unreg_del_user_func. Add new call_del_user_funcs
+ function to abstract hash internals from outside callers.
+
+ * src/opserv.c src/mod-python.c src/spamserv.c src/nickserv.c: add extra
+ NULL argument(parameter to reflect change in hash.
+
+ * src/proto-p10.c: use call_del_user_funcs instead of interfacing with
+ hash.c internals directly. Remove unused code due to this change.
+
+ * src/proto-common.c: remove reference to hash internals.
+
+2009-10-28 Matthew Beeching <jobe@mdbnet.co.uk>
+
+ * src/x3ldap.c: Added ldap_do_oslevel() to set OpServ access level in
+ LDAP.
+
+ * src/x3ldap.h: Added ldap_do_oslevel() to set OpServ access level in
+ LDAP.
+
+ * src/nickserv.c: Added configuration option for OpServ access level
+ LDAP attribute name and call to ldap_do_oslevel() on access level
+ change.
+
+ * src/nickserv.h: Added configuration option for OpServ access level
+ LDAP attribute name.
+
+ * x3.conf.example: Added configuration option for OpServ access level
+ LDAP attribute name.
+
+2009-10-27 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/hash.h src/hash.c: add extra parameter to new_user_func_t and
+ reg_new_user_func. Add new call_new_user_funcs function to abstract hash
+ internals from outside callers.
+
+ * src/proto-p10.c: use call_new_user_funcs instead of interfacing with
+ hash.c internals directly. Remove unused code due to this change.
+
+ * src/global.c src/opserv.c src/mod-python.c src/spamserv.c
+ src/nickserv.c: add extra NULL argument/parameter to reflect change in
+ hash.
+
+ * src/proto-common.c: remove reference to hash internals.
+
+2009-10-27 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/hash.h: add extra parameter to server_link_func_t and
+ reg_server_link_func. Add new call_server_link_funcs function to abstract
+ hash internals from outside callers.
+
+ * src/proto-p10.c: call call_server_link_funcs rather than interfacing
+ directly with hash.c internals.
+
+ * src/chanserv.c: add extra NULL-argument/parameter to server link
+ handler.
+
+ * src/hash.c: add extra parameter to reg_server_link_func and introduce
+ call_server_link_funcs to shield external callers from the functionality.
+
+ * src/proto-common.c: remove extern definitions for the hash.c structures
+ for the server link callback structure.
+
+ * src/mod-python.c: add extra NULL-argument/parameter to server link
+ handler.
+
+2009-10-27 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/mod-python.c: remove unused code.
+
+2009-10-27 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/nickserv.c: marked cmd possibly unused to silence warning.
+
+2009-10-27 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/nickserv.h: make auto_oper_privs and auto_admin_privs const.
+
+ * src/proto.h: make privs const in irc_raw_privs.
+
+ * src/proto-p10.c: make privs const in irc_raw_privs.
+
+2009-10-27 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/global.c: remove unused code.
+
+2009-10-19 Neil Spierling <sirvulcan@sirvulcan.co.nz>
+
+ * src/nickserv.c: Send privs out when auto opering clients. These are
+ controlled for now via auto_oper_privs/auto_admin_privs in the nickserv
+ section within x3.conf. In the future we will look at account specific
+ privs.
+
+ * src/proto.h: Added irc_raw_privs and client_modify_priv_by_name.
+
+ * src/proto-p10.c: Added irc_raw_privs.
+
+ * src/tools.c: Added R extended ban.
+
+2009-10-12 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/mod-python.c: add python_handle_topic and refactor
+ emb_get_channel.
+
+ * src/plugins/__init__.py: add empty topic handler function to
+ Plugin class.
+
+ * src/modpython.py: add topic handler function.
+
+2009-10-12 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/mod-python.c: add python_handle_del_user.
+
+ * src/plugins/__init__.py: add empty del_user handler function to
+ Plugin class.
+
+ * src/modpython.py: add del_user handler function.
+
+2009-10-12 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/mod-python.c: refactor python_handle_nick_change.
+
+ * src/plugins/__init__.py: add empty nick_change handler function to
+ Plugin class.
+
+ * src/modpython.py: refactor nick_change to use new plugin
+ system.
+
+2009-10-12 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/plugins/__init__.py: refactor plugin instantiation logic.
+
+2009-10-12 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/mod-python.c: refactor python_handle_new_user.
+
+ * src/modpython.py: refactor new_user handler to use new plugin
+ system.
+
+ * src/plugins/__init__.py: add empty new_user handler function to
+ Plugin class.
+
+2009-10-12 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/mod-python.c: refactor python_handle_server_link to be more
+ Pythonic.
+
+ * src/modpython.py: rename old plugins class to plugins_ and use a
+ more general plugin system.
+
+ * src/plugins/__init__.py: extend with plugin base-class and
+ recursive plugin load logic.
+
+2009-10-12 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/mod-python.c: add emb_service_register function.
+
+2009-10-12 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/mod-python.c: add emb_adduser function.
+
+2009-10-12 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/mod-python.c: add emb_svsjoin function.
+
+2009-10-12 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/mod-python.c: add emb_svsquit function.
+
+ * src/proto.h: observe proper const-ness in irc_svsquit function.
+
+ * src/proto-p10.c: observe proper const-ness in irc_svsquit function.
+
+2009-10-12 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/mod-python.c: add emb_svsnick function.
+
+2009-10-12 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/mod-python.c: refactor doc-strings for extension methods to separate
+ variables. Minor code changes that modify function return values/types to
+ be more uniform.
+
+2009-10-12 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/mod-python.c: add emb_fakehost function.
+
+2009-10-12 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/mod-python.c: add emb_user_mode function.
+
+2009-10-12 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/mod-python.c: add emb_channel_mode function.
+
+2009-10-11 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/mod-python.c: remember to increase reference count of Py_None.
+
+2009-10-11 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/mod-python.c: add emb_kick function.
+
+2009-10-11 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/mod-python.c: add emb_get_config function.
+
+2009-10-09 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/mod-python.c: add emb_timeq_del function.
+
+2009-10-09 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/mod-python.c: add emb_timeq_add function.
+
+2009-10-07 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/mod-python.c: refactor dict_t construction logic.
+
+2009-10-07 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/mod-python.c: improve error logic for emb_get_channel.
+
+2009-10-06 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/mod-python.c: refactor modeList conversion into separate function.
+
+2009-10-06 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/mod-python.c: refactor out common error cleanup logic.
+
+2009-10-06 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/mod-python.c: add emb_get_accounts function and refactor some
+ common logic into a single routine.
+
+ * src/nickserv.h src/nickserv.c: make nickserv_handle_dict externally
+ available.
+
+2009-10-06 Henrik Stuart <evilnet@hstuart.dk>
+
+ * src/mod-python.c: add emb_kill function.
+
2009-10-06 Henrik Stuart <evilnet@hstuart.dk>
* src/mod-python.c: improve error logic for pyobj_from_usernode.