- Bump copyright years
User mode `B` has been implemented. Clients with that mode set are marked as a bot in both `WHOIS` and `WHO`. This mode can only be set by IRC operators (as long as the `bot` directive is set in `general::oper_only_umodes`), servers, and services. This mode can for example be used to mark HOPM as official network bot.
- For consistency, the `general::network_desc` configuration directive has been renamed to `general::network_description`
- Rename find_channel_link() to member_find_link()
- Add member_get_prefix_len() and make use of it in some places; rename get_member_status() to member_get_prefix()
- Replace remaining occurrences of IsMember with find_channel_link and remove IsMember entirely
- m_whois.c: rename whois_can_see_channels to whois_channel_show_status; use enum for it instead of hardcoded values that have no meaning
- m_whois.c:whois_person(): fixed archaic bug where, when sending a RPL_WHOISCHANNELS reply to a remote client, it could be truncated on the remote side in case the server/client IDs are longer than the actual names
- Remove hardcoded numeric digit from RPL_WHOISCHANNELS
- Rename Client::certfp to Client::tls_certfp
- server_hunte(): drop the 'parc' argument. It's no longer needed.
- Each type of command handler now has its own min/max argument count pair; remove remaining argument checks from all modules
- Stylistic changes
- 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
- Should be using monotonic clock almost everywhere now; sort out mixture and misuse of 'firsttime', 'lasttime' and 'since' in the Connection structure
- Make more timers use monotonic time
- Update copyright years
- m_whois.c:whois_person(): make 'callerid' use bool
- Make use of the bool data type in some places
- Fixed style inconsistencies in various places
- Move svstag related code into its own files
- m_whois.c:whois_person(): services clients are now tagged with 'is a Network Service' in "WHOIS"
- Stylistic changes
- 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.
- Cleanup some bad mess in mo_trace(). This also fixes some bug where we would get RPL_TRACELINK replies with "ac2ptr_is_NULL!!" from remote servers including SIDs or UIDs.
- Rename hunt_server() to server_hunt()
- Update copyright years
- Style corrections in several places
- m_whois.c:whois_person(): re-add /whois notice. Goes to user mode +y
- Remove excessive const keyword on dlink_node pointers
- Now that we got time_t to work nicely on openbsd with snprintf's conversion specifiers, we ran into a similiar issue on Raspbian/ARMv7's time_t which is of signed 32 bit and doesn't cope at all with %j. Instead of doing tricks, get rid of time_t everywhere and forever and use uintmax_t instead which has at least a 'standardized' conversion specifier associated with it.
- Update copyright years
- Cache channel name lengths
- Removed backwards compatibility hack for older servers that allowed client->sockhost being "0"
- Removed client->account backwards compatibility hacks for 8.1
- m_whois.c: don't allow remote WHOIS lookups with the target being a UID. Removed IsDigit test.
- 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
- 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
- Changed SVSTAG to use user modes
- m_whois.c:whois_person(): renamed variable
- m_whois.c:whois_person(): don't leak RPL_WHOISOPERATOR if target is +H
- Finish basic SVSTAG implementatio
- Renamed idle_time_get() to client_get_idle_time()
- m_whois.c: operators may now see certificate fingerprints, user modes and hidden channels as well. This used to be admin only.
- m_whois.c:whois_person(): constification
- m_mode.c, m_whois.c: added missing HasUMode test
- Minor cleanups and optimizations to usermode handling
- Update copyright years
- general::hide_spoof_ips is now deprecated
- Renamed Client::svid to Client::account
- Renamed variables
- /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
- Improved RPL_LOAD2HI numeric
- m_whois.c:whois_person(): removed useless test on target_p->sockhost[0] which can't be NUL now that TS6 is mandatory
- Renamed Channel::chname to Channel::name
- Renamed 'localClient' Client structure member to just 'connection'
- Update GPL 2 license headers
- Implemented pseudo {} blocks (service aliases) - Fixed compile warnings with -Wmissing-field-initializers
- Renamed structures to meet code conventions
- Fixed typos all over the place
- Added usermode +p which hides channel list in WHOIS
- Added usermode +q which hides idle and signon time in WHOIS
- Moved files: s_user.c -> user.c s_misc.c -> misc.c s_serv.c -> server.c
- doxygen
- Style corrections/constification
- Fixed some comments; cleaned up style here and there
- Minor corrections to -r3156 [Removed client_p pointers from everywhere]
- Removed client_p pointers from everywhere
- Applied Adam's sendto_one_numeric() changes
- Applied Adam's "Put the command name in parv[0], not prefix name" patch
- Clean up all files in modules/ (fixed indentation, removed whitespaces/tabs) - Fixed copyright years - Made module handlers int type for later use
- m_whois.c:do_whois(): get it to work with UIDs. Spotted and fixed by Adam.
- m_whois.c:whois_person(): removed /whois notice
- Fixed server name leak for hidden servers in /who, /whois and /whowas
- Cleaned up RPL_WHOISADMIN hack
- Better distinguishing between usermode +g and +G in both /whois and /privmsg as suggested by Adam <adam@anope.org>
- m_whois.c: only administrators may see a client's certificate finger print
- Administrators are now able to see user modes a user has set via /whois
- 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
- Stole ircu's RPL_WHOISACCOUNT numeric
- m_whois.c: removed legacy code
- 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.
- Cleanups and fixes to previous commit -r2228
- Implement certificate fingerprint validation for oper{} and connect{} blocks. Some code taken from oftc-hybrid. Hello, stu!
- white-space commit/style corrections
- Moved disable_remote_command configuration directive from general{} block to serverhide{] block
- Whitespace commit
- Mostly style cleanups & whitespace changes
- WHOIS may no longer accept wildcards
- Revert to -r1831
- 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 -r1810 [m_whois.c: fixed bug where TS5 servers would send an empty RPL_WHOISACTUALLY numeric]
- Replaced all occurrences of ircsprintf with sprintf/snprintf and killed sprintf_irc.(c|h)
- 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
- 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
- Second time's the charm? Moving svnroot/ircd-hybrid-8 to svnroot/ircd-hybrid/trunk
- Removed general::kline_with_reason configuration options. It's now enabled by default - Removed remnants of the broken reject holding code
- Removed general::use_whois_actually configuration directive. This is now enabled by default
- Made Client::away a fixed-size array at the expense of a somewhat higher memory consumption
- removed &localchannels
- modules/m_whois.c: replace an irccmp with strcmp
- m_whois.c: fixed displaying of RPL_TARGUMODEG
- 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
- 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
- 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
- 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.
- replace bunch of ircsprintf with snprintf
- cleanup module loader. Make module api more flexible
- m_whois.c: remove callbacks that previously has been used for WHOIS notices
- 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.
- 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
- 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
- fix previous commit to m_whois.c
- don't report RPL_WHOISREGNICK for unregistered nicknames...
- UMODE_REJ goes to usermode 'j' - add UMODE_REGISTERED ('r') (registered nickname)
- create ircd-hybrid-8 "branch"
- recreate "trunk"
Added back STATS/TRACE/MOTD/ADMIN request notices. Removed spy_*_notice modules accordingly.
- removed all instances of STATIC_MODULES since we don't have static modules anymore - removed m_mkpasswd module from contrib
- Move RPL_ETRACE to messages.tab - CHANGE RPL_WHOISSSL to use the 671 numeric
- 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
- 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
+ backported numeric changes
- Fixed RPL_WHOISACTUALLY as reported by CoolCold
- Back port whois fix from HEAD
+ more rate limiting fixes + update RELNOTES
+ add more load2hi protection + style fixes
- Fixed bug in m_whois() that would allow users to send a WHOIS to remote servers with an empty argument via "WHOIS someserver.org :"
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.