- Bump copyright years
- Final removal of backwards compatibility code for ircd-hybrid 8.2.22 and below. Also, minimum supported version of Anope is now 2.0.8.
- Stylistical changes
- m_server.c: whitespace changes
- Restore backwards compatibility mode for non RHOST server. Final removal is scheduled for the end of 2020.
- m_server.c: minor documentation cleanups
- Switch to 6 arg SERVER/SID commands
- m_server.c:server_send_client(): drop backwards compatibility for non RHOST servers
- Added 'client' option to listener::flags
- Fixed remaining style issues
- Store tls version/cipher in Client::tls_cipher for later use
- Rename Client::certfp to Client::tls_certfp
- Style corrections
- Each type of command handler now has its own min/max argument count pair; remove remaining argument checks from all modules
- Move setting of client->servptr to more appropriate places
- Extbans have been implemented. Main implementation done by Adam for p4.
Currently supported extbans:
Matching:
$a:<account> Matches users logged into a matching account.
$c:<channel> Matches users that are on the given channel. An additional
prefix of either @, %, or + can be specified to test for
certain channel privileges.
$o:<class> Matches IRC operators that have joined a class
matching the mask.
$r:<realname> Matches users with a matching realname.
$s:<server> Matches users that are connected to a server matching the mask.
$u:<modes> Matches users having the specified user modes set or not set.
$z:<certfp> Matches users having the given TLS certificate fingerprint.
Acting:
$j:<banmask> Prevents matching users from joining the channel.
$m:<banmask> Blocks messages from matching users. Users with voice
or above are not affected.
- Replaced most occurences of 'SSL' with 'TLS'
- Bump copyright years everywhere
- Rename struct Membership to ChannelMember - Rename Channel::last_knock to last_knock_time - Rename Channel::last_invite to last_invite_time - Rename chptr to channel
- Command handlers are now of type void again
- Renamed 'creationtime' Channel structure member to 'creation_time'
- m_server.c: stylistic changes
- m_server.c:mr_server(): drop the connection in case the other side attempts to introduce a server name we don't expect.
- m_server.c:server_check(): play nice with already attached connect{} records; Break early if a matching record was found as there's no point in processing the rest of the list
- m_server.c:server_estab(): clean up stupid logic where we perform an extra test on client_p->connection->confs to
see whether the connect{} block record really got attached
- m_server.c:server_estab(): change FLAGS_CLOSING check back to FLAGS_DEADSOCKET. This one got lost when https://svn.ircd-hybrid.org/viewcvs.cgi/ircd-hybrid/src/s_serv.c?root=cvs&r1=7.276&r2=7.277 has been reverted- m_server.c:server_estab(): change FLAGS_CLOSING check back to FLAGS_DEADSOCKET. This one got lost when https://svn.ircd-hybrid.org/viewcvs.cgi/ircd-hybrid/src/s_serv.c?root=cvs&r1=7.276&r2=7.277 has been reverted
- Killed CurrentTime
- m_server.c:server_estab(): for consistency, set client_p->connection->created_real here as well, even if we don't need it for servers
- Should be using monotonic clock almost everywhere now; sort out mixture and misuse of 'firsttime', 'lasttime' and 'since' in the Connection structure
- Cleanup server connecting related code even further - Make comm_connect_tcp() take less arguments and remove unused dns resolving functionality
- Update copyright years
- modules: replace MODULE_FLAG_CORE and MODULE_FLAG_NOUNLOAD with dedicated variables; fixed the ircd from crashing in case reloading a module fails
- Make use of the bool data type in some more places
- Make use of the bool data type in some more places
- Make use of the bool data type in some places
- Stylistic changes
- m_server.c: merge 'Simplyify server_check logic, do not use magic constants everywhere' (Adam)
- Killed userhost.c. Rewrote everything to use ipcache.c
- Move svstag related code into its own files
- Add channel_get_list() to channel.c which should be used when accessing channel_list outside of channel.c
- Stylistic changes
- Allow a matching function to be passed to conf_service.c:service_find()
- Rename some functions to comply with naming convention
- m_server.c:ms_sid(): removed outdated/invalid comment
- m_server.c:ms_sid(): use source_p->from instead of client_p
- m_server.c:server_estab(): removed outdated/invalid comment
- Rename attach_conf() -> conf_attach(), detach_conf() -> conf_detach(); clean up documentation
- Restore fd_table. No longer allocate fde_t items from within any other structures like the AuthRequest, or Connection structure - struct AuthRequest once again is no longer allocated from within the Connection structure
- Clean up remaining sizeof() to sizeof(variable)
- Update copyright years
- Store real host information in Client.realhost and extend the UID message to send the actual host. This allows operators to see the real host of a client in /whois and /whowas.
- Move all CAPAB related code to server_capab.c, and server_capab.h
- Add UMODE_MAX_STR enum to user.h and make use of it in relevant places
- Remove some pointless/outdated comments
- m_server.c: stylistic changes
- Fixed old bug where lusers/stats u would report an invalid max local connection count in RPL_STATSCONN
- Rename get_client_name() to client_get_name()
- Get rid of Count.myserver
- No longer put servers on the 'global_client_list'. This was just bad.
- Rename some functions in client.c to comply with naming convention
- Move check_server() from server.c to m_server.c; rename it to server_check()
- Update copyright years
- Minor cleanup to send_umode() to get rid of the redundant struct Client * pointer
- Merge send_capabilities() and show_capabilities() into get_capabilities()
- Minor cleanup to client/channel burst logic
- Cleanup more conversion specifiers
- Move service {} block configuration management into its own module
- Incorporate gnutls support by Adam & Attila
- Renamed MyCalloc to xcalloc
- Update copyright years
- m_server.c: rename set_server_gecos() to server_set_gecos()
- m_server.c:server_set_flags(): minor cleanup
- m_server.c: add some documentation for server_set_flags()
- m_server.c: add server_set_flags() and make use of it
- m_server.c: add 'flag' and 'sid' argument to SERVER command; add 'flag' argument to SID command. - m_pass.c: mention that parv[3] and parv[4] will be deprecated in some future release
- CAPAB_SVS is now mandatory
- Use the %ju conversion specifier for time_t and get rid of these non-portable (unsigned long) casts; replace some uint64_t with uintmax_t
- Make use of enum in some places; make use of the HasFlag() macro some more; minor style corrections
- m_server.c:ms_sid(): should be using get_client_name() in these two places
- m_server.c:server_estab(): use get_client_name() when reporting errors
- Fixed some server related get_client_name() calls where HIDE_IP is used instead of SHOW_IP. get_client_name() already deals with hide_server_ips and falls back to HIDE_IP if IP hiding is enabled.
- m_server.c:server_estab(): removed comment that's outdated for 24 years now
- Rename several functions in channel.c to comply with naming convention
- Rename server capabilities flags from CAP_* to CAPAB_*
- Get rid of UMODE_ALL
- Make use of the *Flag() macros in some more places
- Move all SID/UID related code to id.c
- Use C99-style initializers in all struct Message items - Removed MFLG_SLOW - Removed DUMMY_HANDLER
- Removed useless zero initializers from the module_entry as suggested by Adam
- Minor cleanups to CAPAB related code
- sendnick_TS(), introduce_client(): use the %u conversion specifier for unsigned ints
- Removed TS_DOESTS, DoesTS, and related code
- m_server.c:server_estab(): removed pointless detach_conf(client_p, CONF_OPER)
- Changed SVSTAG to use user modes
- m_server.c:sendnick_TS(): use appropriate conversion specifiers
- Finish basic SVSTAG implementatio
- Update copyright years
- Removed useless assert()s
- user.c, m_server.c: ip addresses are always propagated via UID regardless of ip spoofs
- Get rid of NOCAPS
- Renamed Client::svid to Client::account
- Renamed variables
- Renamed variables
- m_server.c, m_stats.c: constification
- 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.
- m_server.c:mr_server(), ms_sid(): minor modification to allow for more parameters in the future
- m_server.c:ms_sid(): don't automatically consider servers behind u-lines are services as well
- Renamed Channel::chname to Channel::name
- 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
- 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_server.c:server_estab(): removed 'host = client_p->name' assignment
- Renamed 'localClient' Client structure member to just 'connection'
- Fixed misspellings
- m_server.c: fixed spelling in some places
- Update GPL 2 license headers
- Implemented pseudo {} blocks (service aliases)
- Fixed compile warnings with -Wmissing-field-initializers
- Renamed various variables
- Renamed structures to meet code conventions
- Fixed typos all over the place
- m_server.c: fixed build with LibreSSL which hasn't compression support - ax_check_openssl.m4: 0.9.8m is now the minimum requirement
- Renamed serv_list to local_server_list
- Renammed global_serv_list to global_server_list
- Don't add/remove unregistered connections to/from global_client_list
- Got rid of SEND_UMODES. We now propagate all modes.
- m_server.c:server_estab(): SVINFO can be prefixed
- Fixed EOB logic for remote servers. Fix derived from p4
- Renamed global_channel_list to channel_list
- Renamed general::warn_no_nline to warn_no_connect_block
- Moved files: s_user.c -> user.c s_misc.c -> misc.c s_serv.c -> server.c
- Made server_estab() and sendnick_TS() use 'static' keyword
- s_serv.c, m_server.c: moved all netburst related code to m_server.c
- Fixed inconsistent style in several places
- Fixed compile error in ms_sid() - Cleaned up find_chasing(). Removed useless third 'chasing' argument.
- mr_server(), ms_sid(): minor cleanup
- Cleanup some places where we no longer need to use ID_or_name()
- Incorporate Adam's exit_client/quit storm cleanups Note: QS is mandatory now
- Removed client_p pointers from everywhere
- m_server.c:mr_server(): check for bogus server ID
- m_server.c:ms_sid(): constification + fixed comments
- Server now no longer accepts TS5 links
- Applied Adam's "Put the command name in parv[0], not prefix name" patch
- 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_server.c:mr_server(): if there's no connect block for a server,
exit the connection with "No connect{} block." instead of
"Invalid servername."
- Clean up all files in modules/ (fixed indentation, removed whitespaces/tabs) - Fixed copyright years - Made module handlers int type for later use
- Removed rfc1459_command_send_error() message handler
- Implement certificate fingerprint validation for oper{} and connect{} blocks.
Some code taken from oftc-hybrid. Hello, stu!
- Mostly style cleanups & whitespace changes
- 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
- Initial rewrite of the configuration subsystem
- Fixed compile warnings due to missing arguments to sendto_realops_flags()
- 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
- Second time's the charm? Moving svnroot/ircd-hybrid-8 to svnroot/ircd-hybrid/trunk
- Removed remnants of MFLG_UNREG which is no longer needed with the current implementation of message handlers
- A server's description can again include the '[' and ']' characters
- 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
- removed &localchannels
- 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()
- 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.
- remove unused variables
- 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
- remove servlink in preparation for tls links/compression
- 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
- minor cleanup to m_sid and m_server: replace DLINK_FOREACH loops with sendto_server()
- cleanup module loader. Make module api more flexible
- Start cleaning up macros in client.h. Replace several ClientHasSomeCoolFlag() with simple HasFlag/HasUMode macros.
- 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.
- 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
- preliminary services support
- create ircd-hybrid-8 "branch"
- recreate "trunk"
- removed all instances of STATIC_MODULES since we don't have static modules anymore - removed m_mkpasswd module from contrib
- cleanup and sanitize m_server.c. remove hostmasking. Improve TS6 suppport
- 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
- branch off trunk to create 7.3 branch
- move ircd-hybrid-7.2 to trunk
- move list manipulation routines from tools.c to list.c - mem_frob() goes to memory.c - sort out redundant/unneeded header includes
- move m_error.c to modules/
- Killed s_stats.c
- Got rid of Serv.dep_users and Serv.dep_servers
- 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
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
This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.