- Removed TS_DOESTS, DoesTS, and related code
- Cleaned up strlen() based array indices
- Update help/index
- Rebuilt help/Makefile.in
- Removed some help files for inter-server commands
- Regenerate parser/lexer files
- Removed unused HIDE_SPOOF_IPS and GLOBAL_KILL tokens
- Changed some members of the Ban structure to use fixed-size arrays
- m_bmask.c: fixed potential BMASK buffer overflow. Patch provided by Adam.
- channel_mode.c:add_id(): removed useless IsServer() test
- Mostly whitespace changes
- channel_mode.c: moved 'if (!mode_count)' test from send_mode_changes_client() to set_channel_mode()
- channel_mode.c: renamed send_mode_changes() to send_mode_changes_client(); have send_mode_changes_server() called from set_channel_mode()
- channel_mode.c:chm_ban(), chm_except(), chm_invex(): replaced memcpy() with strlcpy()
- user.c:register_remote_user(): removed strcmp() mess from remote connection notices (backward compatibility for older servers using "0" in UID messages for spoofed hosts)
- Update NEWS file
- Update README file
- ircd.c:write_pidfile(): removed the PID from the error message
- client.c: cleanup some comments
- client.c:make_client(): default client_p->account to '*'
- user.c: incorporate Adam's add_one_to_uid() rewrite
- ircd.c:main(): replaced pointless comment with a more descriptive one
- auth.c:auth_connect_callback(): saved a strlen(); hardened test of send()'s return value to ensure all bytes were sent
- reference.conf: minor fixes
- Rebuilt parser files
- conf_parser.y: removed YY_NO_UNPUT define which was an undocumented feature and has been deprecated for many years now. Proper way is to use 'nounput' in the scanner options.
- numeric.c: RPL_WHOREPLY: use %u conversion specifier for unsigned ints
- defaults.h: tweaked TS_WARN_DELTA_MIN and TS_MAX_DELTA_MIN; allow minimum values of 1
- conf.h, conf.c: renamed some structures to match naming convetion of other structures
- m_whowas.c: fixed spelling
- Constifications
- Fixed bug that would allow remote clients to bypass the hard limit of max WHOWAS entries to be returned
- Update NEWS
- Updated NEWS
- WHOWAS now shows IP addresses to irc operators - Changed RPL_WHOISACTUALLY numeric string. In the future it will also show the *real* hostname once we distinguish between spoofs/vhosts and real hosts
- m_map.c:dump_map(): removed now useless test on server->id[0]
- m_message.c: style corrections
- index.txt: updates provided by jackal
- reference.conf: minor cleanup
- m_info.c: added missing 'max_watch' and 'stats_m_oper_only' to /info
- Minor updates to INSTALL provided by jackal
- ircd.h: removed useless comment
- Update modes.txt
- Update README file
- Update README file. Added Mac OS X 10.10 (Yosemite) to supported platforms. Thanks to Daniel Oaks.
- Re-generate parser files
- Fixed core in conjunction with OSX 10.10/possibly other system when parsing pseudo{} blocks as reported by Daniel Oaks - Reverted -r4080, -r4609 and 4106 as they only cause undefined behavior on some systems
- m_nick.c: minor fixes to update fd info accordingly if unregistered clients change just the case of their nick. Patch provided by Adam.
- help/whowas: incorporate changes done by jackal
- Update NEWS file
- libtool 2.4.6
- Sprinkle some assert()
- client.c: whitespace changes
- conf.h, conf.c:cluster_a_line(): made 'capab' and 'cluster_type' unsigned types
- Style corrections only
- channel_mode.c:chm_operonly(): half-ops that are irc operators may now add/remove channel mode 'O' (ircops only channel), too
- m_kick.c:ms_kick(): replaced IsServer() test with IsClient()
- Renamed SVIDLEN to ACCOUNTLEN
- ircd_defs.h: add a note that NICKLEN should not be touched as the maximum allowed nickname lenght can be changed in the ircd.conf file. NICKLEN is actually only a hard limit
- conf_parser.y: forgot to remove the unused T_MAX_CLIENTS token
- m_server.c:server_estab(): removed pointless detach_conf(client_p, CONF_OPER)
- ircd.c:write_pidfile(): cosmetical fixes to fopen/fputs error messages to be consistent with all other error messages
- user.c: update documentation
- Don't make use of CAP_TS6 as we no longer need it, but still send it to other servers via CAPAB for backward compatibility
- Changed SVSTAG to use user modes
- Regenerate parser/lexer files
- Added oper::whois configuration option which allows to override the default RPL_WHOISOPERATOR numeric string shown in /whois.
- Cleanups to the svstag implementation
- m_whois.c:whois_person(): renamed variable
- m_whois.c:whois_person(): don't leak RPL_WHOISOPERATOR if target is +H
- m_server.c:sendnick_TS(): use appropriate conversion specifiers
- Finish basic SVSTAG implementatio
- m_svsmode.c: revert to -r5392 because me is stupid
- m_mode.c, m_svsmode.c, m_svsnick.c: const correctness
- Fixed style in several places
- Renamed idle_time_get() to client_get_idle_time()
- m_stats.c: minor cleanups to comments; removed invalid ones
- m_topic.c: white space changes
- m_topic.c:ms_topic(): if we ever have servers changing topics via TOPIC, make sure we don't leak hidden server names
- m_tburst.c:ms_tburst(): TOPIC needs to be n!u@h prefixed if comming from a services client
- Added basic SVSTAG implementation for later use
- m_stats.c: explicitely use 'unsigned int' instead of just 'unsigned' when casting variables to be used with the %u conversion specifiers
- m_whois.c: operators may now see certificate fingerprints, user modes and hidden channels as well. This used to be admin only.
- Update NEWS file
- Update reference.conf
- m_whois.c:whois_person(): constification
- m_map.c:dump_map(): removed 'static' keyword from buf
- conf.c:get_oper_name(): use IRCD_BUSIZE for buffer size and be done with it
- conf.c:read_conf_files(): ad channel mode 'C' to CHANMODES isupport
- server.h: removed redundant struct MaskItem declaration
- ircd.h: 'int unsigned' -> 'unsigned int'
- conf.c:set_default_conf(): add all possible oper-only user modes to ConfigGeneral.oper_only_umodes
- Update reference.conf
- m_gline.c: style corrections
- Allow to disable the NOTICE/PRIVMSG anti-flood mechanism by setting 'default_floodcount' to 0
- auth.c:sendheader(): fixed compile warnings with -Wformat-security
- Update documentation in some places
- Re-generate parser/lexer files
- Fixed bug where "/rehash" would always reset the "MAX", "JFLOODTIME", and "JFLOODCOUNT" values that have been changed from within IRC via the "/set" command - Renamed the following ircd.conf configuration directives to be more descriptive: max_clients -> default_max_clients join_flood_count -> default_join_flood_count join_flood_time -> default_join_flood_time - Updated related ircd.conf documentation accordingly
- ircd.c:initialize_global_set_options(): tweaked joinfloodcount and joinfloodtime defaults; Removed XXX comment.
- reference.conf: tweaked join_flood_count and join_flood_time
- numeric.c: fixed inconsistent use of "You are" and "You're"
- Update help/join
- numeric.h, numeric.c: moved ERR_SSLONLYCHAN numeric to 489 to match with insp/unreal
- Allow servers to send as many CAPAB messages as they want, regardless of TS6; Removed CAP_CAP
- Update help/umode
- ircd.c: fixed compile warning. Apparently some gcc have issues with compound literals in conjunction with -Wmissing-field-initializers
- numeric.c: added channel mode C to RPL_MYINFO
- channel.c:can_send(): better not to modify the message pointer
- Added channel mode +C which prevents users from sending CTCPS to a channel
- ircd.h: fixed compile error
- Minor cleanups here and there
- m_message.c:build_target_list(): fixed >12 years old bug where "NOTICE a,b,c,@#somechan :bugger" would completely abort sending/processing the message to the other targets if not op/voice on #somechan
- m_message.c: further cleanups; removed redundant code, etc
- m_message.c:msg_client(): don't send a 'message throttled' notice to source_p if just watching for floods without actually blocking messages
- m_message.c: sanitize msg_client(); fixed some logic errors in the flooding code
- ircd.c:main(): removed pointless chdir() calls as spotted by Adam
- memory.c:MyFree(): removed extraneous pointer test
- packet.c: made extract_one_line() unsigned
- packet.c:extract_one_line(): constification; renamed variable
- numeric.h, numeric.c: moved ERR_OPERONLYCHAN numeric to 520 to match with insp/unreal
- Re-create autogenerated parser/lexer files
- conf_lexer.l, conf_parser.y: removed entropy gathering daemon leftovers
- packet.c: from p4: change extract_one_line to not over agressively strip whitespace from buffers
- conf_class.c: removed duplicated code
- m_mode.c, m_whois.c: added missing HasUMode test
- bison 3.0.3
- Fixed compile warnings
- libtool 2.4.5, automake 1.15
- Minor cleanups and optimizations to usermode handling
- m_gline.c, m_kline.c, motd.c: need to check against client->sockhost as well
- Update copyright years
- Fixed grammar error as pointed out by Adam
- user.c:register_remote_user(): show ip addresses in remote connection notices aswell
- Update configure.ac to reflect it's TRUNK
- Fixed compile warnings
- patricia.c: fixed another compile warning
- patricia.c: fixed more compile warnings
- patricia.c: use MyCalloc/MyFree
- patricia.c, patricia.h: add proper copyright/license header
- patricia.c: removed Windows NT related code
- patricia.c, patricia.h: ipv6 is mandatory
- patricia.c, patricia.h: fixed some compile warnings
- Added latest patricia.c, patricia.h from Net-Patricia-1.22 for later use
- m_away.c: avoid indexing parv[] multiple times
- conf.c:validate_conf(): use 'EmptyString'
- match.c: style corrections to match()
- send.c: removed unused header includes
- m_mode.c:set_user_mode(): no longer allow multiple arguments to be passed to the umode handler
- channel_mode.c: don't allow ban masks to be added that start with a colon
- reference.conf: fixed stats_k_oper_only documentation
- Added general::stats_m_oper_only configuration option
- Added general::stats_m_oper_only configuration option
- m_info.c: minor correction: use NULL instead of 0 for pointers
- m_cap.c: minor optimization to send_caplist()
- m_cap.c: fixed some issues which have been introduced when it was ported from ircu
- m_invite.c, m_knock.c: send KNOCK/INVITE notifications to halfops too
- Removed unused header includes:wq
- m_away.c:m_away(): don't let /AWAY end the client's flood grace period. Depending on the configuration, some clients instantly set them away right after connecting. AWAY is rate limited anyways.
- motd.c:motd_create(): fixed indentation
- mkpasswd.c: removed extraneous parentheses
- Update doc/reference.conf
- Added 'opme' to irc-operator flags
- Style corrections
- m_etrace.c:do_etrace(): replaced hash_find_client() with find_person()
- client.c: removed useless assert()s
- m_who.c:m_who(): replaced hash_find_client() with find_person()
- send.c:sendq_unblocked(): const correctness
- Removed useless assert()s
- channel_mode.h: increased MAXMODEPARAMS to 6
- The general::true_no_oper_flood configuration option has been deprecated. Operators still can have higher 'flood' limits with no_oper_flood = yes; hoewever, they are no longer allowed to bypass RecvQ limits.
- m_unkline.c: merged ms_unkline() and me_unkline(); removed unused encap handler
- m_kline.c: merged ms_kline() and me_kline(); removed unused encap handler
- Cleaned up style; reformatting; const correctness
- Add m4/ax_arg_libgeoip.m4 and tidy up configure.ac a bit
- Add m4/ax_arg_enable_assert.m4 and tidy up configure.ac a bit
- Style corrections; constifications
- Fixed compile warnings due to shadowed global variables on RHEL/maybe other distros
- user.c:register_remote_user(): modernize old 2.8 notice
- m_nick.c: if possible compare ip addresses rather than hostnames in both perform_nick_change_collides() and perform_uid_introduction_collides()
- general::hide_spoof_ips is now deprecated
- user.c, m_server.c: ip addresses are always propagated via UID regardless of ip spoofs
- user.c, m_server.c: ip addresses are always propagated via UID regardless of ip spoofs
- Get rid of NOCAPS
- libtool 2.4.4
- parse.c:parse_handle_numeric(): removed extraneous parentheses
- m_motd.c:m_motd(): don't take 'hide_servers' into account for remote MOTD requests since this is up to 'disable_remote_commands'
- m_accept.c: whitespace changes
- Removed old mkkeypair script which has been used for cryptlinks
- Renamed variables; const correctness
- Update help/names
- user.c:user_set_hostmask(): skip target_p when sending JOINs to channel members
- Update help/etrace
- conf.c:conf_add_class_to_conf(): improve warning if there's no proper class associated with an oper{} block
- user.c:check_xline(): removed pointless test on 'conf->reason'
- Renamed variables; const correctness - Removed IsConfOperator macro
- Style corrections; constifications
- numeric.h, numeric.c: removed now unused ERR_GHOSTEDCLIENT
- send.c: further fixes to send_message_remote()
- parse.c:parse(): spelling fixes
- parse.c: get rid of parse_cancel_clients()
- send.c: replaced remaining DLINK_FOREACH_SAFE with just DLINK_FOREACH
- send.c: unbreak and sanitize send_message_remote()
- conf_pseudo:m_pseudo(): constification
- Update reference.conf
- Style corrections; renamed variables
- misc.c:ssl_get_cipher(): added dash between ssl/tls version and ciphers to match other ircds
- Nasty hack to allow for 'automake install -jx'
- svn propset
- autoreconf
- Added m_opme.c to modules/extra...
- m_kick.c:ms_kick(): hide remote server names if KICK comes from hidden servers or if serverhide::hide_servers is set to 'yes'
- numeric.c: added 'h' (half-op) to supported channel modes in RPL_MYINFO
- Fixed compile warning
- Set reasonable default ciphers if there aren't any specified in general::ssl_cipher_list
- Style corrections
- m_names.c:m_names(): const correctness
- m_pong.c:mr_pong(): from p4: accept ping cookie replies even if the client still has a pending registration state
- Style corrections; fixed comments
- m_ison.c: don't attempt to remove trailing space in case no nick(s) have been found
- m_ison.c: unbreak /ison; removed useless indexing on parv; removed archaic ircII hack
- fdlist.c: removed set_fdlimit() wrapper function
- m_map.c:dump_map(): from p4: readd ':' after Users in /map
- Const-correctness
- user.c:init_isupport(): removed +e/+I values from EXCEPTS/INVEX tokens
- hash.c: constifications
- hash.c:free_list_task(): removed pointless MyConnect() test
- auth.c:start_auth_query(): removed archaic comment
- auth.c:auth_connect_callback(): use report_error() for reporting failed getsockname() or getpeername() calls
- auth.c: constifications
- auth.c:auth_connect_callback(): decreased size of 'authbuf'
- auth.c: constifications
- user.c:report_and_set_user_flags(): fixed typo in comment
- auth.c: constification
- Update .travis.yml
- Removed init_host_hash()
- conf_class.c: fixed coding convention issues
- .travis.yml: update
- m_die.c:mo_die(), m_restart.c:mo_restart(): minor cleanups
- m_rehash.c:mo_rehash(): minor cleanup
- listener.c:listener_accept_connection(): no need to send the NUL byte
- Renamed clear_ban_cache() to clear_ban_cache_channel() to separate it better from the clear_ban_cache_client() function
- m_svskill.c:ms_svskill(): use KILLLEN instead of KICKLEN
- Constification
- m_oper.c:m_oper(): constification
- m_oper.c:m_oper(): renamed variable
- m_userhost.c:m_userhost(): replaced sprintf() with snprintf()
- channel_mode.c:add_id(), del_id(): replaced sprintf() with snprintf()
- client.c, m_who.c: style corrections
- Renamed exempt::coid to exempt::country_id
- Renamed Client::svid to Client::account
- Renamed variables
- Renamed variables
- Channel half-ops can now use /INVITE as well
- channel.c, channel.h: added clear_invites() and make use of it - ms_sjoin.c:ms_sjoin(): clear invites if the introduced channel has lower TS
- m_sjoin.c:ms_sjoin(): moved remove_ban_lis() calls
- m_sjoin.c:ms_sjoin(): from p4: update channel names to match the case of the remote servers channel name on sjoin
- libtool 2.4.3
- send.c:sendto_anywhere(): replaced MyClient() test with MyConnect()
- send.c: added some assert(); removed useless test in send_message_remote
- Renamed variables
- Removed ChModeChange::mems
- send.c:sendto_match_servs(): style corrections
- Removed pointless test for UMODE_DEAF in both sendto_channel_local() and sendto_channel_local_butone()
- Added support for the "extended-join" client capability
- channel_mode.c, send.c: style corrections
- ts6.txt: update to v8
- reference.conf: removed missleading comment. Services may always override +g.
- Constification
- channel.c:msg_has_ctrls(): update documentation
- send.c, client.h: changed Connection::serial to an uint64_t
- Removed hybrid 6 leftovers
- Update .travis.yml
- Update README
- m_squit.c: style corrections
- m_squit.c:ms_squit(): don't drop SQUITs with empty reason
- /WHOWAS now shows the name of the services account a user was logged in - Prepare whois_person() for target_p->svid[0] being '*' for user that aren't logged into a services account
- numeric.c: correction to RPL_ENDOFMODLIST
- ircd.c:ssl_init(): removed newline character from ilog()
- parse.c:parse(): renamed variable
- Improved RPL_LOAD2HI numeric
- channel.c:channel_find_last0(): style correction
- m_server.c, m_stats.c: constification
- m_list.c:do_list(): removed unused parameters
- ircd.c:ssl_init(): added two 'return' even though they are not reached
- ircd.c:write_pidfile(): use strerror() if fopen() fails
- parse.c:parse(): update documentation
- Enable ECDH for OpenSSL 0.9.8o and above
- m_module.c:mo_module(): improve readability; avoid indexing parv[] several times
- m_certfp.c:ms_certfp(): use source_p->certfp instead of parv[1]
- s_bsd.c:ssl_handshake(): use CONNECTTIMEOUT instead of hardcoded value - server.c:ssl_server_handshake(): use CONNECTTIMEOUT instead of hardcoded value
- ircd.c:write_pidfile(): removed extraneous parentheses
- ircd.c: style corrections
- server.c:ssl_server_handshake(): correctly timeout outgoing connects
- ircd.c:ssl_init(): disabled session tickets aswell as session cache
- watch.c:watch_add_to_hash_table(): fixed typo in comment
- client.c:check_conf_klines(): removed useless !IsClient() test
- user.c: style corrections
- m_lusers.c:m_lusers(): removed redundant test on 'parc'
- m_whowas.c:m_whowas(), ms_whowas(): removed redundant test on 'parc'
- m_pong.c:ms_pong(): hash_find_client() covers both named servers and clients thus replaced hash_find_server() with hash_find_id() for ID-based server/client lookups
- m_ping.c:ms_ping(): added sanity test for wrong directed PING messages as suggested by Adam. Needs more discussion whether that test is still needed with TS6
- m_ping.c, m_pong.c: added proper TS6 support
- Applied EOB fix from p4: Send EOB per-server during bursts Will fix incorrectly marking servers are done bursting if they are not when a server introduces a server currently bursting to you. At a later time we will adjust the behavior of the EOB handler to no longer recursively apply EOBs to all servers behind the source.
- user.c:valid_nickname(): minor cleanup
- Don't assemble umode buffer twice in send_umode_out()
- user.c:send_umode(): even if source_p == client_p, don't pass both client_p and source_p as arguments
- m_kill.c:ms_kill(): replaced HasUMode(source_p, UMODE_OPER) with just IsClient(source_p)
- m_globops.c:ms_globops(): avoid indexing parv three times
- auth.c:start_auth_query(): removed extraneous ilog(). report_error() already does the logging
- auth.c:timeout_auth_queries_event(): removed logging
- m_whois.c:whois_person(): removed useless test on target_p->sockhost[0] which can't be NUL now that TS6 is mandatory
- conf.c:find_user_host(): minor cleanup
- Style corrections
- m_connect.c: whitespace changes
- m_connect.c: clarify server notice. Don't use hardcoded "ircd.conf".
- m_connect.c:ms_connect(): properly sanity check parv[3] before actually calling hunt_server()
- m_connect.c: style corrections
- m_connect.c: don't let wildcard /connects bypass hash_find_server()
- m_connect.c: use target_p->name instead of parv[1] for connection notices
- server.c:serv_connect(): made failed connection notice more descriptive for remote /connects
- m_dline.c:mo_dline(): correction to previous commit
- m_dline.c, m_kline.c: avoid using valid_comment()
- m_unxline.c: renamed remove_xline_match to remove_xline_exact
- m_error.c: whitespace change
- m_stats.c:stats_glines(): removed useless test. conf->reason cannot be NULL
- m_kline.c:already_placed_kline(): removed useless test. conf->reason cannot be NULL
- client.c:accept_message(): don't allow +G to override +g
- m_server.c:mr_server(), ms_sid(): minor modification to allow for more parameters in the future
- m_dline.c: whitespace changes
- m_undline.c: fixed broken /dline remote.server
- m_resv.c, m_unresv.c: allow servers to add/remove RESVs
- m_dline.c:ms_dline(): whitespace changes
- m_xline.c, m_unxline.c: allow servers to add/remove XLINEs
- m_dline.c: cleaned up ms_dline(); removed useless junk
- conf.c:find_user_host(): replaced !IsServer() test with IsClient()
- m_dline.c, m_undline.c: allow servers to add/remove DLINEs
- m_server.c:ms_sid(): don't automatically consider servers behind u-lines are services as well
- m_kline.c, m_unkline.c: allow servers to add/remove KLINEs
- m_kline.c:ms_kline(): fixed outdated comment
- m_resv.c:parse_resv(): log permanent RESVs, too
- m_resv.c, m_xline.c: some places weren't using get_oper_name()
- conf.c: let get_oper_name() deal with servers. Makes it easier to allow servers to add/remove xlines, resvs, etc. without rewriting too much code later on
- m_xline.c:relay_xline(): only call atoi() if really needed
- conf_parser.y: use SSL_CTX_use_certificate_chain_file() instead of SSL_CTX_use_certificate_file()
- send.c:send_format(): fixed bogus test
- ircd.c: fixed compile warning
- Renamed Channel::chname to Channel::name
- m_resv.c:mo_resv(): removed extraneous space which caused the reason to be prepended with a space on remote servers
- m_server.c:server_estab(): since we no longer put connecting/unknown servers on the local_server_list, we can simplify that "I'm no hub, I'm not allowed to link" test.
- m_server.c: removed some redundant ERROR messages. exit_client() already takes care of sending ERRORs
- ircd.h: changed Counter structures to anonymous structure
- m_server.c:server_estab(): don't set SetGotId here. There is no reason why it should be done in this place
- m_server.c:server_estab(): cleaned up 'inpath', 'inpath_ip' mess
- m_names.c:m_names(): removed legacy code; constification
- m_kill.c: doxygen
- m_squit.c: doxygen
- conf.c:find_conf_name(): removed useless match(). with server name masking being removed with TS6, this is no longer needed.
- m_server.c:server_estab(): removed 'host = client_p->name' assignment
- ircd.c:ssl_init(): add SSL_OP_CIPHER_SERVER_PREFERENCE to server options
- reference.conf: whitespace changes
- Renamed 'localClient' Client structure member to just 'connection'
- user.c:register_local_user(): cosmetical fixes to server notice
- numeric.h, numeric.c: removed unused ERR_RESTRICTED
- numeric.c: cosmetical fixes
- Fixed misspellings
- Renamed variables/definitions to meet coding standards
- Renamed struct LocalUser to struct Connection
- client.c:exit_client(): cosmetical fixes to server exiting notice
- m_server.c: fixed spelling in some places
- m_stats.c:report_Klines(): removed useless test
- Update NEWS
- Update GPL 2 license headers
- Update gpl2 license file
- Update doc/reference.conf
- Replaced RPL_NEWHOSTIS with RPL_VISIBLEHOST
- parse.c: fixed new defect found by coverity
- parse.c:parse(): small optimization as suggested by Adam
- parse.c: constification
- Fixed previous changes to parse.h
- parse.h: moved structure member
- Implemented pseudo {} blocks (service aliases) - Fixed compile warnings with -Wmissing-field-initializers
- numeric.c: fixed ERR_PASSWDMISMATCH numeric string
- numeric.c: update ERR_SERVICESDOWN numeric string
- m_who.c:who_global(): style corrections
- m_who.c: made do_who_on_channel() only take 4 parameters
- m_message.c: fixed bug where "NOTICE +#somechan" did allow bypassing resv{} channels, or channels that are set +c (no control codes)
- m_webirc.c: replaced CGI:IRC references with WEBIRC
- Fixed double dlinkDelete() in conf_free() - Fixed memory leak with server/oper/auth configuration items
- listener.c: reformatting
- listener.c: renamed ListenerPollList to listener_list
- Update .travis.yml
- conf.c:rehash(): moved the strlcpy(me.info,...) to conf_parser.y
- conf.c:conf_free(): fixed possible infinite loop with /stats c as reported by Adam. We now assume that all MaskItem are linked onto some list
- Instead of silently truncating WHO at 500 replies, added ERR_WHOLIMEXCEED numeric to inform users about the /who limit being exceeded
- Update README
- Update INSTALL
- hash.c:safe_list_channels(): removed outdated comment
- conf_parser.y: removed useless tests on ConfigServerInfo.server_ctx
- ircd.c:ssl_init(): exit if we cannot setup client/server context
- conf.c:set_default_conf(): really default to secp256r1
- Update doc/reference.conf
- m_list.c:do_list(): no need to break in the '-' case
- Add topic mask option to /list
- hash.c:list_one_channel(): let other users see channelmodes in /list
- m_certfp.c:ms_certfp(): use xstrdup() instead of strdup()
- ax_arg_enable_warnings.m4: fiddle around with warning options
- event.h: removed typedef
- Fixed compile warnings
- res.c: style corrections
- memory.c:MyRealloc(): As pointed out by Adam, realloc() can be called with size being 0 which equals to free(). In that case the outofmemory handler shouldn't be triggered.
- s_bsd_poll.c cleanups/fixes provided by Adam
- getopt.c:parseargs(): use xstrdup() instead of malloc/strcpy combo; don't modify memory pointed by the argument vector. Fixes provided by Adam.
- res.c:query_name(): get rid of useless typecasting
- res.c:proc_answer(): error out and leave the client unresolved if we get an unexpected record type
- Removed CNCB typedef
- Removed stupid PF typedef in fdlist.h which prevented both gcc and clang from spitting out a warning about the first argument of s_bsd:ssl_handshake() being an 'int' when it really has to be a 'fde_t' pointer. - Fixed first argument of s_bsd:ssl_handshake() which should be a 'fde_t' pointer instead of an 'int'.
- conf.c:conf_dns_lookup(): use gethost_byname_type() - res.h, res.c: removed gethost_byname()
- res.c:proc_answer(): delete useless castings
- res.c:proc_answer(): use 'unsigned'
- res.c: removed "request_state" enum
- res.c:proc_answer(): applied "Ignore CNAME records in dns queries" fix from p4. ** Ignore CNAME records in dns queries. Allows PTRS to point to CNAMEs which can point to an A/AAAA which resolves to the correct IP.
- res.c: removed "try A if AAAA failed" logic
- res.c:start_resolver(): made /stats F more descriptive about the resolver socket
- auth.h: update documentation
- res.h: add documentation about RFC1035_MAX_DOMAIN_LENGTH definition
- user.c:oper_up(): successful operator logins are now announced globally via GLOBOPS
- Renamed various variables
- Update doc/reference.conf
- m_info.c:send_conf_options(): made /info look nicer
- event.c: update show_events() to make /stats E look nicer
- Rewrite sendto_realops_flags_ratelimited() so it can be used in other places as well
- Added listener_release() and make use of it
- listener.c: reformatting
- listener.c:make_listener(): constification
- res.c: was missing +1 in reslist::name
- res.c:init_resolver(): removed useless memset()
- m_ison.c:m_ison(): replaced memcpy() with strlcpy()
- Update README
- Removed ipv6 detection. We now assume all systems that run hybrid have ipv6 availability and sockaddr_storage.
- s_bsd.c:comm_accept(): fixed faulty memset()
- Let's allow overlength host name entries in connect {} blocks
- Fixed resolver/auth issues with too long hostnames
- Moved memset() from accept_connection() to comm_accept()
- Minor documentation updates
- Update doc/reference.conf
- Unset FLAGS_IPHASH on source_p in exit_client() when removing from ipcache
- ircd.c:main(): use event_add() for comm_checktimeouts
- Update README
- Update doc/reference.conf
- channel.c:send_mode_list(): constification
- channel.c: moved 'buf' to send_members() and send_mode_list()
- mempool.c:mp_pool_garbage_collect(): c99 style correction
- m_cap.c: moved qsorting of the capab_list to module_init()
- m_nick.c:change_local_nick(): improved an assert()
- numeric.c: ERR_NICKTOOFAST: use %u conversion specifier
- Fixed ERR_NICKTOOFAST numeric string to make more sense and to comply with other ircds
- numeric.c: fixed ERR_TOOMANYAWAY numeric string
- listener.h, listener.c: use HOSTIPLEN for Listener::name; update documentation
- ipcache.h: update documentation
- Update INSTALL
- ipcache.c: minor cleanup
- ax_arg_openssl.m4: cosmetical fixes for LibreSSL
- Moved ax_check_openssl.m4 to ax_arg_openssl.m4
- ax_library_net.m4: removed useless member test of sockaddr_in.sin_len
- Got rid of acinclude.m4
- configure.ac: must be excuting GCC_STACK_PROTECT_LIB aswell, otherwise we won't get linked against SSP lib (if there's any)
- acinclude.m4: fixed typo in comment
- Cleaned up epoll detection
- motd.h, motd.c: renamed Motd::hostmask to just Motd::mask just because it's kinda missleading since the mask can also be a class name
- motd.h, motd.c: clean up/fix comments
- motd.c:motd_cache(): fixed cast
- Re-arranged ConfigServerInfo structure
- Removed unused ConfigServerInfo structure member
- Renamed structures to meet code conventions
- event.h: style correction
- event.h: replaced shorts with ints
- ./configure now requires OpenSSL 0.9.8o or above in order to enable TLS/SSL support
- Removed select() support
- conf.c:attach_iline(): constification
- ipcache.c:ipcache_get_stats(): constification; depend on the caller to set integers to zero
- svn propset on ipcache.c, ipcache.h
- Moved all ip caching related code to ipcache.c
- conf.c: optimized count_ip_hash()
- conf.c:ipcache_remove_expired_entries(): of course should be DLINK_FOREACH_SAFE
- Cleaned up ipcache
- res.c:res_readreply(): read as many packets as possible from kernel buffer in a single run. This might increase performance for heavy loaded servers doing lots of dns requests. As side-effect it fixes issues with edge-triggered epoll (we're only doing level-triggered right now)
- res.c:res_readreply(): don't grant further retries if the packet couldn't be decoded. We only give it one shot.
- Improved AWAY throttling to allow for better fine-tuning
- res.c: reformatting; style corrections; updated comments
- Backported auth code related cleanups from newio branch
- Update doc/reference.conf [ci skip]
- Update doc/reference.conf [ci skip]
- res.c:res_readreply(): use ssize_t for 'rc'
- Update doc/reference.conf
- Fixed typos all over the place
- Update doc/reference.conf
- m_oper.c, m_challenge.c: cosmetical fixes
- m_challenge.c:m_challenge(): added sanity test on parv[1]
- m_xline.c, m_resv.c: fixed bug where the mask which is to be banned is checked in both valid_wild_card_simple() and valid_wild_card()
- Update challenge.txt
- m_challenge.c:m_challenge(): cosmetical fix
- m_help.c: style corrections
- Update reference.conf
- conf.c:valid_wild_card_simple(): don't read past the zero character
- respond.c: update binary_to_hex()
- conf_parser.y: do some logging if the dh param file can't be opened/read
- conf_parser.y: fixed logging of invalid private key
- Cleaned up and sanitized /challenge related code - rsa.c:get_randomness(): removed EGD support; also don't fall back to RAND_pseudo_bytes() if RAND_bytes() fails. If RAND_bytes() fails, just reject the /challenge request.
- .travis.yml: according to the travis ci guys, gcc-4.8 is now pre-installed on osx. Let's see if it works this time.
- m_server.c: fixed build with LibreSSL which hasn't compression support - ax_check_openssl.m4: 0.9.8m is now the minimum requirement
- auth.h, s_bsd.h: removed unused function declarations
- m_xline.c: fixed broken check_xline()
- res.c:res_readreply(): removed sparc/alpha hack
- res.c:res_readreply(): don't do anything until we checked for possible fake replies
- res.c:res_readreply(): even if it's not clear if it's possible to receive a response for a query we didn't send, but we better execute auth_dns_callback() immediately instead of waiting until timeout_auth_queries_event() takes action.
- res.c: made timeout_query_list() not require an argument
- parse.c: reformatting
- m_nick(), mr_nick(): use target_p->name when reporting ERR_NICKNAMEINUSE
- m_nick.c:check_clean_nick(): make sure not to send a KILL for a server
- m_nick.c: removed unused header includes
- user.c:register_remote_user(): constification
- user.c:user_welcome(): removed useless test on source_p->id
- Update ircd manpage [ci skip]
- client.c: cleaned up style; sprinkled some assert() statements
- Renamed serv_list to local_server_list
- server.c:hunt_server(): removed useless test. Discussed and approved by Adam.
- Renammed global_serv_list to global_server_list
- server.c: cleaned up hunt_server()
- Update reference.conf
- Update helpfiles
- parse.c:handle_numeric(): if source_p is a hidden server, rewrite prefix aswell
- ircd.c:initialize_global_set_options(): removed useless memset()
- server.c:try_connections(): whitespace changes
- m_nick.c:perform_nick_change_collides(): style cleanups
- m_nick.c: removed unused/dead code
- Removed doc/Tao-of-IRC.940110
- Don't add/remove unregistered connections to/from global_client_list
- client.c:exit_one_client(): re-added test on source_p->node.next
- Update reference.conf
- channel_mode.c:clear_ban_cache(): use locmembers list
- Update reference.conf
- Bring back channel->locmember list
- .travis.yml: build with --enable-assert
- m_nick.c: fixed compile error with --enable-assert
- Removed ssl_server_method and ssl_client_method configuration options. ircd now only allows TLSv1, TLSv1.1 and TLSv1.2 protocols depending on the OpenSSL version.
- ircd.c:ssl_init(): removed SSL_OP_TLS_ROLLBACK_BUG from options
- m_encap.c: respect args_min when calling the encap handler
- channel.c: from p4: move resv channel oper notice to umode reject
- Another help/stats update
- Update help/stats
- Update help/stats
- Removed hooking system
- client.c:exit_one_client(): removed XXX; added an assert() just in case
- ircd.c:ssl_init(): add SSL_OP_SINGLE_DH_USE to options
- m_nick.c:uid_from_server(): fixed use of wrong CLient pointer
- m_nick.c:change_remote_nick(): fixed broken assert()
- ircd.c: removed 'event_check_splitmode'. Changed 'splitmode_event' to run every 5 seconds if server is in splitmode
- event.c, event.h: update copyright headers
- ircd.c:ssl_init(): minor cleanup
- event.c:event_addish(): removed XXX
- event.c: removed unused header includes
- Update reference.conf
- conf_parser.y: fixed stupid bug. no comment there...
- event.c:event_run(): changed 'len' variable to an unsigned int. Note that dlink_list_length() is unsigned int.
- event.c:event_run(): removed unused variable
- Added ssl_message_digest_algorithm configuration option to serverinfo{} block. See doc/reference.conf for more information.
- Make use of binary_to_hex() in ssl_handshake() and ssl_server_handshake()
- rsa.c: make binary_to_hex() more readable
- Allow [ in usernames
- ircd.h, ircd.c: change some structures to anonymous structures
- Removed supported.h
- Add CHACCESS_REMOTE for servers remote Clients
- event.c: fixed issue in event_run()
- mempool.c: run mp_pool_garbage_collect every 3 minutes
- Merged Adam's event system rewrite
- m_nick.c: improve documentation
- m_nick.c: further cleanups
- m_nick.c:perform_uid_introduction_collides(): removed useless IsServer() test
- Cleaned up UID introduction / NICK change related code
- Let mp_pool_get() clear memory
- m_message.c: style cleanups; constification
- m_knock.c, m_invite.c: don't further penalize throttled clients
- conf.c, conf.h: change some structures to anonymous structures
- Update README
- ircd.c:ssl_init(): removed SSL_OP_ALL from options
- Added proper ECDH support
- conf.c:set_default_conf(): default to 1 connection per 1 second
- .travis.yml: so I got told by some travis guy gcc-4.8 isn't installed yet on Mac OS X
- channel.c:check_splitmode(): logic fixes
- Update .travis.yml. See if it still complains...
- m_eob.c:server_eob(): fixed faulty assert()
- Use %u conversion specifier for unsigned ints
- conf.c:conf_connect_allowed(): fixed some logic errors
- conf.c:read_conf_files(): chanmodes c an M were missed in CHANMODES
- .travis.yml: on OS X build with true gcc, see: https://github.com/travis-ci/travis-ci/issues/2423
- m_undline.c:mo_undline(): don't require an address to be prepended with *@
- channel.c:get_member_status(): document the magic value of 4
- channel.c, channel_mode.c: update documentation in some places
- m_accept.c:list_accepts(): make sure to have one byte left for the space
- m_stats.c:stats_tstats(): prefix "/stats t" reply with 't' instead of 'T', as "/stats T" reports configured motd{} blocks
- m_stats.c:stats_auth(): removed useless test on conf->class
- m_stats.c: style corrections
- m_stats.c: constification
- m_stats.c:report_confitem_types(), report_auth(): removed useless test on conf->class
- server.c:try_connections(): removed useless test on conf->class to make coverity shut up. There shouldn't ever be a MaskItem on the server_items list that hasn't a class attached to it.
- client.h: fixed comment
- Removed LocalUser.last_nick_change as well as LocalUser.number_of_nick_changes. Now using existing struct which is also being used for INVITE/KNOCK throttling.
- channel.h: removed Channel.last_invite; it's not used anymore
- Got rid of SEND_UMODES. We now propagate all modes.
- Renamed OPER_FLAG_K to OPER_FLAG_KLINE
- client.h: update/fix comments
- m_accept.c:list_accepts(): whitespace changes; fixed typo
- m_accept.c:list_accepts(): fixed magic value to actually fully utilize all 512 bytes. Add some documentation which describes this magic value so other people don't tear their hair out about this value.
- m_message.c:msg_client(): minor optimization
- m_server.c:server_estab(): SVINFO can be prefixed
- AUTHORS, version.c: added Fawkes to contributors
- m_encap.c: minor cleanup. Also there must always be some function assigned to the ENCAP handler. Let it crash if there isn't one.
- m_message.c: constification; fixed style in some places
- channel.c:send_mode_list(): improve documentation
- channel.c:send_mode_list(): renamed variable
- channel.c:send_mode_list(): removed outdated comment
- version.c: fixed compile warning with clang -Winvalid-source-encoding. Fix provided by grawity.
- Update README. 8.x works properly on Mac OS X 10.9 (Mavericks). [ci skip]
- Removed unused header includes
- s_bsd_epoll.c, s_bsd_kqueue.c: removed defines/prototypes for extremely outdated systems
- m_message.c:build_target_list(): constification; made things look nicer with an EmptyString()
- m_message.c:build_target_list(): constification
- m_message.c:msg_client(): minor optimization. Most clients aren't set away, and a directed message is nearly always a PRIVMSG
- m_message.c:msg_client(): replaced MyConnect with MyClient test. Otherwise +R/+G opers won't receive server notices for remote CONNECT and remote KLINE/DLINE/XLINE/RESV attempts.
- m_message.c: update client->localClient->last_privmsg in m_privmsg()
- m_message.c:msg_client(): style corrections
- m_message.c:handle_special(): fixed stupid logic error
- m_svsnick.c:ms_svsnick(): don't use hunt_server()
- m_message.c:handle_special(): removed redundant HasUMode(source_p, UMODE_OPER) test
- Fixed EOB logic for remote servers. Fix derived from p4
- .travis.yml: fixed syntax issue
- .travis.yml: build with --disable-openssl on Mac OS X
- Update .travis.yml
- Update .travis.yml
- channel.c: improve documentation
- m_message.c:handle_special(): constification
- send.c:handle_special(): removed user@server messages to local users. Going the RB and Chary way for now, as this was an easy way to bypass +R/+G usermodes.
- send.c:sendto_match_servs(): swap function calls; renamed variable
- Renamed global_channel_list to channel_list
- send.c: fixed stupid 'bug' in sendto_match_servs()
- Renamed set_channel_topic() to channel_set_topic()
- channel.c:channel_do_join(): use chptr->chname if we know the channel exists
- Fixed SVSJOIN/SVSPART issues
- Added max_channels to class{} blocks
- conf.c:valid_wild_card(): use unsigned
- Greatly speedup d-line lookup. Instead of testing every single client against every existing d-line just check the just added ban against connected clients. Also now check d-line _before_ looking for a matching exempt{}
- m_kline.c: fixed compile warning with -Wconversion
- Fixed bunch of compile warnings with -Wconversion
- Ugly-fix compile warning
- m_svspart.c:ms_svspart(): must of course use target_p
- m_join.c: removed do_join_0()
- m_oper.c:m_oper(): style corrections
- Moved duplicated code used by m_svspart.c and m_part.c, aswell as m_svsjoin.c and m_join.c to channel.c
- m_who.c: Use 'unsigned' whenever possible
- hash.c: Use 'unsigned' whenever possible
- Use 'unsigned' whenever possible
- m_squit.c:mo_squit(): "fixed" coverity CID 1135874
- ircd.h: use 'unsigned' whenever possible
- client.h: fixed spelling error
- client.h: fixed compile warnings with -Wsign-conversion
- user.c:add_isupport(): fixed compile warning with -Wconditional-uninitialized
- m_info.c:send_info_text(): fixed compile warning
- conf_parser.y: fixed stupid bug that has successfully has hidden itself since Feb 5, 2002
- channel.c: documentation updates
- Update .travis.yml
- Update reference.conf
- rng_mt.c: removed trailing whitespaces
- m_info.c.:send_info_text(): style corrections
- Added general::throttle_count idea from p4
- Style corrections; fixed comments
- parse.c:mod_add_cmd(): no need to reset command counters upon module load
- Use unsigned whenever possible
- Removed OPERWALL. Use GLOBOPS instead.
- m_invite.c, m_knock.c: fixed stupid logic error
- m_info.c:info_table[]: better description for knock_client_time and invite_client_time
- m_info.c:info_table[]: fixed description of knock_client_time and knock_client_count
- Made the INVITE/KNOCK throttling logic less aggressive as requested by Adam
- doc/reference.conf: whitespace changes
- m_set.c: made things use an unsigned int
- m_set.c: whitespace changes
- reslib.c: style corrections
- m_squit.c:ms_squit(): use sendto_realops_flags() when announcing remote SQUITs
- m_connect.c:ms_connect(): use sendto_realops_flags() when announcing the CONNECT
- m_locops.c, m_globops.c: removed extra colons
- send.h: update comment
- Removed ONLY_CHANOPS; let non-ops see +I/+e lists, too
- Update macros in m4/
- .travis.yml: build with libGeoIP
- .travis.yml: revert to -r3830
- Update .travis.yml and see how it behaves with warnings enables
- Revert -r3831
- Change to cause a compile error just to see how travis deals with it
- Update .travis.yml
- Update .travis.yml
- Update .travis.yml
- Added .travis.yml
- doc/reference.conf: fixed spelling error
- Added -Wlogical-op to warning options
- Added -Wpointer-arith to warning options
- Added -Wmissing-include-dirs to warnings options
- m_squit.c:ms_squit(): use GLOBOPS to announce remote squits
- m_connect.c:ms_connect(): use GLOBOPS to announce remote connects
- send.c:sendto_channel_butone(): replaced IsServer() test with IsClient()
- send.c:sendto_match_servs(): use DLINK_FOREACH_SAFE() as send_message_remote() might exit client/server
- stdinc.h: whitespace commit
- help/quit: whitespace commit
- m_connect.c: whitespace commit
- m_gline.c: whitespace commit
- m_xline.c, m_unkline.c: whitespace commit
- m_set.c: whitespace commit
- m_etrace.c: whitespace commit
- m_challenge.c: whitespace commit
- m_admin.c: whitespace commit
- channel.c: whitespace commit
- conf.c:set_default_conf(): reset ConfigFileEntry.stats_e_disabled
- m_bmask.c: doxygen
- m_tburst.c: doxygen
- m_message: style corrections; made things use an enum
- hostmask.c:mask_addr(): ficed compile warnings: hostmask.c: In function ‘mask_addr’: hostmask.c:332:35: warning: declaration of ‘__v’ shadows a previous local [-Wshadow] hostmask.c:332:35: warning: shadowed declaration is here [-Wshadow] hostmask.c:332:35: warning: declaration of ‘__x’ shadows a previous local [-Wshadow] hostmask.c:332:35: warning: shadowed declaration is here [-Wshadow]
- /INVITE without any parameters now shows a list of channels a client is invited to
- Make sure ConfigChannel.invite_delay_channel and ConfigChannel.invite_delay get initialized in conf.c:set_default_conf(). Also make sure the values are reported in /info. ---This line, and those below, will be ignored-- M modules/m_info.c M src/conf.c
- Added INVITE flood protection/throttling as requested by Adam. This basically works similar as the KNOCK throttling algorithm.
- Update ircd man page
- Update modes.txt
- channel_mode.c, channel_mode.h: constification
- More ms_sjoin() cleanups
- m_sjoin.c: style corrections
- m_sjoin.c:remove_ban_list(): replaced sprintf() with snprintf()
- server.c:send_capabilities(): replaced sprintf() with strlcat()
- m_rehash.c: removed useless comment; style corrections
- m_info.c: style corrections; make things use an enum
- m_gline.c: removed useless asserts; style corrections
- m_ison.c:m_ison(): style corrections
- Added some documentation about find_chasing()
- channel_mode.c: minor cleanups and code rearrangements
- channel_mode.c: get rid of fix_key_old()
- client.c:get_client_name(): minor optimization
- parse.c:cancel_clients(): removed outdated comments
- parse.c:cancel_clients(): be a void function
- Halfops are now part of the ircd core and enabled by default
- m_kick.c:m_kick(): removed outdated comment
- channel_mode.c:chm_simple(): channel halfops may now set +p
- m_kick.c:m_kick(): channel halfops (%) may now no longer KICK other channel halfops
- channel_mode.c:chm_hop(): channel halfops (%) may now no longer (de)halfop other channel members
- channel_mode.c: irc-operators may now no longer set a channel +O if they are only halfops (%)
- channel_mode.h: removed outdated comment
- Removed unused ChModeChange.client
- channel_mode.c:send_mode_changes(): removed anonops leftovers
- send.h: removed anonops leftovers
- channel_mode.c: style corrections
- channel_mode.c:chm_operonly(): removed dead code
- Removed CHFL_DEOPPED flags which is no longer needed with TS6
- channel_mode.c: revert changes to channel_modes() for now. apparently there are some other parts that rely on this odd behaviour.
- channel_mode.c:channel_modes(): replaced sprintf with strcat; use %u conversion specifier for unsigned ints
- channel_mode.c:channel_modes(): fix to previous changes
- channel_mode.c:channel_modes(): get rid of trailing spaces if the channel is +k/+l
- m_nick.c: style corrections
- m_nick.c:ms_uid(): updated documentation
- conf.h:struct config_file_entry: changed 'oper_only_umodes' and 'oper_umodes' to unsigned int types. Otherwise we may expect integer overflows in the future if more user modes get added.
- channel_mode.c:chm_op(), chm_hop(), chm_voice(): use target_p->name when reporting ERR_USERNOTINCHANNEL
- channel_mode.c: style corrections
- channel_mode.c:send_mode_changes_server(): removed resolved XXX
- m_mode.c:m_mode(): moved 'parabuf' and 'modebuf' to inner scope
- m_mode.c:set_user_mode(): moved 'buf' to inner scope
- conf.h: removed extraneous comma
- m_join.c: style corrections
- reference.conf: add resv{} for nick 'Global'
- user.c:valid_username(): removed extraneous semicolon
- user.c, m_stats.c: whitespace changes
- res.c: removed unused definitions
- send.h: removed unused kill_client_serv_butone() prototype
- channel_mode.c:chm_operonly(): removed dead code
- m_etrace.c:do_etrace(): removed dead code
- m_stats.c:stats_tstats(): fixed faulty sendto_one_numeric
- m_map.c:dump_map(): use 'unsigned' whenever possible
- parse.c: moved *para[] to parse()
- m_join.c:ms_join(): fixed compile warning
- channel_mode.c: removed unused SM_ERR_NOTS; made errorcodes use an enum
- parse.c:handle_numeric(): replaced MyClient test with MyConnect(). find_person() already ensures that target_p is a fully registered client.
- channel_mode.c:chm_operonly(): removed redundant assignment
- parse.c: cleanup comments
- m_sjoin.c:ms_sjoin(): let handle_command() test for the right amount of parameters passed to SJOIN
- parse.c:add_msg_element(), del_msg_element(): zero initialize pointers for debugging purposes
- m_sjoin.c:ms_sjoin(): hardened test to make sure SJOINs are really only processed if sent by a server
- m_join.c:ms_join(): don't allow servers to join channels
- parse.c:mod_del_cmd(): make sure the command actually exists in the trie before attempting to remove it. We could end up in a corrupted trie otherwise.
- parse.c:remove_unknown(): use me.id when sending KILL/SQUIT to servers
- parser.c:do_numeric(): fixed stupid bug introduced in -3573
- m_trace.c: removed set_time() calls
- m_set.c: whitespace changes
- m_accept.c: style corrections
- fdlist.c: style corrections
- fdlist.c: use unsigned whenever possible
- event.c: use unsigned whenever possible
- m_svsnick.c: whitespace changes
- stdinc.h: disable printf format __attribute__
- m_services.c:m_botserv(): add missing return
- m_services.c: clean up services handlers in preparation of configurable aliases. Made PRIVMSG targets use UIDs
- Use sendto_one_numeric() everywhere
- m_services.c: use UID prefixed PRIVMSGs when sending stuff to services
- m_sjoin.c:ms_sjoin(): removed faulty assert
- Update help files
- m_etrace.c: further cleanups
- m_etrace.c: constification & style corrections
- Update help files
- Replaced remaining sendto_one() with sendto_one_numeric(). SND_EXPLICIT idea derived from ircu.
- user.c:valid_username(): removed extraneous parentheses
- user.c:add_one_to_uid(): use unsigned keyword
- user.c:register_local_user(): removed redundant source_p->localClient->allow_read = MAX_FLOOD_BURST assignment
- Style corrections
- auth.c: constification
- m_svsmode:ms_svsmode(): removed legacy code
- m_resv.c: reformatting
- numeric.c: minor conversion specifier cleanups
- Removed RPL_STATSNLINE
- find_address_conf(): constification
- Update documents
- conf_class.c:class_free(): added an assert()
- m_info.c:info_table[]: cosmetical fixes
- m_mode.c:set_user_mode(): renamed variables
- m_bmask.c:ms_bmask(): cleaned up style
- hostmask.c:delete_one_address_conf(): replaced a DLINK_FOREACH_SAFE with DLINK_FOREACH
- doxygen
- Update reference.conf
- user.c:register_local_user(): removed pointless assignment
- ircd.c:main(): make this "don't run ircd as root!!!11" message look more serious
- channel.c:send_mode_list(): removed TS5 leftover
- Update reference.conf
- Removed unused macros; cleaned up comments
- m_stats.c:stats_operedup(): don't show idle time if operator is +q
- Added usermode +p which hides channel list in WHOIS
- Fixed bug where "STATS p" would show an invalid amount of irc-operators in case there are +H opers
- Update docs to reflect new +q usermode
- Added usermode +q which hides idle and signon time in WHOIS
- Renamed MyMalloc() to MyCalloc()
- client.c:free_client(): sanitize some weird looking assert()
- conf.c:parse_aline(): use CONF_NOREASON for default reason
- m_cap.c: from p4: Ignore trailing spaces from CAP REQ/ACKs to prevent rejecting requests
- conf.h: remove invalid/useless comments
- conf.h: remove unused macros
- numeric.c: fixed RPL_WHOISCHANNELS using wrong numeric
- m_die(), m_restart(): initialize buf[] to something saner
- m_die(), m_restart(): use get_client_name() instead of get_oper_name()
- Style corrections
- m_svsmode.c:ms_svsmode(): use pre-decrement just for consistency
- m_mode.c:set_user_mode(): use pre-decrement just for consistency
- Update help/stats
- Renamed general::warn_no_nline to warn_no_connect_block
- channel.c:send_members(): added missing #ifdef HALFOPS
- hostmask.c: style corrections
- m_xline.c:write_xline(): removed collapse() call
- m_info.c:send_conf_options(): cleaned up style
- rsa.c:binary_to_hex(): use unsigned int
- misc.c:ssl_get_ciper(): get rid of this magic IRCD_BUFSIZE/4. Use IRCD_BUFSIZE instead.
- packet.c: style corrections
- server.c: minor valid_servname() cleanup
- server.c:hunt_server(): save extra has_wildcards() call everytime hunt_server() finds a client/server in the hash tables.
- Update reference.conf
- Upate reference.conf
- conf_parser.y: style corrections
- conf_parser.y: removed extraneous strlen(). valid_hostname() already checks for too long hostnames
- conf_parser.y: cleaned up style
- Update reference.conf
- conf_parser.y: fixed bug where the parser wouldn't take time units into consideration for the join_flood_time and throttle_time config options.
- Replace few hash_find_id() with find_person()
- hash.c:list_one_channel(): constification
- hash.c:list_one_channel(): optimize for the admin case
- Fixed possible WATCH core. Fix provided by Adam
- Get rid of LOCAL_CHANNELLEN; change CHANNELLEN to 50
- m_set.c:mo_set(): removed hack. Let quote_autoconn() deal with missing parameters.
- Update NEWS
- Style corrections
- channel_mode.c: style corrections
- Fixed previous commit to m_set.c
- m_set.c: minor cleanups
- m_join.c:ms_join(): replaced irccmp() with strcmp()
- m_accept.c:m_accept(): replaced irccmp() swith strcmp()
- reslib.c:parse_resvconf(): replaced irccmp with strcasecmp()
- Style corrections
- m_unxline.c:remove_xline_match(): replaced DLINK_FOREACH_SAFE with DLINK_FOREACH
- Fix comments
- doxygen
- defaults.h: revert previous change
- Doxygen - Update help/undline
- svn propset on m_bmask.c and m_tmode.c
- Added m_bmask.c and m_tmode.c
- svn propset on m_unresv.c
- Added m_unresv.c and moved all UNRESV related code into it
- svn propset on m_unxline.c
- Added m_unxline.c and moved all UNXLINE related code into it
- svn propset on m_unkline.c
- Added m_unkline.c and moved all UNKLINE related code into it
- svn propset on m_undline.c
- Added m_undline.c and moved all UNDLINE related code into it
- Moved files: s_user.c -> user.c s_misc.c -> misc.c s_serv.c -> server.c
- doxygen
- m_map.c: notify irc-operators about /map requests
- Doxygen
- m_info.c: constification
- Cleaned up style & fixed comments
- Update reference.conf
- Further cleanups to m_module.c
- Clean up m_module.c
- m_whowas.c: renamed whowas_do to do_whowas
- m_motd.c: renamed mo_motd to ms_motd
- doxygen
- Style corrections
- Replaced strcpy() with strlcpy() in some places
- Removed pointless comments
- doxygen
- Fixed inconsistent style in some places
- Update NEWS
- m_svspart.c:ms_svspart(): added missing colon
- m_svspart.c: propset
- Added SVSPART
- m_svsjoin.c: propset
- Added SVSJOIN. Note that SVSJOIN does _not_ allow clients to override any channel modes, limits, keys or anything else.
- Moved s_auth.c to auth.c
- gline.h: updated comment
- Moved irc_res.c to res.c - Moved irc_reslib.c to reslib.c
- Moved s_gline.c to gline.c
- Removed useless header includes
- Removed useless header includes
- s_user.c:valid_nickname(): removed redundant assert()
- s_user.c: update/cleanup documentation
- s_user.c:register_local_user(): remove/update pretty outdated comment
- m_mode.c:set_user_mode(): removed pointless assert()
- m_mode.c: minor cleanups to set_user_mode()
- Moved set_user_mode() to m_mode.c
- Readded FLAGS_BLOCKED
- Undo -r3215 for now
- Channel.c: update documentation
- Made server_estab() and sendnick_TS() use 'static' keyword
- s_serv.c, m_server.c: moved all netburst related code to m_server.c
- m_quit.c:ms_quit(): don't default to source_p->name if no quit message is given
- m_module.c:mo_module(): whitespace commit
- doxygen
- doxygen
- irc_res.c: style fixes
- Made irc_nscount an unsigned type
- m_capab.c:mr_capab(): capability tokens must be all in parv[1] now
- doxygen
- doxygen
- motd.c:motd_lookup(): replaced MyClient() test with MyConnect()
- hash.c:safe_list_channels(): since we don't allow remote /LIST requests use source_p instead of of source_p->from when testing for sendq exceedance
- m_list.c: update documentation
- Made free_list_task() only take one parameter
- Made safe_list_channels and list_one_channel only take two parameters
- hash.c:delete_user_host(): replaced DLINK_FOREACH_SAFE with DLINK_FOREACH
- conf_db.c: fixed documentation
- Fixed corrupted "STATS U" output
- Style corrections/constification
- m_eob.c: removed invalid comment
- Fixed compile warnings
- mempool.c: style corrections
- Update Doxyfile
- Update Doxyfile
- m_gline.c:mo_gline(): whitespace commit
- Worked towards improving documentation
- Clean up redundant/unused header includes
- whowas.c:whowas_add_history(): constification; sanitize assert()
- s_user.c: reformating
- m_who.c:m_who(): admins may now see all channel members via "WHO #channel" regardless of channel mode +s
- irc_res.c:make_request(): lowered retries counter to 2
- Re-add CHW capability to cope nice with rb
- Worked towards improving documentation
- conf.c:match_conf_password(): fixed undefined behaviour with crypt() returning NULL since glibc2.17 in certain cases.
- motd.c: update/fix some comments
- Fixed inconsistent style in several places
- client.c:exit_client(): removed another comment that makes no sense here
- client.c:exit_client(): removed outdated comment
- client.c:exit_client(): removed kludgy code, also replaced x->servptr == &me test with just MyConnect(x)
- Fixed inconsistent style in several places
- s_bsd.c: no longer resetting source_p->from in close_connection()
- s_misc.c: mostly style cleanups
- send.c: mostly style cleanups. Removed some useless assert() statements
- hash.c: style fixes only
- Incorporate Adam's writev() patch
- m_sjoin.c:ms_sjoin(): removed unused variable
- Have /info report MPATH and SPATH aswell
- s_user.c:send_umode_out(): removed unused variable
- m_info.c:send_conf_options(): fixed core
- m_info.c:info_table[]: report DPATH before anything else
- Style corrections all over the place
- m_tburst.c:ms_tburst(): removed pointless MyClient() test on source_p. source_p can't be a local client.
- flex 2.5.39
- m_stats.c:stats_servlinks(): removed extranous spaces
- m_gline.c:ms_gline(): first argument to sendto_server() should be 'source_p'
- m_gline.c:do_sungline(): first argument to sendto_server() should be 'source_p'
- m_topic.c:m_topic(): use chptr->chname when reporting ERR_NOTONCHANNEL
- m_stats.c: renamed mo_stats() to ms_stats()
- hook.c: minor style fixes
- m_user.c: renamed do_local_user() to do_user(). Fixed comments.
- m_user.c:do_local_user(): removed unused parameters
- Fixed some comments; cleaned up style here and there
- m_watch.c:m_watch(): replaced all strcat() with strlcat()
- m_part.c:part_one_client(): use chptr->chname if we already looked up the channel
- m_user.c:mr_user(): optimize in case parv[4] is empty
- Minor cleanup to m_dline.c, m_gline.c, m_kline.c
- client.c: optimized find_person(). Removed pointless test.
- m_invite.c:ms_invite(): replaced find_person() with hash_find_id()
- m_invite.c: add ms_invite(). Cleaned up m_invite()
- m_kick.c: incorporate some of Adam's cleanups.
- m_vesion.c: merged mo_version() and ms_version()
- client.c:exit_one_client(): remove useless test on source_p->servptr->serv
- m_kill.c: further cleanups
- m_kill.c: cleanup ms_kill(). parv[2] must be non-null; otherwise the KILL is silently dropped.
- Fix to previous commit to m_kick.c
- m_kick.c: cleaned up m_kick()
- m_kill.c:ms_kill(): fixed compile warning
- m_kick.c:m_kick(): renamed 'who' Client pointer to 'target_p'
- m_kill.c: cleanup ms_kill(). Now no longer doing the find_chasing stuff, since ms_kill() only deals with targets being an UID.
- Fixed compile error in ms_sid() - Cleaned up find_chasing(). Removed useless third 'chasing' argument.
- mr_server(), ms_sid(): minor cleanup
- send.c:sendto_one_numeric(), sendto_one_numeric(): fixed issue where NOTICE and numerics were destined to the wrong target nick/ID
- Adam s00xx ;-)
- Get rid of the HasID() macro
- Get rid of the ID() macro
- Cleanup more places where ID_or_name() is no longer necessary
- Cleanup some places where we no longer need to use ID_or_name()
- s_user.c:check_xline(): use CONF_NOREASON for default reason
- m_map.c, m_admin.c, m_hash.c: remove unused header includes
- m_locops.c:ms_locops(): accept LOCOPS from servers
- m_kill.c: get rid of relay_kill()
- Get rid of kill_client_serv_butone()
- Get rid of kill_client()
- m_nick.c:perform_nick_collides(): incorporate Adam's "Send kills due to nick collisions back to the source." changes. Original commit message: Send kills due to nick collisions back to the source. This fixes a race condition with users changing hosts and then nick colliding which causes servers to disagree on whether or not the colliding users are the same user. With this patch if this happens both users are killed instead, even if their timestamps differ. The proper way to fix this is to compare a 'real host', which we do not store, or IP. With TS5 and prior we could not do this because the KILLs would be targeting nicks and not UIDs, which would not work as both sides would always lose, but we can do this now as the other side can safely drop the KILL for a nonexistant UID if the servers do agree.
- send.c:send_message_remote(): use to->id instead of to->name when propagating the KILL
- m_svinfo.c: minimum required argument count is 5. Remove redundant test on parc in ms_svinfo()
- Incorporate Adam's exit_client/quit storm cleanups Note: QS is mandatory now
- More client_p removal cleanups
- ms_join(), ms_sjoin(): made some server notices more descriptive
- s_auth.c: made sendheader macro use sendto_one_notice()
- Get rid of restart() wrapper function
- restart.c:server_die(): replaced a sendto_one() with sendto_one_notice()
- restart.c:server_die(): replaced a DLINK_FOREACH loop on serv_list with just sendto_server(). Also make sure to use me.id as sender prefix if possible
- More client_p removal cleanups - parse.c:handle_command: now no longer drop servers if the right amount of parameters isn't given
- parse.h: removed redundant comment
- ms_join(), ms_sjoin(): made some server notices more descriptive
- parse.c: whitespace changes
- Minor corrections to -r3156 [Removed client_p pointers from everywhere]
- Fixed now outdated comments
- channel_mode.c:chm_voice, chm_hop, chm_op: removed useless IsClient() test
- s_user.c:set_user_mode(): replaced a IsServer () test with MyConnect()
- Removed client_p pointers from everywhere
- s_user.c:send_umode_out(): replaced a DLINK_FOREACH loopn on serv_list with just sendto_server()
- channel_mode.c:chm_limit(): instead of passing an empty buffer to atoi() we just bail out
- m_hash.c: add missing colons which got lost in -r3110
- channel_mode.c: style corrections
- Removed unused client_p pointer from all chm_* channel mode handlers
- channel_mode.c: style corrections here and there
- m_server.c:mr_server(): check for bogus server ID
- channel.c: moved modebuf[] and parabuf[] to send_channel_modes()
- removed unused variables
- channel_mode.c:chm_op, ch_hop, chm_voice: renamed 'targ_p' to 'target_p'
- channel_mode.c: removed unused defines
- channel_mode.c: fixed buglet in send_mode_changes_server()
- Get rid of halfop -> op rewriting for servers that don't support halfops
- m_server.c:ms_sid(): constification + fixed comments
- m_svsnick.c: applied "Do not self collide clients who svsnick to themselves" patch by adam
- s_serv.c:server_estab() moved target_p pointer to inner scope
- Various fixes to previous ts5 removal changes
- Server now no longer accepts TS5 links
- svn propset
- respond.c: update copyright header
- Update tools/README.mkpasswd
- mkpasswd.c: mkpasswd now defaults to MD5 instead of DES
- mkpasswd.c: cosmetical fixes
- Update help/Makefile.in
- Removed m_users.c
- Missed some of the parv[0] removal changes. Fixed.
- m_invite.c: whitespace commit
- numeric.c, m_dline.c: fixed inconsistent use of "can't" and "cannot"
- Removed unused header includes here and there
- m_trace.c: get rid of remaining from & to pointers
- m_info.c: get rid of remaining from & to pointers
- m_stats.c: get rid of remaining from & to pointers
- Update dbuf.h, dbuf.c
- send.c: removed useless to->from checks
- send.h: update sendto_one_notice() prototype
- Added sendto_one_notice()
- Applied Adam's sendto_one_numeric() changes
- Applied dbuf changes as provided by Adam: Refcount dbufs instead of copying the same message to many different buffers.
- send.c:do_numeric(): fixed first parameter of sendto_channel_butone() call
- parse.c:do_numeric(): now use sendto_channel_butone() to also forward numerics that are sent to channels to remote clients
- send.c: cleaned up sendto_channel_butone() as suggested by Adam
- parse.c: removed redundant comment
- parse.c:handle_command(): properly deal with parv[0] which now points to the actual command string
- Applied Adam's "Put the command name in parv[0], not prefix name" patch
- conf.h: made some more constants use an enum
- s_auth.h: made 'flags' an unsigned int type
- modules.h: use an enum for flag types
- conf_class.h: use an enum for flag types
- listener.h: use an enum for flag types
- defaults.h: removed MSGPATH definition
- m_stats.c, conf.h: removed unused CONF_FLAGS_LIMIT_IP and CONF_FLAGS_NOMATCH_IP definitions
- white-space changes / style cleanups
- Renamed ts_warn() to sendto_realops_flags_ratelimited()
- mkkeypair: LICENSE doesn't exist anymore. It's now COPYING
- mkpasswd.c:main(): constification
- Update tools/README.mkpasswd
- numeric.c, m_set.c: fixed inconsistent use of "can't" and "cannot"
- conf_db.c: fixed inconsistent use of "can't" and "cannot"
- ircd.c:io_loop(): minor cosmetical fixes to the "reloading motd files" server notice
- ircd_signal.c:sigint_handler(): fixed inconsistent "SIGINT received" vs. "received signal SIGTERM" message
- numeric.c: fixed inconsistent use of "can't" and "cannot"
- reference.conf: applied 0001-ciphers-doc.patch by Guillaume Parent
- channel_mode.c: made mode_count, mode_limit, simple_modes_mask unsigned int types
- Removed FAKEHOST server capability for now
- Update NEWS
- channel_mode.c:send_cap_mode_changes(): fixed bug where MODE is used when it should use TMODE
- channel_mode.c: removed CAP_IE and CAP_EX from channel_capabs[]
- ircd binary is now again placed in /bin instead of /sbin
- Removed CAP_CHW. This is mandatory since hybrid 6.0 beta 25
- ms_bmask(): made mode_type an unsigned int type
- ms_bmask(), remove_ban_list(): removed capability tests for CAP_IE and CAP_EX as +I and +e are mandatory for quite a while now
- m_join.c:m_join(): constification
- m_encap.c:ms_encap(): removed irrelevant comment
- mempool.c: ifdef out destroy_chunks()
- modules.c:load_one_module(): renamed variables to make less confusing
- channel_mode.c: replaced several sprintf() with snprintf()
- Update NEWS
- m_help.c: whitespace changes
- client.c:find_person(): fixed mismatching prototype as pointed out by Adam
- Moved "struct config_channel_entry ConfigChannel" from channel.c to conf.c
- numeric.h: removed some other unused numeric constants as pointed out by Adam
- numeric.h: removed unused RPL_HOSTHIDDEN numeric constant
- reference.conf: applied 0004-Improve-reference-cipher-list.patch provided by gp.
- reference.conf: applied 0003-Increase-reference-DH-parameters-size.patch provided by gp. But instead of 4096bits we use 2048bits for the example command line.
- Update AUTHORS/version.c; add missing '>' spotted by Dizzie
- conf.c:get_oper_name(): constification
- m_challenge.c:m_challenge(): fixed an XXX
- hostmask.c:find_conf_by_address(): removed pointless password = "" assignment. match_conf_password() already deals with NULL pointers
- hostmask.c:add_conf_by_address(): fixed assert statement
- hostmask.c: minor cleanups to add_conf_by_address()
- Fix to previous changes in -r2997
- m_dline.c: get rid of this (type & ~0x1) hack
- hostmask.c: get rid of this (type & ~0x1) hack
- Update reference.conf
- m_admin.c: fixed invalid comment
- Stole recent /map changes from p4. Network map looks much better now.
- Via p4: Make whowas honor disable_remote_commands
- m_part.c:m_part(): removed IsServer() test
- m_quit.c: removed unused header include
- ircd.c:set_time(): replaced snprintf/report_error combo with ilog/sendto_realops_flags
- ircd.c:set_time(): minor style cleanup
- m_server.c:mr_server(): don't falsely exit a server with the reason being "SID already exists" if it's just hash_find_server() that returned non-NULL.
- m_xline.c: reorder functions, removed unused header includes, constifications
- m_help.c: Made dohelp() and sendhelpfile() void functions
- Move myctime() from irc_string.c to s_misc.c
- m_etrace.c: removed unused header includes
- Really make do_motd() a void function...
- m_admin.c, m_motd.c: do_admin() and do_motd() always succeed. Make them a void again.
- Update documents
- Added modules_get_list() and made modules_list visible to only modules.c - Fixed naming convetion of other linked lists in modules.c
- Removed sendto_channel_remote()
- register_remote_user(): removed unused realname/gecos parameter
- modes.txt: fixed typo as reported by gp
- channel_mode.c: fixed compile error with halfops enabled
- client.h: add separate definition for services IDs instead of using HOSTLEN
- Revert -r1925. We no longer show how many times an oline has been hit.
- match.c: removed unused header include
- channel_mode.c, channel.c: removed unused header include
- channel_mode.c:get_channel_access(): constification
- channel_mode.c: minor optimizations to set_channel_mode()
- Clean up stupid pointer magic passed to the channel mode handlers.
- irc_res.h: update copyright/license header
- Two native english speakers, to different opinions; another grammatical error fix to AUTHORS and version.c
- Added Adam to contributors
- s_auth.c, s_auth.h: optimized so we save unecessary auth_doing_list traversals. Patch provided by Adam.
- s_serv.h: removed unused header include
- modules.h: removed unused header include
- send.c: made some things use an enum.
- event.c: fixed compile error
- Clean up all files in include/ (fixed indentation, removed whitespaces/tabs) - Fixed copyright years
- Fixed bug where some irc clients could not reconnect via ssl as pointed out by gp
- m_capab.c: removed extraneous parentheses
- Implemented "userhost-in-names" client capability
- m_names.c: removed unused header include
- m_names.c: a channel name parameter is now required
- m_list.c: style cleanups
- channel_mode.h: fixed long-standing bug where +p channels have been show in the /whois reply
- m_names.c:names_non_public_non_secret(): fixed long-standing bug where users that are on a private/secret channel have been shown in /names output. Bug introduced in rev 1.60 (CVS) / Tue Jun 28 21:26:06 2005
- hostmask.c: constification
- channel_mode.h: made some things use an enum. Removed unused header include.
- hostmask.c: style cleanups
- channel_mode.c: fixed indentation, removed whitespaces/tabs, removed unused header includes
- Fixed grammatical error
- Fixed improper use of the ID_or_name macro in several places
- m_encap.c:ms_encap(): removed pointless code. Buffer can't be overflown since snprintf() is being used
- irc_string.c:has_wildcards(): add support for character escaping
- Use the i/o subsystem to execute scheduled writes. Patch provided by Adam.
- m_xline.c:mo_xline(): properly report missing privilege now that we have the 'unxline' oper flag
- m_xline.c: speed up xline lookups
- motd.c:motd_lookup(): constification
- Moved configuration related code from ircd.c to conf.c
- s_gline.c:find_is_glined(): style cleanup
- s_serv.h: made some things use an enum
- send.c, send.h: made some things use an enum
- Clean up all files in include/ (fixed indentation, removed whitespaces/tabs) - Fixed copyright years
- m_trace.c:ms_trace(): properly check return value of hunt_server() against HUNTED_ISME. Just in case the HUNT_* definitions get changed some day
- m_gline.c:ms_gline(): improved readability. Removed extranous IsClient() test.
- m_gline.c: merged do_sgline() into ms_gline(). Removed me_gline() encap handler.
- m_dline.c: merged me_undline() into ms_undline()
- Fixed indentation, removed whitespaces/tabs, update copyright header
- Regenerate parser
- Added 'unxline' oper privilege for better fine tuning
- m_server.c:mr_server(): if there's no connect block for a server, exit the connection with "No connect{} block." instead of "Invalid servername."
- Made irc numeric use an enum
- hook.h, hook.c: fixed indentation, removed whitespaces/tabs
- Update reference.conf
- Allow private rsa keys larger than 2048 bits. Reported by Zdenek Kaspar.
- doc/reference.conf: whitespace changes
- ircd_signal.c: fixed typo in comment
- ircd_signal.c: fixed indentation, removed whitespaces/tabs, removed unused header includes
- ircd_signal.c:setup_signals(): fixed bug where signals stopped from working after restaring the ircd via SIGINT. Spotted and fixed by Adam.
- ircd_signal.c: minor fixes to sigchld_handler()
- Tweak reloading/rehasing config files server notice
- m_xline.c:me_xline(): fixed misleading comment
- Fixed previous commit to ms_locops()
- m_locops.c:ms_locops(): replaced sendto_server() combo with sendto_match_servs()
- m_operwall.c: removed me_operwall() encap handler
- Clean up all files in modules/ (fixed indentation, removed whitespaces/tabs) - Fixed copyright years - Made module handlers int type for later use
- m_dline.c, m_kline.c: fixed wrong copyright years
- m_encap.c: fixed indentation, style cleanups, reformatting
- hostmask.c:parse_netmask(): optimize for the ipv4 case
- Renamed ban_them() to conf_try_ban() - conf_try_ban() removed exemption notices that are now redundant
- check_gline(), check_kline(): remove additional IsClient() test. There can't be an unregistered client on the local_client_list.
- Greatly speedup k-/g-line lookup. Instead of testing every single client against every single k-/g-line just check the just added ban against connected clients.
- m_dline.c, m_kline.c: fixed indentation, style cleanups, reformatting
- m_dline.c:mo_dline(). if a target server exists, use sendto_match_servs() instead of sendto_server()
- m_kline.c:mo_kline(). if a target server exists, use sendto_match_servs() instead of sendto_server()
- Fixed inconsistent ERR_NOPRIVS vs. ERR_NOPRIVILEGES mess
- m_message.c:msg_client(): removed pointless MyClient() test
- m_message.c: fixed indentation, style cleanups, reformatting
- Update NEWS
- Make PRIVMSG/NOTICE use UID targets if possible
- parse.c, m_message.c: replaced few 512s with IRCD_BUFSIZE; removed useless casts
- m_whois.c:do_whois(): get it to work with UIDs. Spotted and fixed by Adam.
- Update help/oper
- Update help/trace, help/kill
- Update help/stats
- Update help/unxline
- Update help/connect
- Update help/squit
- m_whois.c:whois_person(): removed /whois notice
- hash.c:exceeding_sendq(): constification
- m_who.c:do_who(): don't hide hopcount to irc operators
- m_map.c: don't leak hidden servers in /map
- Fixed server name leak for hidden servers in /who, /whois and /whowas
- m_trace.c:mo_trace(): properly check return value of hunt_server()
- mo_version(): fixed indentation
- Fixed kline issue as reported by Andrei Hristow
- conf.c:conf_free(): sanely clear hub/leaf lists fur debugging purposes
- s_bsd.c:ssl_handshake(): reset timeout handler once SSL_accept() has succeeded. Spotted by gp.
- Update copyright years
- Cleaned up RPL_WHOISADMIN hack
- Fixed bug where ircd didn't timeout SSL connections that haven't finished the SSL handshake. Reported by Adam.
- automake 1.14.1
- Fixed EOB not working for remote servers (Fake Direction)
- list.c:dlinkFindDelete(): minor readability improvements
- m_webirc.c: instead of silently dropping WEBIRC requests from registered clients, simply send ERR_ALREADYREGISTRED
- Update several help files
- Update several help files
- m_webirc.c:mr_webirc(): fixed bug where parv[3] isn't tested for a valid hostname. Spotted by Adam.
- channel_mode.c:set_channel_mode(): removed legacy code which has been introduced in rev 7.66(CVS) / Sat Dec 14 04:08:38 2002
- Avoid magically sized temporary buffers
- Avoid magically sized temporary buffers
- introduce_client(), sendnick_TS(): fixed buffer overflow if a client has all possible modes set that are defined in SEND_UMODES
- m_nick.c, m_join.c: Tweaked channel/nickname rejection notices
- client.c: #include "parse.h"
- event.c:aventAdIsh(): fixed compile warning with -Wunsuffixed-float-constants, replaced rand() with genrand_int32()
- client.c:make_client(): make use of the SetUnknown() macro
- version.c: cosmetical changes
- stats_hooks(), show_events(): no longer sending an extra empty line before RPL_ENDOFSTATS
- Update AUTHORS & version.c
- Update AUTHORS
- m_join.c:m_join(): actually test conf->reason for being a NULL pointer
- conf.c:valid_wild_card(): add missing va_end()
- m_help.c:sendhelpfile(): fixed fd leak
- send.c:send_queued_write(): removed pointless cast
- s_bsd_select.c, s_bsd_devpoll.c, s_bsd_epoll.c, s_bsd_kqueue.c, s_bsd_poll.c: style corrections
- ircd.c: show serial number on startup
- m_mode.c: fixed possible desync with modes set by services
- m_locops.c: added proper TS6 support / properly prefix LOCOPS message with name/UID
- send.c: cleaned up style here and there
- send.c:sendto_match_servs(): removed unused variable
- send.c:sendto_anywhere(): removed unreachable code. server never sends SID-prefixed messages to clients
- Removed setup_socket callback - Removed init_comm() as init_netio() can be called directly
- RPL_WHOISMODES now uses the 310 numeric to comply with other ircds
- Fixed compile warnings with --enable-poll and --enable-select
- m_svskill.c: replaced MyClient() test with MyConnect()
- Administrators may now see channel modes in /LIST
- src/s_bsd_kqueue.c: removed redundant init_netio() prototype; fixed indentation
- src/s_bsd_kqueue.c: fixed compile warning
- src/irc_reslib.c: removed advertising clause
- Set SVN properties on m_svskill.c
- Added SVSKILL
- Untabify help/who
- Add -fno-strict-aliasing to CFLAGS if possible
- include/client.h: add UMODE_CALLERID, UMODE_SOFTCALLERID to SEND_UMODES
- Applied kqueue() fix by Adam <adam@anope.org>
- Optimized find_person()
- client.c:find_person(): completely disallow UID guessing as suggested by Adam <adam@anope.org>
- Better distinguishing between usermode +g and +G in both /whois and /privmsg as suggested by Adam <adam@anope.org>
- Fixed ID_or_name macro as reported by Adam <adam@anope.org>
- listener.c:show_ports(): fixed ip address leakage even if hide_server_ips is set to 'yes'. Reported by Adam <adam@anope.org>
- bison 3.0.1
- channel.c: optimized find_channel_link() as suggested by Adam <adam@anope.org>
- Renamed kill_client_ll_serv_butone() to kill_client_serv_butone() just to satisfy Adam's OCD
- m_mode.c:ms_bmask(): fixed bug with server hiding enabled
- src/channel_mode.c: fixed small buglet in send_mode_changes() with server hiding enabled. Reported by Adam <adam@anope.org>
- Updated help/who
- m_who.c: updated comment
- WHO now shows whether or not a nickname has been registered with NickServ. ('r' status flag)
- src/numeric.c: added missing +h mode to 004 numeric when building the ircd with --enable-halfops as reported by Adam <adam@anope.org>
- src/send.c: fixed several compile warnings with -Wsign-conversion
- m_hash.c: constification
- m_whois.c: only administrators may see a client's certificate finger print
- channel_mode.c: fixed warnings with clang
- Administrators are now able to see user modes a user has set via /whois
- Style corrections
- Got rid of find_kill() and find_gline() wrapper functions
- m_topic.c: constification
- src/send.c: replaced all sprintf() with snprintf()
- src/numeric.c: fixed typo
- Added usermode +W. Users connected via a webirc gateway get this mode set by servers. - /WHOIS now shows whether a client is connected via a webirc gateway
- Admins may now see +s channels a user is in with /WHOIS
- m_svsmode.c: constification
- Added m4/ac_define_dir.m4
- Update NEWS
- Administrators can now see +s channels in /LIST
- Instead of forcefully adding -Wall -Wextra -Wno-unused -Wcast-qual -Wcast-align -Wbad-function-cast -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wredundant-decls -Wshadow -Wwrite-strings -Wundef to CFLAGS, 'configure' now tests if the flags are understood by the compiler
- m_svsnick.c: fixed stupid bug that leads to desynchronized nick database throughout the entire network
- Move openssl check to m4/ax_check_openssl.m4
- Initial build system related modernizations - Add -fstack-protector to CFLAGS if available
- Stole ircu's RPL_WHOISACCOUNT numeric
- find_person(): fixed naming convention - find_chasing(): reduced required arguments
- Bison 3.0
- Update NEWS
- doc/reference.conf: remove references to RSA public key
- Fixed certificate fingerprint validation for outgoing server connects
- Update doc/modes.txt
- Update NEWS file
- Update doc/challenge.txt
- Update help/stats
- channel.c:can_send(): fixed issue with channel mode +n having no functionality. Reported by Fawkes
- Removed rfc1459_command_send_error() message handler
- s_bsd.c:ssl_handshake(): no need to spam ircd.log with useless ssl errors
- include/patchlevel.h: changed patchlevel to hybrid(TRUNK)
- motd.(c|h): fixed core with zero byte length ircd.motd. Reported by Fawkes
- mr_nick(): remove legacy code for nicks cantaining '~'. valid_nickname() already takes care of this.
- Fixed bug that would prevent servers from linking together if connect::aftype wasn't specified
- help/cmode: fixed typo
- Remove msgq, and xsnprintf source files for now
- White-space commit
- White-space commit
- Update help/rehash
- White-space commit
- m_nick.c:change_local_nick(): fixed nickchange-flooding logic not to further penalize already penalized clients
- ircd_defs.h: increased PASSWDLEN to 128
- find_accept(): solved XXX
- m_xline.c:ms_xline(): removed already solved XXX comment
- m_trace.c:report_this_status(): XXX solved. x->localClient->firsttime can't ever be zero
- hook.c: constification/style corrections
- White-space changes
- m_whois.c: removed legacy code
- Fixed core with empty auth::spoof entries
- ircd_defs.h: increased KILLLEN, REASONLEN, KICKLEN, and AWAYLEN to 180
- Automake 1.14
- White-space commit / style corrections
- Removed useless sanity checks - Fixed bug where remote /STATS requests were not rate limited
- UNRESV should be logged as well - Improved logging. Fixed inconsistent use of get_oper_name() vs. source_p->name
- Added XLINE and RESV logging types
- Fixed broken --disable-libgeoip switch
- hostmask.c:hash_text(): removed pointless cast
- ircd.c: temporarily disable FAKEHOST capability
- reference.conf: fixed typo
- Fixed Dom's irc-name
- doc/reference.conf: revised reference.conf by Dominic Hargreaves <dom@earth.li> - version.c, AUTHORS: added Dom to contributors list since he helped al lot with GNU/Hurd testing and bugfixing
- motd.c: fixed possible core with "STATS z" as reported by Fawkes
- Stole ircu's outbound message queue implementation for later use
- conf.c:attach_iline(): there should never be a conf that hasn't a class attached to it. Let it crash if it's otherwise
- s_user.c: style corrections, remove useless comment
- conf.c:valid_tkline(): minor cleanups
- s_serv.c:show_capabilities(): fixed buffer oddities
- doc/reference.conf: whitespace changes
- doc/reference.conf: whitespace changes
- numeric.c: constificate replies[]
- s_misc.c: constify weekdays[], months[]
- whowas: Renamed functions. add_history -> whowas_add_history off_history -> whowas_off_history get_history -> whowas_get_history
- whowas.c: renamed count_whowas_memory() to whowas_count_memory() - watch_count_memory(), whowas_count_memory(): constification, renamed variables, removed unused variables
- Rename Ban::username structure member to Ban::user
- Added FAKEHOST server capability for later use
- client.h: add UMODE_HIDDENHOST to SEND_UMODES
- s_user.c:user_set_hostmask(): don't send QUIT message to channels if cycle_on_host_change is turned off
- s_bsd.c:ssl_handshake(): shrink buffer size of md
- Update NEWS and reference.conf
- Added generall::cycle_on_host_change configuration option as requested by Adam <adam@anope.org>
- s_serv.c: cleanup show_capabilities(). Replace sprintf() combo with strlcat()
- Update doc/reference.conf
- Back out previous changes to detach_conf()
- conf.c:detach_conf(): fixed bug where we didn't call remove_from_cidr_check() in some cases
- Sort out unused header includes
- m_stats.c: fixed typo
- Added general::stats_u_oper_only configuration option
- Update doc/reference.conf
- tools/mkpasswd.c: replace another sprintf() with snprintf()
- trace_get_dependent(): use unsigned int here
- Removed doc/guidelines.txt
- Really update README
- Update README
- Update README. Mention libGeoIP
- ircd.c: whitespace commit/style cleanup
- conf_parser.y: don't attempt to copy ciphers if there aren't any
- Add operator::ssl_connection_required configuration option
- Add usermode 'S' (client is connecte via SSL/TLS). Allows services to keep track of what users are connected via SSL, and allows to see ssl-status of remote clients in a /whois.
- rename 'fingerprint' configuration directive to 'ssl_certificate_fingerprint'
- channel_mode.c:add_id(): don't leak server names of servers that are hidden. Patch provided by Adam <adam@anope.org>
- svn propset
- automake 1.13.4
- Update doc/reference.conf
- Change CERTFP implementation to use SHA-256 hashes - Remove base16_encode()
- Update doc/reference.conf
- numeric.c: fixed core introduced in -r2228
- Enable certificate fingerprint validation for CHALLENGE aswell
- s_user.c:introduce_client(): must send CERTFP on client introduction aswell
- s_bsd.c:ssl_handshake() replaced a xstrndup() with xstrdup()
- Cleanups and fixes to previous commit -r2228
- Implement certificate fingerprint validation for oper{} and connect{} blocks. Some code taken from oftc-hybrid. Hello, stu!
- Update NEWS
- white-space commit/style corrections
- mkpasswd.c: replace all sprintf() with snprintf()
- respond.c: white-space changes/style corrections
- Update challenge.txt
- Added read_links_file()
- conf_class.c: white-space changes
- s_serv.c:write_links_file(): replaced a dlinkAdd() with dlinkAddTail()
- Update NEWS and reference.conf
- channel.c: optimized can_join(). Do less intensive tests before actually testing for ban/exempt masks
- m_services.c: changed HS shortcut to send messages to HostServ
- motd.c: style correction
- Update doc/serverhide.txt
- - Update NEWS/fixed typo:wq
- Moved disable_remote_command configuration directive from general{} block to serverhide{] block
- Fixes to changes done in -r2164
- motd.c:motd_destroy() don't attempt to unlink a local/remote motd from MotdList.other
- motd.c:motd_cache(): do the stat() before fopen() + improve error reporting in case stat() failed
- Removed Client::client_host and Client::client_server members
- m_etrace.c: removed XXX-tag. /etrace -full gives extendend etrace
- Removed usermode +C
- Style correcions/white-space changes
- Fixed debug assertion being triggered on ident lookup as reported by Stuart Walsh
- automake 1.13.3
- Now that invite- and ban-exempts are hardcoded, there's no need to delete them from ISUPPORT-list on /rehash
- Remove unused temporary_resv list. Move channel_resv_list to conf.c
- Update reference.conf
- motd.c, motd.h: fix compile warnings
- motd.c, motd.h: add support for ip masks
- motd.h, motd.c: minor cleanups. use 'unsigned' whenever possible
- include/defaults.h: remove unused INIT_LOG_LEVEL define
- m_stats.c:report_confitem_types(): remove unused variable
- Cleanup ISUPPORT code and get rid of message.c
- Cleanup flattened links code
- Update NEWS
- doc/reference.conf: fixed typo
- Implement motd{} configuration blocks based on ircu's implementation
- Don't let non-SSL users join +S channs if ircd has been compiled without SSL support. Spotted by Stuart Walsh
- update help/umode, doc/modes.txt
- m_svsmode(), user_set_hostmask(): minor cleanups and fixes to previous commit
- m_svsmode.c: avoid HostServ floods
- s_user.c:user_set_hostmask(): send a QUIT/JOIN combination to other channel members to avoid desynchronized IALs
- s_user.c:user_set_hostmask(): don't unset FLAGS_IP_SPOOFING if the client's hostname has already been spoofed by an auth{} block based spoof.
- Finished proper implementation of usermode 'x' (UMODE_HIDDENHOST) Only services may set a fakehost via SVSMODE.
- s_user.c, s_serv.c, rsa.c: style corrections; mostly whitespace changes
- get_member_status(), valid_wildcard(): constification
- resv.c: move valid_wild_card_simple() to conf.c
- conf_parser.l, conf_parser.y: style corrections
- conf_parser.y: fixed logic error allowing connect{} blocks that don't have valid send/receive passwords
- s_user.c:report_and_set_user_flags(): minor spelling fixes
- Removed doc/server-version-info
- m_version.c: removed confopts(). Configuration options can be seen in /info
- Got rid of CONF_HUB enum type
- Got rid of CONF_CLASS enum type
- Remove temporary xline kludge that was required for better interoperability with 7.0 servers
- LOCOPS notices should only be sent to opers that have usermode +l
- conf_parser.y: match() takes care of multiple globs. no need to run collapse()
- Made LOCOPS messages appear as a NOTICE
- m_ison.c: merge do_ison() into m_ison()
- Undo -r1899 for now [Changed RPL_WELCOME to comply with rfc2812]. Looks like this confuses mIRC in conjunction with spoofed hosts
- Update help files
- Fixed broken spoofs
- m_who.c: replaced several DLINK_FOREACH_SAFE with a simple DLINK_FOREACH
- m_who.c: style corrections
- Update doc/modes.txt
- Removed testline and testmask
- s_serv.c:hunt_server(): removed collapse() call. Let match() deal with it.
- version.c: update copyright years
- Removed extranous EmptyString() test
- m_whowas.c:whowas_do(): minor cleanups and optimizations
- Update help/notice and help/privmsg
- Removed outdated comment
- Another fix to previous commit. Am I drunk? Aye!
- Fixed compile error
- Merged valid_username() and clean_user_name()
- automake 1.13.2
- m_svsmode(): restore ability to change a user's host via SVSMODE +x
- m_svsmode(): temporarily allow 3 arguments (SVSMODE without a valid TS)
- Update help/cmode
- m_nick.c: replaced few strcpy() with strlcpy()
- m_help.c: minor changes to dohelp() (use pointer arithmetic instead of indexing)
- Update help/index
- Remove help/uhelp - Cleanup help/Makefile.am to make it easier to read and maintain - Rebuild help/index
- Added 'locops' and 'wallops' to irc-operator flags --- Diese und die folgenden Zeilen werden ignoriert -- M include/client.h M src/conf_parser.c M src/conf_parser.h M src/conf_lexer.c M src/conf_parser.y M src/conf_lexer.l M doc/reference.conf M modules/m_locops.c M modules/m_wallops.c
- Improve KILL server notice to be more specific about the client being killed (ircnet style)
- Remove help/opers/
- Update configure
- Move all helpfiles to help/
- Overhaul HELP system
- Update reference.conf
- m_svsmode(), set_user_mode(): \n, \r, \t aren't treaded specially anymore
- Remove entering_umode and change_umode callbacks in preparation for the modular usermode subsystem
- m_topic.c: fixed compile warning
- Update reference.conf
- Whitespace commit
- Update reference.conf
- Removed 'remote', and 'global_kill' oper flags, and added 'connect', 'squit', and 'kill' flags for better fine-tuning instead. Whether or not a specific action is allowed on a remote server can be controlled by appeding the ':remote' flag. For example: 'kill' allows only local clients to be killed, whereas 'kill:remote' allows to issue a KILL for remote clients
- Renamed m_error() to mr_error()
- mr_error(): ignore error if it's not a connecting/handshaking server
- part_one_client(): removed useless client_p argument
- m_nick.c, m_part.c: only style corrections
- set svn properties
- Re-added Tao-of-IRC.940110 for historical reasons and because I like it.
- Update modes.txt
- Mostly style cleanups & whitespace changes
- Update README. config.h is gone for over a decade now
- Removed unused OFLAG_OPER_SPY definition
- Only show remote client exit notices if the server sent an EOB
- Whitespace commit (test)
- m_eob(): Re-added EOB notice
- regenerate parser/lexer
- Added 'nononreg' (+R) to general::oper_umodes
- Added usermode F (remote client connect/exit notices) on public request
- m_eob(): removed assert() which is now invalid
- Cleanup previous commit -r1957
- EOB is now send to all servers globally
- Cosmetical cleanups
- Print chunk capacity to debug.log instead of ircd.log
- Tweaked various mempool chunk sizes
- Update modes.txt
- (RPL_REDIR) Change conversion specifiers
- Fixed strange user/oper idle-times shown in /trace
- Update NEWS
- Implemented channel mode +M. Clients that haven't identified their name with NickServ may not speak in a channel that has this mode set
- Update comment
- conf.c:verify_access(): removed unused variable
- Removed channel::quiet_on_ban configuration option. This feature is now enabled by default
- can_send(): fixed bug where bans were not checked against non-channel members
- can_send(): ops/hops/voices may not speak thru +c; ensure msg_has_controls() isn't called twice for non-chanops
- can_send(): ops/hops/voices may not speak thru +c
- Implemented channel mode +c. Known from other ircds, this mode basically prevents users from sending messages including control codes to a channel that has this mode set
- Minor spelling fixes
- Update serverhide.txt
- Update NEWS
- Update README
- Move report_resv() to m_stats.c
- "STATS o" now shows how many times an oper{} block has been used. Just like "STATS x|q"
- Moved report_confitem_types() to m_stats.c
- Forward-port -r1920 [Dropped PCRE support]
- Made valid_wild_card_simple() easier to read
- Unidentified/unregistered nicks may not speak in +R channels
- Fixed shared{} blocks not working as expected - Fixed spoofs not working as expected
- Increased nickname history length to 32768
- Removed operflag 'nick_changes'. Operators can now set +n at will
- channel.c:get_member_status(): removed useless NULL pointer test
- Changed RPL_WELCOME to comply with rfc2812
- m_list.c:do_list(): add sanity test for parv[1] being NULL
- m_mode(): these buffers don't need to be static
- m_kick.c: revert changes made in revision 1.24 (cvs) made on Sun Jan 7 04:46:30 2001 UTC AnonOps are gone. And as described in rfc 2812, this is how ircd should behave in case no kick-reason has been specified
- m_quit(), ms_quit(): added extra sanity test for parv[1] being NULL, also try to avoid modifying parv[1]
- m_part(): added extra sanity test for parv[2] being NULL
- Replaced a strpbrk() with has_wildcards()
- Made find_capability() return an unsigned int
- m_whowas.c,m_names.c,m_kick.c: remove pointless code. There's no real reason why we should skip preceding commas in nick-/channelnames
- "STATS s" now shows configured services{} blocks as well
- WHOIS may no longer accept wildcards
- Fixed broken compile with libGeoIP disabled
- Update reference.conf
- Update NEWS
- Fixed core on rehash with resv exempts
- Minor cleanups to reference.conf
- Update NEWS
- Update NEWS
- God Damn It; resv exempts should be working now
- Minor fixes to new resv exempt code
- Added basic support for libGeoIP - Added exempt configuration option to resv{} blocks
- Constification
- Added configure test for libGeoIP for later usage
- Added 'nononreg' (+R) to oper::umodes and general::oper_only_modes
- Have /INFO show the configured value of serverhide::hide_services
- Update NEWS
- Too much red wine
- Cleanup m_map.c - Implemented serverhide::hide_services configuration option
- doc/reference.conf: whitespace commit
- numeric.h: cosmetical cleanups; removed useless comments
- numeric.(c|h): remove RPL_TEXT, re-add RPL_RSACHALLENGE
- Constification, replaced few sprintf with snprintf
- s_misc.h: fixed compile warning with -Wunsuffixed-float-constants
- Fixed some compile warnings
- send.c:sendto_common_channels_local(): fixed core which has been introduced in -r1734
- conf.h: removed MaskItem::hnext member
- Fixed "STATS e" showing random data sometimes - Mino style corrections to m_stats.c
- m_info.c: fixed RESVPATH showing the pathname of the XLINE-file; also DPATH is the root directory of installation
- Update NEWS
- Add ERR_CHANBANREASON (numeric 485)
- Numeric 432 now shows the actual reason of quarantined nicknames
- Remove current msg locale implementation
- m_users, show_lusers: removed extranous arguments to sendto_one()
- bison 2.7.1
- Revert to -r1831
- bison 2.7.1
- Made all numeric defines use the actual string instead of the numeric value which allows to use gcc's printf format attribute - Remove current message locale implementation
- Forward-port -r1741 [Fixed logfiles not getting reopened on /rehash]
- Update NEWS
- Update README
- Update NEWS
- Cleanup m_info.c; merged ms_info and mo_info, style corrections, constification
- Minor cleanups to hash.c; removed now unused functions, style cleanups
- Quarantined/reserved channels may now contain wildcards
- Update reference conf
- Renamed example.conf to reference.conf - Due to upcoming feature implementation, resv{} blocks are no longer stackable
- Removed recently added m_svshost.c. Services may now change the host of a specific user via "SVSMODE <timestamp> <target> +x <hostname>"
- Remote server connection and split notices now go to new usermode +e
- Added default sid to example configuration files
- set_user_mode(): remove useless debugging notice
- Forward-port -r1810 [m_whois.c: fixed bug where TS5 servers would send an empty RPL_WHOISACTUALLY numeric]
- Forward-port -r1807 [m_svsmode.c: SVSMODE now requires at least 4 arguments]
- Minor fixes to mo_testline (too many arguments passed to sendto_one)
- Update doc/ircd.8
- Remove BUGS file
- myctime(): replaced strcpy() with strlcpy()
- Forward-port -r1791 [improved services support. services may now set a channel topic without joining the channel first]
- Cleanup/reorganize header file layout - Fixed naming convention in some places
- Update NEWS
- Removed TODO file
- Forward-port -r1792 [Added SVSHOST command handler which allows services to change the hostname of a specific user]
- KLINE, DLINE, SQUIT and KILL now make use of CONF_NOREASON as well
- Replaced all occurrences of ircsprintf with sprintf/snprintf and killed sprintf_irc.(c|h)
- Fixed possible core in try_parse_v4_netmask() as reported by bobnomnom
- Forward-port -r1784 [Fix bug where idle time sometimes is 0 even if the client didn't send any private message]
- Forward-port -r1774: - Configuration parser now does support 'year' and 'month' units - Add support for fake idle times to /whois. Known from csircd, this adds min_idle, and max_idle configuration directives to class{} blocks
- Update INSTALL
- Forward-port -r1771 [channel_mode.c: check_string() didn't work right in case string started with a space. (i.e., "MODE #chan +b : c" results in a weird ban mask) Bug got introduced in ircd-hybrid-5/channel.c, Revision 1.26
- m_rehash(): cosmetical cleanups
- INFO now also shows configured values of 'disable_fake_channels', and 'stats_e_disabled'
- m_rehash.c: FDLIMITS is no longer rehashable
- Fixed some other invalid conversion specifiers
- %lu conversion specifier has been used when it should be %u
- Update README: ircd-hybrid is now known to work properly on Debian GNU/Hurd 0.3. Kudos to Dominic Hargreaves
- Values of max_clients, max_nick_length, and max_topic_length are now shown in /info
- conf_parser.y: fixed warning introduced by previous commit
- Forward-port -r1740 [Fixed yyerror() not reporting configuration errors in some cases]
- Forward-port -r1750 [IMPORTANT: nick and topic lengths are now configurable via ircd.conf. A max_nick_length, as well as a max_topic_length configuration option can now be found in the serverinfo{} block] - OpenSSL 0.9.8s and higher is now required in order to enable ssl support
- Rebuilt conf_parser.c - Minor logic fixes to recently added away-notify capability
- Forward-port -r1744 [conf_parser.y: fixed fd leak with rsa public keys]
- Forward-port -r1742 [ircd.pid should be in /var/run instead of /var]
- Quick and dirty workaround to fix build on GNU/Hurd because of undefined PATH_MAX
- Forward-port -r1732 [Dropped support for linux rt signals]
- Add support for "away-notify" client capability
- Update NEWS
- automake 1.13.1
- Minor updates to example configuration files
- Backported -r1723 [Fixed possible core on USERHOST/ISON/CAPAB which for some reason only happens with glibc with optimization enabled. Reported by Mantas]
- parse.c:handle_numeric(): add missing space as reported by Mantas
- m_invite.c: fixed broken CHWALL invite notice for invitees that are on a remote server
- automake 1.13
- parse.c:handle_numeric(): implement ircu-based improvements/cleanups which basically avoid reprinting numeric buffers
- src/ircd.c: minor updates to myopts[] commandline options
- m_message.c: fixed bug where 'can_flood' didn't work as reported by Fawkes
- Improved WEBIRC authentication; added 'webirc' to auth::flags
- Fixed core on UNDLINE
- /info now also shows pathnames of g-/x-line database files
- m_help.c: allow a maximum of MAXPARA parameters
- Forward-port -r1697 [Fixed bug where ircops could not see nick rejection notices]
- Updated README
- Fixed WEBIRC module
- m_nick.c:mr_nick(): remove useless IsExemptResv() test which can never be true since the EXEMPT flags are set after nick/user/capab registration
- Forward-port -r1685 [STATS q|Q now shows how many times a resv{} block has been matched]
- channel_mode.c: chm_invex, chm_exempt: ban and invite exemptions are now always sent regardless of CAP_IE/CAP_EX
- parse.c:handle_numeric(): added temporary workaround for servers sending numeric 451 (ERR_NOTREGISTERED) in response to the "NOTICE AUTH ..." messages uppon registration
- bison 2.7 & automake 1.12.6 - Update configure.ac
- Minor documentation update to example configuration files
- m_etrace.c: fixed compile warning; removed set_time() call in report_this_status()
- Removed "ungline" helpfile
- Minor cleanups to m_help.c, also helpfiles may no longer contain #comments
- event.c: fixed bug spotted by Jakub S. where timed events stopped from working if the system's clock is running backwards
- Update some configure tests. We actually don't use inet_aton and friends anymore.
- Fixed bug where specifying a listener port without an ip address didn't work
- conf_db.c: import backup/restore cleanups from 5.1.24
- client.c: fixed another compile warning with --enable-assert
- Cleanup unused header file includes - Fixed minor compile warning in conf.c
- memory.c: removed mem_frob() - automake 1.12.5
- Update INSTALL file
- Fixed inconsistent svn file properties
- channel.c:send_channel_modes(): now that CAP_IE and CAP_EX are mandatory, let's always send invite/ban exception during a burst
- Dropped contrib/
- move m_webirc.c from contrib/ to modules/
- conf_class.c: remove unused header includes
- add mempool.(c|h)
- hostmask.c:find_conf_by_address: fixed logic error which got introduced in -r1652
- Implemented memory pool allocator which basically is taken from Tor's mempool allocator for Tor cells - Fixed compile warnings in conf_class.c - ./configure --enable-assert works again
- added improved match() stolen from ircu - fixed compile warning in m_module.c
- changed match() polarity. match() now returns 0 on match and 1 on non-match This cleans up several places where function pointers of different matching functions like irccmp/strcmp/match are passed to other functions. - added improved collapse() to match.c
- Fixed class blocks not getting default values set properly - bison 2.6.5
- Fixed few bugs that have been introduced with config rewrite - Set some reasonable default values right after a class has been created
- minor MaskItem structure cleanup
- conf_parser.y: fixed some logic errors
- Finish stabilizing/cleanup of conf parser
- First pass of conf parser stabilization/cleanup
- conf.c: cleanup detach_conf()
- More config subsystem cleanups
- Fixed class limits for oper{} blocks
- Cleanup configuration subsystem - Fixed broken CIDR support for /challenge
- svn propset svn:keywords "Id"
- fixed compile warnings in contrib/
- Add conf_class.c, conf_class.h
- Initial rewrite of the configuration subsystem
- restart.c: since save_all_databases may generate server traffic and log activity, it makes more sense to save the databases _before_ flushing the sendqueue/closing file descriptors
- restart.c: ensure databases get dumped to disk before terminating
- Fixed previous commit to m_resv.c
- flesh out new *line database handling - simplify temporary bans
- read_uint8, write_uint8: use uint8_t instead of unsigned char
- minor cleanups to conf_db.c; Get rid of 16 bit limitation string lengths
- dbs are now periodically flushed on disc every 5 minutes
- Fixed compile warnings due to missing arguments to sendto_realops_flags()
- Removed temporary_xlines list
- klines, dlines, xlines, glines and resv now make use of the new database; also, temporary *lines are now stored, so they're not lost after restarting the ircd. This also applies to G-lines.
- src/conf_db.c: Cleanup get_file_version()
- Added conf_db.c based on ircservice's binary database for later use
- bison 2.6.3
- Made m_globops() and ms_globops() use sendto_realops_flags() - Added message-type parameter to sendto_realops_flags() which can be one of SEND_NOTICE, SEND_GLOBAL, SEND_LOCOPS - Forward-port -r1617
- Fixed possible TBURST desynchronization with services - Fixed TBURST sending server's name to clients if it's a hidden server
- Second time's the charm? Moving svnroot/ircd-hybrid-8 to svnroot/ircd-hybrid/trunk
bump patchlevel to 8.0.0
- cleanup and rephrase a few things - gut the platforms list down to what we actually test
- Update challenge.txt
- mkpasswd.c: constifications
- stats_tklines(): remove unused variable
- Fixed bug in stats_klines() showing oper_reason to unopered clients - Fixed /stats d|D showing "(null)" if there's no oper_reason
- contrib/m_change.c,ip_cloaking.c: CHGHOST/CHGIDENT didn't update bancache. Fixed
- modules.c: better error reporting if lt_dlsym() fails for some reason
- Update NEWS
- ms_squit(): exit uplink if we receive a SQUIT destined for us
- client.c:exit_client(): cleanup oddities when removing servers from serv_list. Connecting and HandShaking servers are never added to serv_list, so no need to try to remove them.
- parse.c: whitespace commit
- Removed remnants of MFLG_UNREG which is no longer needed with the current implementation of message handlers
- ADMIN is no longer available to unregistered connections
- Removed challenge.irc, ircd-hybrid.spec and ircd.init.in from contrib/
- m_module.c: if we cannot find a available option, yell at the user
- find_person(): allow services to seek clients by UID even if they're +i
- Replaced TimeStamp based services IDs with more flexible account names
- Update documents
- example.conf: add some words about the service{} block
- Update NEWS file
- Update example configuration files
- Removed general::kline_with_reason configuration options. It's now enabled by default - Removed remnants of the broken reject holding code
- Update INSTALL file
- Removed general::use_whois_actually configuration directive. This is now enabled by default
- fixed previous commit to m_links()
- write_links_file(): minor cleanups. Also remove useless assert()
- m_links.c: a server's description may now include the [, ] characters
- m_webirc.c: fixed typo in comment
- Fixed an off-by-one with spoofs. Spoofs are now also checked for invalid characters.
- example.conf: minor updates
- Preparing for 8.0.0 release
- bump patchlevel to 8.0.0rc1
- example.conf: God doesn't need his/her own oper{} block
- conf.c: r(x|k)line.conf is gone. Don't try to load it on startup
- automake 1.12.4
- Update example configuration files. We're actually at version 8
- A server's description can again include the '[' and ']' characters
- Fixed possible core on /stats
- ms_nick(): reject nickname changes without a TS
- ircncmp(): ignored length variable. fixed
- removed server hostmasking leftovers
- ms_sid, ms_server: minor optimization. if we already found a matching hub/leaf mask, don't continue looking for other masks
- Fixed SID introduction as reported by Mantas M. This bug has been nicely implemented in -r1239
- fixed minor compile warnings
- Update contrib/README
- example.conf: add proper documentation for connect::ssl_cipher_list
- configure.ac: fixed syntax error - example.conf: mention that the DH prime size must be at least 1024 bits
- Update example configuration files
- removed --enable-small-net configure option - removed unused TOPIC_HEAP_SIZE definition - decrease DNS_HEAP_SIZE as well as AUTH_HEAP_SIZE
- removed unused terminal symbols
- Topics as well as user-aways are now sent in a burst by default
- Removed rkline.conf and rxline.conf leftovers. Regular expression based k- and x-lines can be set via ircd.conf only.
- Update configure for the release candidate
- Removed general::client_flood configuration option and added the new 'recvq' configuration directive to class{} blocks. The max size of a receive queue can be seen in "STATS Y" for each class - Update NEWS
- Minor documentation updates
- Removed two outdated/invalid XXX tags
- Update README
- Update fgeek's and adx's email address
- Update fgeek's email
bump patchlevel to 8.0.0beta3
- ircd-polish.lang: update adx's email here too
- Update adx's email address
- flex 2.5.37
- Update NEWS
- automake 1.12.3
- Removed all unused references to GPATH and glinefile. There's no glines.conf.
- m_services.c: removed "IDENTIFY". Use "CS/NS IDENTIFY" instead
- Update messages/README
- fixed several language files dumping an error when loading
- Update example.conf
- bison 2.6.2
- Move HOSIPLEN, IDLEN and PASSWDLEN to ircd_defs.h
- m_knock(): announce INVITE requests via NOTICE to other channel operators, rather than using a numeric reply for this
- Removed use_invex, use_except and use_knock configuration options. These features are now enabled by default
- Update configure.ac to reflect beta3 release
- Update NEWS
- bison 2.6.1
- m_services.c: remove MODULE_FLAG_CORE
- removed serverhide::disable_hidden configuration option - update NEWS
- m_links.c: fixed archaic bug that would send hidden servers to non-opers
- Update example configuration files
- m_tburst.c: fixed logic error
- m_tburst.c: TBURST requires at least 6 parameters
- m_tburst.c: Services may always override topic-/channel-TS rules
- Add back AWAY throttling, now that we allow changing away messages without unsetting AWAY in the first place
- Made Client::away a fixed-size array at the expense of a somewhat higher memory consumption
- m_gline.c: hybrid 6 GLINE compatibility mode has been removed
- m_message.c: /messaging opers@some.server is no longer supported
- flood_attack_channel(): remove useless argument
- fix msg_channel_flags() so it can deal with messages coming from servers
- Allow servers and service to send @%+ prepended channel messages
- m_invite(): using INVITE now always requires channel operator status, regardless of channelmode 'i/p'. Also, halfops may no longer use the INVITE command
- m_invite(): fixed _remote_ INVITE announcement notices. channel names needs to be prepended with an '@', otherwise even non-channelops will receive the anouncement if the invitee is on a remote server
- add BotServ and HelpServ to resv{} block
- removed &localchannels
- m_tburst.c: fixed client-side topic desynchronization bug that may happen in case a remote server has a greater TOPICLEN value than the server that actually is receiving the TBURST
- remove CAP_TB - add proper TS6 support to TBURST
- bump patchlevel to 8.0.0beta2
- s_user.c:oper_up(): information about oper privileges can be obtained via "STATS p|o". No need to send a separate notice on oper-up.
- must propagate UMODE_REGONLY to other servers, otherwise message-blocking won't work for remote clients
- m_challenge.c: add mo_challenge() which now takes care of operators issuing the CHALLENGE command
- bison 2.6
- s_serv.c:sendnick_TS(): another TS6 fixup when bursting AWAY
- Update NEWS file
- m_connect.c,m_gline.c: add proper TS6 support - m_gline(),m_gungline(): don't let non-opers find out whether or not a server has GLINE/GUNGLINE disabled
- automake 1.12.2
- Update INSTALL file
- Added 'set' to operator privilege flags. Gives access to the "SET" command
- remove g-line acls - added general::gline_request_duration configuration option which simply replaces the harcoded PENDING_GLINE_TIME definition
- s_user.c:oper_up(): use get_oper_name() when announcing an operator
- m_stats.c: minor cleanups; remove useless wrapper functions, etc.
- configure.ac: fixed OpenSSL detection for systems that use static ssl/crypto libraries
- Minor constification changes
- Update configure.ac
- m_join.c: Fixed another dumb bug which would prevent clients from joining more than one channel. #missingparentheses
- Update configure in preparation for beta2
- Style corrections
- Minor optimization to m_invite()
- Merged m_away() and mo_away(). Also, /away is no longer time-limited. - Same goes for /list
- Don't allow m_module.la to be unloaded
- Added m_module.c and moved mo_module() into it
- Removed OMOTD --- Diese und die folgenden Zeilen werden ignoriert -- M include/defaults.h M include/conf.h M include/numeric.h M include/motd.h M src/s_user.c M src/messages.tab M src/motd.c M src/ircd.c M modules/Makefile.in M modules/m_challenge.c M modules/m_oper.c D modules/m_omotd.c M modules/m_rehash.c M modules/Makefile.am M NEWS
- example.quit.conf: removed kline_with_connection_closed as spotted by Mark Cunningham
- conf.c: fixed stupid bug which would set the default value of max_chans_per_user to 50 while setting max_chans_per_oper to 0
- Update documents to reflect new channel-/usermodes
- Added back server notice when a client tries to obtain a reserved nick name. Kinda useful notice; no idea why it got removed 10 years ago
- Update documents
- remove outdated helpfiles
- Remove outdated helpfiles
- Update help files
- Removed MODLOAD, MODRELOAD, MODUNLOAD and MODLIST command handlers. They all have been replaced by the new "MODULE" command which now deals with the LOAD/UNLOAD/RELOAD/LIST parameters.
- Removed "MODRESTART" command. "MODRELOAD *" will now reload all modules.
- Backed-out -r1429. Unregistered clients may again speak in +R channels
- Update INSTALL file
- m_quit(): "Quit: " is now always prepended to a quit message
- Added channel::max_chans_per_oper configuration directive. The old way was to let ircops join three times the amount of max_chans_per_user. I'd rather would make this a class{} based limit, but this would require us to reprint the ISUPPORT buffer every time a client connects.
- NICKLEN definition no longer respects the trailing NUL character (reverts to old behavior)
- channel.c:can_join(): use strcmp() instead of irccmp() when comparing channel key (+k)
- Unregistered clients may not talk in a +R channel
- doc/example.conf: whitespace commit
- parse.c: make msg_tree_parse() only take one argument - client.h: rearrange structures
- update comments "I: line vs. auth{} block"
- automake 1.12.1 & bison 2.5.1
- channel::disable_fake_channels now also disables ascii 29 (mIRC italic) when set to yes. Italic text (ctrl+i) is supported since mIRC 7.0
bump version to 8.0.0beta1
- NEWS: fix spelling
- update NEWS file
- rename doxygen.conf to Doxyfile
- update NEWS file
- "STATS Y|y" now reports CIDR limits as well
- Truncate 'cidr_bitlen_ipv4' to 32 if someone feeds us with a value higher than this. The same applies to 'cidr_bitlen_ipv6' that has a value higher than 128.
- m_challenge: add module_init, module_exit dummy functions to shut up the module loader bitching about missing 'modules_entry' symbol if OpenSSL is not found/enabled.
- Minor cleanups to check_server(). Checking for long servernames was redundant here, since valid_servername() already does that job. Also make use of match_conf_password()
- Don't try to access aconf->user when aconf is a SERVER_TYPE. aconf->user is a NULL pointer.
- update example configuration files
- src/conf.c: fixed compile error with openssl disabled
- mo_kill(): remove useless IsDigit() test. hash_find_client() doesn't do UID lookups, so we'll end up with ERR_NOSUCHNICK.
- Update NEWS file
- remove contrib/m_classlist.c. use "STATS y" or "TRACE" instead.
- contrib/m_operspy.c: replace several ircsprintf with snprintf. Replace a (strchr(x, '*') || strchr(x, '?')) combo with has_wildcards()
- m_who(): replace two irccmp with strcmp
- m_userhost(): don't leak irc operator status in case the status is hidden
- minor cleanups to the module code
- modules/m_whois.c: replace an irccmp with strcmp
- /info no longer sends information about the platform ircd is running on - remove get_ircd_platform() function - configure: --enable-efnet switch is no longer required
o) Removed channel::burst_topicwho configuration option. Topicsetters are now sent by default
- move has_wildcards() to irc_string.c and make use of it in several places
- match(), match_esc(): remove XXX-comment. Bad idea to have match() rely on collapse()
- decrease HOSTIPLEN to 45 - fix some buffers that should use HOSTIPLEN+1
- src/hash.c: there's no need keep on searching clientTable[] for a server-id if we didn't find it in the idTable[] before.
- src/hash.c: minor style corrections
- contrib/ip_cloaking.c:set_vhost: fixed bug that prevents userhost entries from getting removed from the userhostTable[] on client-exit
- conf.c:attach_conf(): remove useless conftype test. conf is now always one of CLIENT_TYPE, SERVER_TYPE, or OPER_TYPE.
- conf.h: remove CONF_LISTEN_PORT and CONF_EXEMPTKLINE #defines - hostmask.h: remove HostMaskEntry structure - hostmask.c: remove find_gline_conf() and find_kline_conf() wrapper functions
- conf_parser.y: removed outdated and missleading comment
- s_bsd.c:close_connection(): fixed connection scheduling
- cleanup match_conf_password(). remove outdated comments
- rename some struct AccessItem members
- conf.c:get_sendq(): fixed an assert()
- conf.c: cleanup get_sendq(), get_client_class() and get_client_ping(). Now that we don't have any other attached conf than CONF_CLIENT|CONF_SERVER|CONF_OPER, we may simply use the last attached conf pointed by x->confs.head
- client.h: get rid of Server::sconf
- ms_server(), ms_sid(): it's client_p which has an attached CONF_SERVER, not source_p. Stupid me.
- m_server.c: fixed core introduced by previous commit to m_server.c
- Cleanup/rewrite Hub/Leaf-mask configuration. Hub and Leaf configuration items are no longer separately attached to Client structures.
- Update NEWS
- conf.c: remove CLIENT_CONF leftovers in clear_out_old_conf() clear_out_address_conf() already does the deal.
- conf.h: remove unused CONF_NOLIMIT definition
- remove operlog and logpath from config_file_entry structure
- Get rid of OPERNICKLEN. Oper login IDs are no longer limited to NICKLEN*2
- Remove all Class related #defines like MaxTotal, MaxSendq, etc. All they do is lead to confusion.
- minor cleanups to s_gline, hostmask.c and m_stats.c. remove useless NULL assignment of dlink_node pointers. the DLINK_FOREACH macros already take care of this.
- Update autotools related files
- acinclude.m4: replace all occurrences of AC_HELP_STRING with AS_HELP_STRING
- autoconf 2.69 & automake 1.12
- hostmask.c: move report_Klines() and report_auth() to m_stats.c
- "UNKLINE bla@bla.net" may accidentaly remove existing klines such as *@bla.* - Fixed
- change back CLEANUP_TKLINES_TIME to 60 seconds
- cleanup temporary k/d/g line code
- Remove temporary RKLINES/RXLINES leftovers
- Cleanup hostmask.c. Make it use dlink list manipulation routines
- Cleanup conf_add_server(). Remove traces of obsolete username verification for incoming server connections.
- change KEYLEN semantics. KEYLEN no longer includes space for the trailing \0
- Optimize get_oper_name(). No need to walk client_p->localClient->confs. If there's any attached CONF_OPERATOR, it'll always be the last attached one
- conf.c: remove unused prototypes
- whowas.c: sort out header includes
- remove clear_tree_parse()
- free_client(): add some assert()
- watch_init(): remove useless memset since watchTable resides in .bss - replace C++ comments with C comments
- cleanup and rewrite whowas.c to use the dlink list manipulation routines - increase NICKNAMEHISTORYLENGTH to 16384
- minor cleanups to the getopt code
- automake 1.11.5
- move conf_yy_input and conf_yy_fatal_error to conf_lexer.l - conf_lexer.l: replace a strcpy with strlcpy
- conf_parser.y: dh prime size should be at least 1024 bits
- update example configuration files
- fix odd behaviour of ircncmp with 'n' being 0, plus performance improvements.
- cleanup pcre library test
- remove link.h from header checks
- irc_reslib.c: add localhost as default nameserver in case we cannot find a suitable entrie in resolv.conf - irc_res.c:res_ourserver(): no need to test against INADDR_ANY. This is a relict of old BIND versions which added INADDR_ANDY as default nameserver if no other servers could be found.
- increase IRCD_MAXNS to 3
- hunt_server(): removed extranous match(). me.name cannot contain wilds anylonger. This is basically a fakename leftover.
- hostmask.c, rng_mt.c: avoid use of long int types
- Applied patch to shut up gcc with -Wformat-security enabled. Patch submitted by Moritz Muehlenhoff/Debian Security.
- get_client_name(): only compare client->name with client->host if it's any type of server. Saves thousands of irccmp calls.
- get_client_name(): made IP-masking more logical for ipv6 clients. At least allow determining whether or not a connection is ipv6.
- automake 1.11.4
- Update serverhide.txt
- Update documents, remove outdated ones
- Sort out unused ConfItem flags
- Update copyright-years
- m_whois.c: fixed displaying of RPL_TARGUMODEG
- init_hash(): remove unused variable
- client.h: cleanup Client flags - send.h: remove unused prototypes
- Squash two other compile warnings. ircd now compiles clean with -Wall -Wextra -Wno-unused -Wcast-qual -Wcast-align -Wbad-function-cast -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wredundant-decls -Wshadow -Wwrite-strings -Wundef
- Remove unused configure tests - Fixed compile warning in conf_parser.c
- Change SHOW_IP, MASK_IP and HIDE_IP into an enum type - Removed unused CONF_SERVER_INFO_TLS_VERSION_* definition
- minor cleanups to the new logging system
- Remove contrib/m_spoof.c - Sort out unused help files
- Get rid of fileio.c. Replace some ircsprintf() with snprintf() while on it
- Remove log::timestamp configuration directive. Timestamps are now enabled by default. - Timestamps are iso8601 now
- parse.c: remove unused prototypes
- parse.c: fixed archaic bug which would easily allow para[] being accessed out of bounds. Just to remember: para[] must be able hold: <prefix>+<15params>+<NULL>
- remove unused variables
- s_serv.h: sort out unused CAPABS, remove unused capabtab[]
- minor cleanups and fixes to the new logging system - decrease LOG_BUFSIZE to 1024
- Killed include/m_info.h
- remove tls_version from server_info struct
- Removed 'ssl_server_protocol' configuration directive and added 'ssl_client_method' and 'ssl_server_method' instead. Both of these options can now be changed at runtime. - src/Makefile.am: swapped order of conf_parser.y and conf_lexer.l - Update example configuration files
- Update NEWS file
- Update README files - Remove README.PLATFORMS
- rsa.h: remove verify_private_key prototype
- client.h: remove servlink leftovers
- Update BUGS file
- move example configuration files to doc/ folder
- renaming files: ircd_parser.y -> conf_parser.y ircd_lexer.l -> conf_lexer.l s_conf.c -> conf.c s_conf.h -> conf.h s_log.c -> log.c s_log.h -> log.h
- ssl_server_handshake(): better error reporting
- rsa.c:report_crypto_errors: remove ERR_load_crypto_strings call. libcrypto error strings are already registered by SSL_load_error_strings() - rsa.c: remove verify_private_key()
- improve ssl/tls support - cipher suites can now be specified via ircd.conf
- show info about compression/expansion methods on link establishment
- servlink is gone; cleanup and sanitize openssl detection tests
- Implement basic tls connections for server-server links
- remove servlink in preparation for tls links/compression
- add 'dline' and 'undline' operator flags - implement remote dlines mainly for services purposes, but can be used by operators as well - update example configuration files; remove invalid shared::flags entries
- Somehow I missed Adam's bug report about the 'who' help file. fixed.
- fixed style in some places
- m_error.c: fixed minor compile warning due to missing static keyword
-fixed operator status leakage when using "WHO 0 o"
- Add user mode +H which simply hides operator status to other users. This solution replaces current method of hidding operator status where the admin mode is not sent to other servers unless hidden_administrator is disabled. - m_who() now takes care whether an operator is hidden or not
- update modes.txt
- remove AX_ENABLE_SYSLOG. This is now obsolete with the new logging subsystem
- automake 1.11.3
- update example config files. usermode 'r' has a different function now
- m_oper.c: remove find_password_conf() wrapper
- ircd.c: fix compile warning
- added CIDR support for operator{} blocks - operator "name"{} is no longer supported
- Update contrib/README
- fix previous commit regarding remote klines
- services that are specified in the services{} block may now set remote k/x-lines
- minor documentation updates and fixes
- Update mkpasswd documentation
test commit
- get contributed modules to work with new module api
- remove useless NULL-pointer assignment
- remove general::burst_away configuration directive. AWAY burst will have to be controlled via connect::flags explicitly.
- added m_webirc.c to contrib/
- contrib/Makefile.am: Update AM_CPPFLAGS. We no longer use our own version of libpcre.
- automake 1.11.2
- irc_res_mkquery(): fixed compile warning with gcc 4.6
- Forward-port -r1251
- A file size of 'unlimited' can now be specified for log files
- Fix typo in example configuration files
- add log file rotation
- Rewrite and cleanup half-broken logging subsystem. Logfile rotating is not working yet
- parse.c: remove unused variable, plus style cleanups
- Update configure - Update NEWS
- Update NEWS file
- move content of msg.h, ircd_handler.h and handlers.h into parse.h and remove headers accordingly - killed common.h - remove m_killhost.c and m_flags.c from contrib/ - sort out unused header includes here and there
- listener.c: remove outdated comment. remove useless header include
- move firsttime, since, and lasttime Client struct members to LocalUser struct - m_watch.c: show_watch() now properly reports signon times. This also fixes an invalid signon time of zero for remote clients.
- remove unused dynlink_init() prototype
- minor cleanup to m_sid and m_server: replace DLINK_FOREACH loops with sendto_server()
- rename mod_list to modules_list and make it static - remove now unused _modinit and _moddeinit prototypes
- move remaining functions in dynlink.c into modules.c
- Getting rid of rlimits.h. Relying on RLIMIT_NOFILE is more than enough nowadays
- m_unregistered(): fix 11 years old bug where ircd sends an invalid formatted ERR_NOTREGISTERED string. - ERR_NOTREGISTERED is not rate-limited any longer
- replace all instances of parv[0] with source_p->name
- replace bunch of ircsprintf with snprintf
- oper_up(): if both ConfigFileEntry.oper_umodes and oconf->modes aren't specified, don't give a client any other default oper-modes
- remove now obsolete members of the module struct
- cleanup module loader. Make module api more flexible
- Minor cleanups to example configuration files
- add 'restart'/'module' operator flags which allows better fine tuning whether or not an operator may have access to RESTART/MOD* commands - ircd_parser.y: (oper{}): ensure yy_aconf->port is set to zero, before setting any privilege bits. Fixes odd behaviour with multiple 'flags' entries. Also removed ability to negate operator flags with a tilde '~'. Pretty useless since all operator privilege flags are set to zero by default.
- Update INSTALL file
- remove RKLINE, aswell as RXLINE. Regular expression based x/k-lines should be added via ircd.conf only
- m_whois.c: remove callbacks that previously has been used for WHOIS notices
- ms_globops(): remove redundant argument count validation
- Update doxygen.conf
- minor correction to m_cap(): sptr->name can be empty when sending ERR_INVALIDCAPCMD back to client. Must use '*' instead of sptr->name
- m_svsnick(), m_svsmode(): remove redundant argument count validation
- doxify client.h
- Start cleaning up macros in client.h. Replace several ClientHasSomeCoolFlag() with simple HasFlag/HasUMode macros.
- add helpserv/statserv service aliases
- Updat resv{} block for services
- add 'globops' to operflags
- Implement GLOBOPS - remove debugging code from parse.c
- renamed m_locops() to mo_locops()
- update help/opers/cmode
- make channel::topic and channel::topic_info fixed-size arrays
- implement NICK/UID servicestamps - add "SVS" to server capabilities
- change_local_nick(): remove unnecessary client_p parameter
- move change_local_nick() from client.c to m_nick.c
- Forward-ported r1188: Update help/opers/cmode
- Forward-port r1183: exit_client(): We were accidentally trying to free memory pointed by source_p->lclient_node. Fixed.
- nick_from_server, uid_from_server: don't blindly increment Count.invisi without checking if we already did. Fixes invalid usercount in case servers sends redundant modes within an NICK/UID message.
- set minimum required arguments for services alias message handler to 0, otherwise we don't send a ERR_NOTEXTTOSEND
- remove deprecated add_loacl_domain prototype
- Forward-port r1177: Fix ERR_ACCEPTEXIST numeric string. Two %s conversion specifier have been missed here
- Cleanup and restore older parts of the irc-command parser. Gives back ability to specify maximum amount of parameters that are processed within a command.
- remove idle-time klines - rename LocalUser.last to LocalUser.last_privmsg - m_message.c: reset source_p->last_privmsg even if a client is messaging itself
- several fixes to services compatibility mode
- msg_client(): remove redundant pointer comparison
- add usermode +R; only registered clients may message other clients with that mode set - add channelmode +R; only registered clients may join a channel with that mode set
- update s_conf.c:map_to_list
- allow services to bypass +G when messaging clients
- rename find_server to hash_find_server to satisfy naming convention - pull m_services.c and m_jupe.c from contrib/ - style fixes in some places
- Add service aliases
- Improve services support - Add channelmode +r
- remove mo_svsnick as well as clean_nick_name from m_services.c
- rename clean_nick_name() to valid_nickname() and move it so s_user.c - add SVSNICK module - update Makefile accordingly
- fix previous commit to m_whois.c
- Properly track invisible count when setting +/-i via SVSMODE
- don't report RPL_WHOISREGNICK for unregistered nicknames...
- m_svsmode(): Replace MyClient test with MyConnect. find_person already takes care of this.
- set file properties for m_svsmode.c
- Implemented SVSMODE
- UMODE_REJ goes to usermode 'j' - add UMODE_REGISTERED ('r') (registered nickname)
- preliminary services support
- create ircd-hybrid-8 "branch"
- recreate "trunk"
- Update CHANMODES ISUPORT...
release time - bump patchlevel to 7.3.0
- add new channel modes O and S
- Style cleanups - Doxify hook.c
- fixed several compile warnings
- replace several ircsprintf with snprintf
- Improve multi-prefix client capability support
- fixed compile warning in ircd.c
Added back STATS/TRACE/MOTD/ADMIN request notices. Removed spy_*_notice modules accordingly.
- Update NEWS file - Minor optimization to update_client_exit_stats close_connection - Move MaxConnectionCount/MaxClientCount to Counter struct
- fix for previous commit to m_set.c
- m_set.c: replace all occurrences of %s!%s@%s with get_oper_name()
- m_set.c:quote_max(): add missing argument to sendto_one() call
- Update NEWS
- Update INSTALL, NEWS, and README
- User IDs are now shown in client connection notices. Requested by some ircu user.
- m_kill.c: replace ircsprintf with snprintf
- update my email address
- update copyright years
- Bison 2.5
- we are finally 7.3-STABLE
- update NEWS
- propset
- added bulgarian language file provided by Borislav Borisov
- fixed "stats z" displaying bug
- add dlink_move_node() and make use of it in several places - reuse LocalUser::lclient_node for local_client_list and serv_list (moving node between unknown_list and serv_list/local_client_list)
- fixed stupid assert() which prevented clients from being added to local_client_list
- replace several ircsprintf with snprintf
- Got rid of irc_addrinfo.c and irc_getnameinfo.c - Fixed broken ipv6 detection due to incorrect use of AC_CHECK_TYPES
- simplify remove_ipv6_mapping() and get rid of inetntoa
- removed all instances of STATIC_MODULES since we don't have static modules anymore - removed m_mkpasswd module from contrib
- Bump up max temporary kline time to 360 days
- removed HUB capability, which was a LL leftover
- cleanup and sanitize m_server.c. remove hostmasking. Improve TS6 suppport
- ircd_parser.y: ensure only valid hostnames can be specified in serverinfo::name
- set_user_mode(): don't unset modes specified in general::oper_only_umodes for remote clients
- Rename bogus_host() found in several modules to check_servname() and move it to s_serv.c - serverinfo::sid is now mandatory and must be specified. ircd won't start otherwise
- Move RPL_ETRACE to messages.tab - CHANGE RPL_WHOISSSL to use the 671 numeric
- move Client.client_host and Client.client_server to LocalUser struct
- Add back socketpair configure test which got lost for some reason. Cryptlinks should be working again.
- m_change.c: Fixed bug where exiting clients got not removed from userhost hash in case CHGHOST has been used on them
- thou shall not forget the half while being on crack
- Fixed broken configure test for sigio - Update libtool to latest 2.4 release
- Fix build under solaris, as reported by Peter Evans
- rebuild parser
bump patchlevel to rc1
- autoconf 2.67
- Updated ltdl to latest 2.2.10 release
- Switch libltdl to recursive build mode
- minor libtool fixups
- rebuild scanner using latest bison 2.4.2 which finally fixed those -Wundef related warnings
- ts_warn(), ilog(): replace two vsprintfS with vsnprintf. We're immortal now!!!!!!!!!111
- libtoolize
- Move do_local_user to m_user.c
- Sort out unneeded arguments of some user registration functions
- move Client.serial to LocalUser struct
- Dropped support for old style 'operflag = yes|no;' configuration format
- Made general::kill_chase_time_limit accept time units. too bad this entire crap is still needed even with ts6.
- remove old dot_in_ip6_addr configuration option. this is now obsolete.
- Update example configuration files
- Stop substitution of example configuration files on 'configure'
- removed mr_motd. unregistered clients may no longer request a MOTD
- respond.c:binary_to_hex: fixed harmless compile warning
- m_eob.c: remove redundant header includes
change RELNOTES to Release Notes
- move DLINE into its own m_dline module
- Rename existing lib directory containing modules on 'make install' as suggested by Rodder
- m_help.c: logging unfound help-topics that are triggered by simple HELP requests is just stupid, as this can be easily abused.
- Add back --silent switch to LIBTOOL flags for releases
- Squash compile warnings in contrib/
- Update copyright years
Bump version to 7.3.0rc
- contrib/spy_links_notice.c: do not show additional arguments supplied to the LINKS command in spy notices. new behaviour is to simply show the command sent by the client, which exactly behaves like all other contributed spy modules. - remove clean_string()
- automake 1.11.1
- ms_operwall(): add proper TS6 support
- bump version to 7.3-rc1
- Updated ltdl to latest 2.2.6b release
- Fixed build with bsd make as reported by Yoshito Takeuchi
- fixed compile errors as reported by Peter Evans
- branch off trunk to create 7.3 branch
- move ircd-hybrid-7.2 to trunk
- Update AUTHORS and add fgeek to contributors. There's still some stuff you have to do, henri!
- Added gungline help file
- Fixed compile with --disable-openssl
- remove pointless check_class() call on ircd initialization
- fix build with poll, select and rt-signal
- update NEWS
- update NEWS
- fixed build with --enable-assert - fixed STATS z reporting correct memory consumption of channel bans/excepts/invites and watchlist entries
- rsa.c: removed outdated and missleading comments
- fixed broken cryptlinks as reported by henri - removed deprecated inet_misc.c - removed __attribute__ format, which sometimes really is usefull, even if unportable unless gcc, but for now they only give false warnings
- show_iline_prefix(): fixed an off-by-one when copying aconf->user. strlcpy really isn't hard to understand, is it?
- Add -Wextra -Wcast-align -Wbad-function-cast to CFLAGS if --enable-warnings is specified - Fixed several compile warnings - 64-bit cleanliness fixes, e.g., reorganize data structures to reduce storage/unnecessary padding
- remove tools.(c|h)
- move list manipulation routines from tools.c to list.c - mem_frob() goes to memory.c - sort out redundant/unneeded header includes
- more configure cleanups and modernizations
- add configure test for pcre lib and remove pcre sources from the tree
- doxyfy
- continue doxyfying sources
- simplify GUNGLINE
- remove conf_add_d_conf wrapper
- remove unused small_file_date() function
- set_initial_nick(): remove *outdated* comment and make this function only take 2 parameters. source_p == client_p for local clients.
- moved set_initial_nick() to m_nick.c
- remove half done and broken win32 support
- timeout_auth_queries_event(): don't try to close auth->fd twice
- removed references to struct DNSReply
- change resolver/auth to use balloc memory pool - ircd.c: init_resolver() has to be called *before* read_conf_files(), otherwise recvfrom() aborts with ENOTSOCK in case there are configured connect{} blocks with a host that needs to be resolved on the very first configuration read.
- delete_resolver_queries(): remove extranous non-NULL test. ptr->data can never be NULL. let it crash, if it ever happens to be
- properly clean out irc_nsaddr_list before re-reading resolv.conf
- remove add_local_domain
- res_readreply(): check for fake replies before doing anything else
- update irc_reslib.c to latest libbind 6.0
- fix possible auth/dns related memleaks
- update NEWS
- move README.FIRST to README
- add -Wundef to CFLAGS
- removed remnants of --disable-gline-voting
- mo_sgungline: calling sento_server with right amount of params sounds like a good idea
- irc_res.c: fixed wide-spread off-by-one when copying hostnames
- res_readreply, do_query_number: removed ip6.int support. ip6.int delegations were deleted in 2006
- res_readreply(): fix broken logic with ipv6 enabled where we ONLY sent a second A QUERY in case a -broken- nameserver returns NXDOMAIN for AAAA when A record exists. fixed and removed workaround for broken nameservers.
- fixed bug where unregistered clients were not able to complete registration process with /quote PONG <ping_cookie> in case the client was assigned a zero value ping-cookie
- added a mersenne twister basedn prng
- speed up processing of incoming NICK/UID bursts - fixed archaic bug where bursting servers with missconfigured NICKLEN were able to desync the network's nickname database
- remove useless MyConnect tests in m_time() and m_lusers() - remove useless TS6 handling in m_who() since this is sent to local clients only
- m_map(): remove useless IsOper() test on source_p. for operators mo_map is being used
- avoid using native basename() since some implementations may or may not modify passed data
- removed last traces of crypt.c - add disable-static to libtools options
- remove crypt.c, snprintf.c
- updated NEWS file
- updated BUGS, INSTALL, NEWS, ...
- removed autogen.sh. you should you autoreconf instead
- m_watch.c: remove m_watch from server message handler. m_watch should *never* be called for servers or remote clients.
- cleanup m_connect() while reviewing: remove useless MyConnect() test in mo_connect(). - Fix possible core in mo_connect() in case if there is a ConfItem that doesn't have an AccessItem mapped.
- cleanup m_close() while reviewing: get rid of some stupid integer incrementation on 'closed'. use dlink_list_length instead.
- cleanup m_capab() while reviewing: remove useless non-NULL test on p->localClient
- fixed harmless -Wuninitialized warning in m_list()
- added ssl_server_protocol configuration option to servinfo{}. valid flags are 'sslv3' and 'tlsv1'
- make valgrind shut up when calling epoll_ctl
- add misssing _modinit/_moddeinit entry point functions to m_error.c
- add pcre_newline.c to lib/pcre/
- update pcre lib to 7.9
- minor fixes to example configuration files
- show pending gunglines in STATS g
- implement proper GUNGLINE support
- removed LL leftover in set_default_conf(). now ServerInfo.hub properly initializes on /rehash
- configure.ac: replaced obsolete AC_HELP_STRING with AS_HELP_STRING
- propset svn:keywords - remove simple.conf. example.conf.quick is good enough
- propset keywords
- added support for sha256/sha512 to mkpasswd
- update example configuration files
- squash several compile warnings
- remove m_error.c from src/
- lp64\llp64\ilp32 portability fixes
- actually add the file
- move m_error.c to modules/
- fixed some configure mess and imported latest libtool sources
- remove libtool scripts. they are generated by configure
- added protoype for modules_valid_suffix()
- fixed configure not checking for existence of several functions due to misuse of AC_CHECK_FUNCS_ONCE
- Update autools versions. - Fix acinclude.m4 to work on FreeBSD at least.
- gunline code added to gline module awaiting Wohalis' version.
-Remove obsolete references to LL
- Looks like I needed a : before the reason in the ENCAP
- Preliminary voting ungline code
- Fix typo
- This needs HAVE_BASENAME
- Remove the old m_ungline code to start.
- bug fix by caf <kevin@sylandro.com>
- add back --enable-small-net
- Added back --enable-assert
- fixed compile with compressed links
- Add tools/Makefile.am
- Made tools/ compile
- removed whats-new.txt
- Update messages/Makefile.am to cover ircd-romanian.lang
- Updated INSTALL
- Moved LICENSE to COPYING
- added default rule, so people can put their own module into contrib/ and compile it with 'make some_module.la'
- Added template for HAVE_LIBCRYPTO to make atoheader shut up
- Autotoolized contrib/ and made it compile cleanly
- Added some missing files - Moved HOSTLEN and USERLEN definition back to ircd_defs.h Those two shouldn't be configurable
- Implemented libtool-ltdl. Only shared modules are supported currently - Several build fixes and cleanups. ircd now builds and runs without any problems - Added back all files to SVN that are needed to built the daemon I really don't want to force other people that want to test the snapshots or svn versions to install yyacc, lex, automake, autoconf and libtool... No problem having required files in svn - Removed some automake maintainer stuff which is kinda useless for us
Update autogen.sh to be smart(er). Shamelessly stolen and adapted.
Add workaround for libltdl being broken in debian sid
fix compile warning
Completely redo the build system. Now uses libtool and automake. Suggest you clean out your tree and then do ./autogen.sh.
- svn move doxygen.conf doc/doxygen.conf
- File name changes in preparation for automake
- Move etc/example.efnet.conf to etc/example.efnet.conf.in - Update configure.ac
- Update example.efnet.conf according to dianes configure changes
- Added new 'server' option to listener::flags
- Added lang file for Romanian submitted by Bogdan Mintoi <bogdomania@yahoo.com>
- add back in the datarootdir cruft
- Major cleanup of build system (Stu should review this) Basically move shared stuff like help messages modules to datadir Try to keep to the original layout under prefix if --datadir --sysconfdir --localstatedir are not given - Make the example files have reasonable defaults, this bites me all the time anyway.
- Killed s_stats.c
- Removed lazylink leftovers
- No need to call can_join() on newly created channels
- OMOTD provides no support for displaying remote oper motds
- Removed help files that are no longer needed
- Avoid useless irc_getnameinfo calls in several places
- Fix compile warning in ip_cloaking.c
- Got rid of Serv.dep_users and Serv.dep_servers
- on_allow_list and allow_list are no longer needed. Removed
- Backported new ACCEPT code which adds support for n!u@h masks
- Fixed comment in m_knock.c and make use of the PrivateChannel macro to confuse people less
- Removed LazyLinks in 7.2 to stop people from asking why we keep broken code for half a decade. LL will be implemented in a smarter fashion in due time
- show some watch statistics in STATS z
- Update RELNOTES
- fixed bug which would cause invalid invisible counts on oper-up in case operator::umodes and/or general::oper_only_umodes contains 'invisible'
- change_local_nick(): No need to call clear_ban_cache() twice on source_p
- hash_find_id() should be using strcmp instead or irccmp
svn propset svn:keywords
Updated RELNOTES
flex & bison
Backported WATCH
- Fix some compile warnings with gcc 4.2.2 - Update configure.ac
- Updated RELNOTES
- fixed longstanding topic desync bug during netbursts, which has been reported by several people. We now basically do what ircu does, i.e. unset topics set by netriders
- Add sanity check to m_cap
- When a connect block uses a hostname instead of an IP, ircd will connect to the hostname's IPv6 if available, independent of the aftype setting. This causes the ircd to fail to connect to a IPv4 host that also has an IPv6 IP. Submitted By: evilmoon (hgchew) (via Sourceforge bts)
- Adrian wants to be re-added, add him back here for now
- I fixed minor mistakes. From: uNd3rL1n3d <und3rl1n3d@gmail.com>
- Fixed occasional core when placing RESVs on channel names as repoared by Christopher A. Bongaarts.
bump version to 7.2.3
- make 709 numeric work for dronemon
- fix core in temp channel resv - remove unused variable in m_join - update RELNOTES
- fix typo in ircd_parser.y regenerate y.tab.c and lex.yy.c - fix order shown in CLIEXIT - remove mode parsing in ms_join - reflect addiction cconn_full flag
- Add +C - add etrace -full Reviewed by: cryogen, bear
- This remnant of LazyLinks DIE DIE DIE
+ fixed off-by-one which turned out to cause large memory overwrites + this is an old one, very hard to catch: 1) FreeBSD system, 2) a lot of clients (preferably 10K+), 3) exiting/reading from/writing to 128+ clients at a time, 4) ircd version where the bug shows up clearly (on 7.3 WHOWASHASH gets corrupted, and somewhat later we have a core: whowas_add_history -> dlinkDelete) This applies to ALL versions of hybrid since 7.0, but is known to disclose most noticeably under 7.3
- Added ircd-italian.lang language file provided by Afaa
- m_challenge(): fixed another challenge bug which would reject a client's challenge response if the user= line contains an IP.
- m_testmask.c: fixed match arguments. It's actually the first argument which takes a mask containing wildcards. Reported by pharlap
- Fixed bug in find_conf_exact() which sometimes made CHALLENGE useless
- Misc. fixes to TESTMASK/TESTLINE as reported by Phar Lap - Prevent TESTLINE from reporting k-lines twice - Show the actual k-line reason when reporting k-lines - Test the host part of a u@h mask against the client's sockhost field in TESTMASK - Added support for nick masks to TESTMASK - CIDR is to come in 7.3
- Updated doc/index.txt as suggested by fgeek
- I missed this redirect the first time, don't use a real server
- no more .fi
- Added missing %s conversion specifier to RPL_MODLIST. Now /modlist shows up whether or not a module is resident
- Fix for the parseargs() fix
- Fixed compile error
- Fixed ban cache as reported by ThaPrince
- Backported r754 (parseargs() didn't accept more than one switch)
+ fixed an old bug that affected our numeric delivery: Spotted by: stu Imagine we have a scenario like this: [origin A on server 0] --> [OUR IRCD] --> [TS6 server] --> [TS5 server and target Z] We'd try to address Z by its null ID only because the next server on the way is TS6. That led to delivery failure in cases like ts6(origin)->ts6->ts6->ts5(target).
bump version to 7.2.2
+ fixed a bug where auths/klines/glines with digit wildcards (#) were not handled correctly
- Updated messages/Makefile.in for ircd-brazilian_pt.lang
+ added DEAF isupport
- Rebuilt configure using autoconf 2.60
- Updated RELNOTES
- fixed core on MODRESTART as reported by xZ/CoolCold
- Also show the full path of .included configuration files when reporting syntax errors. This is just cosmetical.
- Updated RELNOTES
- Applied nenolod's parse_resvconf() fix
- Updated RELNOTES
- ACCEPT fixes as reported by ThaPrince
- Add Brazilian to 7.2 as well Marcelo Lipienski <und3rl1n3d@gmail.com>
- Fixed core in make_virthost() with host names that doesn't have a dot in it. Reported by CoolCold
- Fixed small memory leak in delete_auth()
- Backported r689 (the name of the source was appended to the RPL_TOPICTIME numeric instead of the target's name in mo_forcejoin)
- Updated RELNOTES
- Updated copyright years in version.c and INSTALL - Bumped version to 7.2.2 in configure.ac and doxygen.conf
- close_connection(): Fixed some harmless bug that could result in incorrect sent statistics in "STATS t" - Updated RELNOTES
+ patch against truncated NAMES output Submitted by: Murat Deligonul <deligonul@gmail.com>
- check_classes(): Only call destroy_cidr_class() on a class that is ready for deletion, otherwise the current cidr count would become unadjusted in case a disabled class gets re-enabled later on.
- Fixed possible core introduced by previous commit - Put some asserts into detach_conf()
- Fixed class limit bug as spotted by stu. ("REHASH" would always reset current user count) - Made "STATS y|Y" show inactive (deleted) classes that still have attached clients
- balloc.(c|h): backported r544 (Killed Block::used_list) - Update RELNOTES
- Rebuilt y.tab.(c|h) using bison 2.3 - Bumped pcrelib version to 6.4. There were no changes since 6.3 that would have affected our hacked version of the pcre library, so this is mainly to satisfy paranoid I-always-need-the-latest-version people
Fix compile error. Be more careful with the so called stable branch :)
- Fixed compile error in s_auth.c
+ backported numeric changes
- Fixed bug that would exit unknown clients in check_unknowns_list() that are still processing auth/dns queries. Basically check_unknowns_list() should only exit clients that have finished auth/dns and didn't send a NICK/USER combination since they have been released from auth. Reported by ThaPrince.
- Fixed old bug that would forbid SPAMNUM to be disabled via "SET SPAMNUM 0"
- Updated example configuration files
+ added invisible character ^O (cancel all formatting)
- actually remove the chars that should not be marked as visible chan chars
- At least I noticed it myself, I got it completely backwards when folding in Michael's suggested optimisation.
- optimise Michael's fake channel catcher. Make it work first, then optimise.
- Added channel::disable_fake_channels which disallows creation of channels that have ascii 2, 3, 31 and 160 in their names. - Minor improvements and cleanups to channel name validation routines backported from 7.3
- Fixed compile warning in change_simple_umode as reported by Volk
- Fixed an off-by one bug in the ip limiting code as reported by Volk
- Unbroke KILLHOST
- Backported r376 (STATS y now shows the total number of clients in a class) - Rebuilt y.tab.c using bison 2.2
- attach_conf(): We even need to increment CurrUserCount if a class got attached to a server or operator. Spotted by stu. - Removed IRCD_SOCKET_ERROR define
- report_error() expects two %s conversion specifiers as reported by ThaPrince. This function really should get rewritten at given time. It just confuses people.
- Backported m_clearchan:kick_list fixes
- Fixed /dline nick for ipv6 servers
- ERR_NOSUCHNICK should actually be sent to local clients trying to PRIVMSG a non existant nick starting with a digit.
- Removed dalloca.h
- Added missing sigaction for SIGALRM
- Updated RELNOTES
- Cosmetical fix to "STATS k|K". temporary regexp based k-lines should be prefixed with 'kR' and permanent ones with 'KR'.
- Backported core fix for regexp k-lines
- Ignore signal SIGXFSZ which killed the ircd process on daxnet because of a file size limit set too low. That way, write() and friends will abort and errno will be set to EFBIG. We may think about a NOTICE which could be sent to operators on a failed write attempt to either the log files or k/x-line files.
- Backported RKLINE fix so the user and host portion of a banmask don't get cut off after 10 and 63 chars, respectively. A split_nuh() rewrite was required for this. - Removed now unused xstrldup() function
- Merged check_xline() and check_regexp_xline into a single function
- Clear the TS6 CAPAB bit possibly set on an unregistered client connection in mr_motd(), mr_admin() and register_local_user(). This is a kludge for now.
- m_restart(): don't send restart notices twice to locally connected clients
- Proper typecasting in newblock()
- Added new general::stats_e_disabled configuration option. Known from RB, all it does is to disable "STATS e", which is a good idea if you have any exempted server ips. - Updated RELNOTES
- Cleaned up example.conf - Copied example.conf over to example.efnet.conf and restored efnet specific values
- The 2nd and 3rd character of a SID may be a digit as well. Spotted by ThaPrince - Fixed compile warnings in log_user_exit()
- log_user_exit(): removed extranous newline character in log message. fixed invalid casts
- Update RELNOTES
- Fixed a bunch of compile warnings
- Updated INSTALL. --with-maxcon doesn't exist anymore
- ts6 fixes as explained on irc
- Backported changes made in HEAD to get rid of Channel::locmembers. This is mainly to save about 5megs of ram on networks like efnet where we have about 600k allocated Membership structures.
- Updated RELNOTES - Fixed mkpasswd help file
- Fixed core in m_mkpasswd.c as reported by Grigor Josifov
- Added missing bracket
- can_send: splitted up some bigass if() statement
- Allow servers to CHGHOST. This is mainly to fix an issue with ip_cloaking module
- Backported accept_connection() cleanup from HEAD
- Fixed negative "STATS ?" output as reported by ThaPrince - Updated RELNOTES
- Updated RELNOTED. Added missing entries etc.. BUGS, TODO, INSTALL: likewise - Fixed formatting in example.conf
- Don't send out multiple "requesting G-Line" notices in case the same oper is requesting the same gline over and over again.
- Forgot the half of the gline voting fix
- Fixed g-line voting as discussed on irc
- Backported add_connection() speedups
- Updated RELNOTES and example.efnet.conf
- added missing documentation for connect::vhost
- Fixed core on FORCEJOIN as reported by CoolCold. ** Fixed doesn't need to get forward-ported to HEAD - Updated RELNOTES
bump version to 7.2.1 (release)
- Backported OJOIN fix from HEAD. Thanks for remembering me, CoolCold
- Can't use irccmp for qsort(), so let's use stricmp() when compiling on wins0x
+ fixed linking error on bcc/win32 about _strcasecmp
- Fixed compile error in m_operspy.c. Reported by Volk
- Added missing !u@h prefix when sending MODE message back to a client
- Updated RELNOTES
- Backported msg_tree_parse() speedup
- When checking for first " in a line, make sure it doesn't run off the end of the line before it finds one.
- Removed unused struct DNSQuery pointer from Listener structure
- Fixed static build for m_cap() (fix doesn't need to get forward-ported to HEAD) - Added BS alias for BOTSERV
- register_remote_user(): Fixed bug where we would increase Count.total and source_p->from->serv->dep_users for unregistered remote clients and don't decrease them if we exit the client due to non existand server or fake direction.
- Removed some outdated XXX comments
- channel_member_names(): properly count the number of prefixes that will be written to lbuf
- Backported CAP changes from HEAD since it doesn't affect any of the ircd's core components and should be supported as soon as possible.
- exit_client(): Don't bounce a QUIT back to origin's server Reported by adx
- Fixed bug where "OPERSPY NAMES #channel" would add a client twice onto a channel's member list if it is already on that channel.
- Break the loop if a client has reached its channel limit
- mo_force(): Don't allow servers to be added to a channel. (could possibly lead to a core)
- Rewrote m_join(). This was mainly done to fix some bug that can be easily abused. Details about this bug have been given on IRC.
- Fixed bug where "JOIN #keyedchan1,#keyedchan2 key1,key2" wouldn't work. Reported by ThaPrince
- Yet another mach_chan fix (broken #*chan vs. &chan match logic as pointed out by adx)
- Don't give away IP information unless it's an admin doing /stats P
- Backported match_chan() fix to get /list *chan* to work
- Fixed RPL_WHOISACTUALLY as reported by CoolCold
- Cleaned up the resolver some more, added some comments
+ backported quit change
- Redo NXDOMAIN check so IPV6 still works
- Unbreak can_send
- Get rid of can_send_part. This also fixes a bug where voiced clients weren't able to send a PART message to the channel. Reported by ThaPrince.
- Properly close ssl clients
- Backported spy_trace_notice module unload fix
- reported by Jon, resolver was not checking for NXDOMAIN as well as SERVFAIL this caused odd DNS reports and took longer to connect. Tested by Jon (ThaPrince). (backported from head)
- rebuilt y.tab.c
- Fixed bug where "listen { flags = ssl; port 1,2,3; }" would result in only port 1 being set ssl enabled.
- Fixed typo in example.conf and send.c
- Got rid of the last IVARIANT we had and replaced it with two asserts().
- Fixed bug in fd_close() that caused a core when calling restart_resolver()
- Fixed invalid output of the USERS command as reported by ThaPrince
- Don't try to keep pointers to already freed memory on temporary_resv list when manually removing tempoary N/C resvs.
- Fixed possible core in expire_temp_lines()
- Fixed same problem for SSL_write. Some interesting reference about the problem we experienced can be found at http://www.mail-archive.com/openssl-dev@openssl.org/msg13939.html
- Fixed bug where all ssl clients would get disconnected in certain situations. (reported by many people)
- Fixed compile errors
- Add BMASK and TMODE onto message tree when building with static modules. reported by hb505.
- Backported updated help file for "SET"
+ fixed unaligned memory reference in resolver Submitted by: Immo 'FaUl' Wehrenberg
- backported spelling fix
MFC r396 from ircd-hybrid 7.3 (s_auth.c reliability fixes)
- Fixed typo
- Fixed TBURST as reported by ThaPrince
- Backported max_chans_per_user fix from HEAD
- fixed compile error in sendnick_TS()
- Fixed typo in example configuration files
- Forward-port banfix from 7.2 (reported by ThaPrince)
+ this should fix sockhost relaying (ThaPrince #1)
- Soft caller ID fix as per ThaPrince (find_channel_link was called with wrong pointer)
- Fixed incorrect match handling in relay_xline as reported by ThaPrince. Damnit match() really shouldn't return 1 on match. This will be changed sooner or later.
- Imported recent channelban changes from HEAD which have been tested extensively. The match_cidr() fix didn't work in the first try, so I'm not going to bother with further debugging. - Removed match_cidr() and comp_with_mask()
- Forgot the half of the fix
- Fixed compile error on srv4 as reported by KEYofR
+ MFC support for halfop->op rewriting.
- Don't allow shared k-lines to be set without a valid reason
- Flag the client as being ip-spoofed if setting a new hostname via CHGHOST, that way non-opers can't figure out the IP with a simple WHOIS. Suggested by adx
- Fixed compile error reported by Volk and CoolCold
- As reported by CoolCold: - Updated cmode helpfile - Added support for old-style topicburst = yes|no
- Updated RELNOTES
- Someone fixed a core in ircd_parser.y but forgot to rebuild y.tab.c, so ircd still kept on coring if using 'umodes' option in operator{}
- Don't allow other servers to send less than 4 parameters within TB
- Improved topic bursting. Read the comment in s_serv.c:send_tb for further info
- This should finally fix the TBURST issue as reported by ThaPrince. Untested as always
- Backported TBURST fix from HEAD
- Somehow we had a 7.2 release without mentioning the topicburst directive in connect{} blocks -> updated example confs - Updated RELNOTES
- Finish off TBURST (untested)
- propset svn:keywords "Id" modules/m_tburst.c - Added CAP_TBURST definition to get m_tburst.c compile
- Removed m_tb.c and updated Makefile.in
- Imported m_tburst.c from 7.3
- Updated RELNOTES
- Only locally connected clients should be checked for a valid channelmembership when processing the INVITE message. Remote clients that are outside a channel e.g. services, are allowed to send INVITEs. This also fixes a bug with anope services. Reported by r0d3nt
- Updated RELNOTES
- Fixed core in case aconf->cipher_preference and ConfigFileEntry.default_cipher_preference are both NULL pointers Reported by opteron-hani via Joan
- Updated RELNOTES
- Backported revision 315 (trimmed memory usage by moving invited dlink_list to LocalUser struct)
- Don't pace "WHO #somechan" and "WHO *" as this breaks several clients
+ clean up *.tds files after compile
+ fixed bugs related to win32 & static builds
- bump patchlevel to 7.2.1beta - stub 7.2.1beta1 in RELNOTES and add BETA verbage
- bump patchlevel to 7.2.0 - update RELNOTES - bump version in specfile
- fixed infinite loop spotted and fixed by *runedude* Jeremy Sayres and my email is runedude@runedude.net
- This is part of the nasty core fix; the y.tab.c and y.tab.h files were committed earlier, I have no idea why this file did not get committed.
- This BUG is gone so the ancillary files are no longer needed as well
+ fixed unportable usage of va_list that make ircd cry on amd64
+ MFC /dev/poll
- Back port whois fix from HEAD
+ more rate limiting fixes + update RELNOTES
+ add more load2hi protection + style fixes
MFC set +b on opers by default
- Fixed another core on dlclose()
- Fixed core on /modunload, /modrestart
- Fixed problem where configure wouldn't deal properly with openssl 0.9.8 - Rebuilt y.tab.c using bison 2.1
+ 7.1 -> 7.2
- Added missing 'return' after register_remote_user() call in nick_from_server()
- Use MODE_PRIVATE, MODE_PARANOID isn't defined until HEAD (7.3)
- make findmodule_byname case sensitive
+ reverted accidental invalid backport of win32build.bat
MFC: + removed invite_ops_only, controlled by +p now + sorted ircd.conf:channel{} a bit
- Fixed compile error in load_a_module() with glibc that don't have a Link_map typedef
- backported fix from HEAD done by Michael - Fixed bug in sendto_channel_remote() that would cause multiple copies of the same message to be sent to the uplinked server.
- Fixed gcc4 related compilewarnings in inet_ntop6(). Reported by ThaPrince
- ETRACE should spit out an error if used by a non-oper. Reported by nenolod
- Removed LocalUser.port - Removed two extra memsets in make_request()
- Fixed compilewarning about unused parc in a more or less clean way. Reported by Marines
Backported from HEAD - committed configure changes by nenolod (William Pitcock) to check for HAVE_DLINFO - fixed logic for picking up address for the mod_list
- MFC iorecv/iosend changes to allow charset recoding
- Fixed bug where we would increase Count.invisi even if invisible_on_connect is off
- MFC: fixed register_callback
(backported from HEAD) - irc_res.c would send out hundreds? of retry requests on clients that did not resolve, i.e. SERVFAIL. The code was essentailly ignoring SERVFAIL hence generating request after request after request. This appears to fix this major bug. It would be a good idea to add some logging here however.
- backported from HEAD flush_deleted_I_P is trying to treat MatchItems as if they are AccessItems I am almost sure this function is redundant as well.
- backport fix from HEAD to fix m_testline.c on 7.2 This bug is old. The code was missing a test for a kline conf and the sendto to print that kline out, in the case where it was a kline against and IP. i.e. foo@ip.ip.ip.ip it would work in the case where it was a kline against a dns.
- backport fix for memory leak and parv1 from HEAD
- Limit maximum WHOWAS replies for remote requests to 20, as per H6
- Fixed a bug where remoteservers would send us an ERROR on "WHOWAS nick count remoteserver.net". Propably one of the oldest bugs that got introduced in 7.0. (Backported from HEAD)
- fix compile warning
- backport fixes from 7.3 (HEAD) for testline and ~ flags
- Updated example.conf as suggested by pi
- Fixed compile error in m_ctrace.c
- MFC: fixed core on /links
- That one should be the propper fix for GDENY items. Previous fix broke the ability of stacking user/name/action combinations. That fix still needs to go into -HEAD, and VERY important, into 7.1.3. Someone please test this, e.g. write a small dump function that spits out GDENY items.
- CHANNELLEN vs. LOCAL_CHANNELLEN fix. Local JOINs are limited to 50chars whereas remote SJOINs/JOINs can be upto 200chars for backwards compatibility.
- And update the parser files
- At the very least, don't create a gdeny conf with a NULL name, this is bad manners.
- Updated 7.2 RELNOTES
- Fixed bug in m_whois() that would allow users to send a WHOIS to remote servers with an empty argument via "WHOIS someserver.org :"
- added /stats h to help
- Reverted oper_privs_as_string() back to its previous version which is easier to maintain when adding new operflags. Even the one who wrote the new version introduced a bug by not taking care to keep the oper_flags_table in sync with the OPER_FLAGS_* bits. (which also no one really wants to do ...) - Updated it to deal with new 'remoteban', 'operwall' and 'operspy' flags
- Re-added an equivalent of H6's sixth O-line field (Modes to get on operup). - Updated efnet's example.conf to reflect the new opers_bypass_callerid directive - Misc style corrections to s_user.c while on it
MFC: switch to static "SVN" string
- *hopefully* this hack fixes cryptlinks+ts6 instead of breaking them ;)
- documented cidr_bitlen
- MFC disallow ':' at the beginning and ' ' in server passwords
create 7.2 branch, we can move/rename it as needed.
- svn:keywords
- svn:keywords
- Fix svn:keywords
- imported sources - can be moved later according to the directory/branching scheme, but we need the svn up
x
test 12312431241
blah
xxx
zzz
test
another
test 123
this is a test
yet another test commit
yet another test commit
test commit. will it email?
Deleted ircd-hybrid/trunk
Deleted ircd-hybrid/tags
Deleted ircd-hybrid/branches
- test commit
Initial import