Commit Graph

279 Commits

Author SHA1 Message Date
Valery Yatsko 9879cd59a6 Various inet* -> rb_inet_* 2008-04-20 08:55:41 +04:00
Valery Yatsko a64c5173a7 strlcat -> rb_strlcat 2008-04-20 08:44:04 +04:00
Valery Yatsko 907468c485 strlcpy -> rb_strlcpy 2008-04-20 08:40:40 +04:00
Valery Yatsko b798359b17 Functions replacement: ircd_baseXX_{en,de}code -> rb_baseXX_{en,de}code 2008-04-20 08:36:28 +04:00
Valery Yatsko 2667396968 get_randomness() removed from m_challenge.c - we use rb_get_random() now from libratbox 2008-04-20 08:30:41 +04:00
Valery Yatsko f5bd2fee66 Code cleanup (m_die) 2008-04-20 07:46:08 +04:00
Valery Yatsko 6972e25a95 Moving some m_die code into ircd_shutdown(reason) function and use it on SIGTERM too 2008-04-20 07:38:56 +04:00
Valery Yatsko a822ef295a Switched on using cache_user_motd(); for motd update on rehash 2008-04-20 07:24:50 +04:00
Jilles Tjoelker 04cc8ce9ac Remove stray SetCork.
At this time, charybdis does not use ratbox3's cork mechanism.
2008-04-16 20:49:08 +02:00
Jilles Tjoelker b717a466d0 Remove ^M on line endings. 2008-04-13 17:54:23 +02:00
Jilles Tjoelker c6525f80ba Remove various other gline stuff. 2008-04-11 17:10:40 +02:00
Valery Yatsko d5a432fa00 Removing glines 2008-04-11 18:47:03 +04:00
Valery Yatsko 8a78afe43d Fixing time_t warnings 2008-04-09 23:34:34 +04:00
Valery Yatsko ca89e98e03 .cvsignore files removed, SVN-Access replaced by Mercurial-Access 2008-04-09 22:24:50 +04:00
Valery Yatsko 03d18a46b1 Fixed two places, where sendto_realops_flags was mistakenly used, and removed this function entirely 2008-04-08 20:32:58 +04:00
Valery Yatsko 92b8976366 'S' flag meaning we use ssl link added to /stats {c,C} (connect) 2008-04-08 18:30:53 +04:00
Valery Yatsko 477035a4d2 m_stats.c fixed not to use kb in tstats output 2008-04-08 18:05:29 +04:00
Valery Yatsko 29c8637abb Branch merge 2008-04-08 18:01:37 +04:00
Valery Yatsko 6b7c7401f9 Working over zipstats bug and moving on the new ServerStats struct (without Kb counting, this style is used by code parts from ratbox3) 2008-04-08 18:00:38 +04:00
Valery Yatsko d9f98c7a59 'pargs' gone from set_final_mode - should be correct 2008-04-07 19:05:29 +04:00
Valery Yatsko 452382d01b m_sjoin.c gone, merged with m_join.c 2008-04-07 18:26:59 +04:00
Valery Yatsko b190d5921a Missed include 2008-04-07 15:29:39 +04:00
Jilles Tjoelker 0624f969d3 If we see an invalid nick, close the local link instead of killing it.
This avoids annoying users when someone links a test
server with the wrong nicklen and is more likely to lead
to the inconsistency being fixed than a kill.
2008-04-06 22:04:42 +02:00
William Pitcock 5da17c500b fix whois :) 2008-04-06 12:04:25 -05:00
William Pitcock 42fa784692 remove unneeded notice, whois idle works fine :) 2008-04-06 11:48:28 -05:00
Valery Yatsko 8db00894ab ssl sync with http://hg.angelforce.ru/charybdis-old 2008-04-06 18:52:42 +04:00
Valery Yatsko 3fe908250a Much clear maxconnections stuff - ported from ratbox3. 2008-04-05 23:56:15 +04:00
Valery Yatsko 2f5fa92127 Missed some files in r520 commit. 2008-04-05 21:20:48 +04:00
Valery Yatsko 2c2e0aa96e Replacing legacy IPV6 define with RB_IPV6 (which is included in libratbox's config.h). 2008-04-05 20:57:30 +04:00
Valery Yatsko 8325120565 s_stats.c removed, now we use new style of stats handling. 2008-04-04 19:54:37 +04:00
Jilles Tjoelker 4362b28284 Make m_dline and m_kline load again. 2008-04-04 01:18:47 +02:00
Jilles Tjoelker eeb13d3251 Unbreak /stats ? and fix a bug in /stats Z. 2008-04-03 23:21:20 +02:00
Jilles Tjoelker d76c16d49f Unbreak percentage display in /map.
This now uses integer arithmetic instead of floating point.
2008-04-03 22:55:09 +02:00
Jilles Tjoelker 6336c1bf78 Make m_stats and m_svinfo load again. 2008-04-03 22:01:59 +02:00
Jilles Tjoelker 9df69d5b30 Get rid of ^M. 2008-04-03 22:00:22 +02:00
William Pitcock d3455e2c7e s_log.* -> logger.* (s_foo looks ugly, lets try to get rid of it) 2008-04-02 21:52:01 -05:00
Jilles Tjoelker f0fbdf6c8d Clear event pointer after removing it. 2008-04-02 21:22:18 +02:00
Jilles Tjoelker bf019bb06d Revert 415a87c328d1 as the corresponding ConfItem change won't be done now. 2008-04-02 20:43:12 +02:00
Valery Yatsko c48eb01dbe Synching http://angelforce.ru:8000/ with http://hg.atheme.org/charybdis 2008-04-02 21:43:20 +04:00
William Pitcock 68876ea24b Automated merge with http://angelforce.ru:8000/ 2008-04-02 10:58:55 -05:00
Valery Yatsko 3ea5fee7ed irc_sockaddr_storage -> rb_sockaddr_storage, changing fd in Listener struct to F 'cause libratbox3 need it. 2008-04-02 19:57:37 +04:00
Valery Yatsko 7db0e309ad m_xline.c fixed 2008-04-02 19:47:04 +04:00
Valery Yatsko de2fb6e2ae m_pass.c fixed 2008-04-02 19:45:22 +04:00
Valery Yatsko 21c9d815d7 Reverting some changed related not to moving on libratbox3 but using ratbox3 source! 2008-04-02 19:37:50 +04:00
William Pitcock 9ccdb75c11 Make m_resv.so build again. 2008-04-02 10:30:44 -05:00
Valery Yatsko 7e98780bbb warnings fixed 2008-04-02 16:10:09 +04:00
Valery Yatsko fe2b1175ea reject.h include 2008-04-02 16:06:45 +04:00
Valery Yatsko 8750c6e6b7 tstats stuff gone to m_stats.c 2008-04-02 16:04:43 +04:00
Valery Yatsko d1cf8afebd m_unreject.c fixed 2008-04-02 15:28:55 +04:00
Valery Yatsko ae42901c54 m_testline.c fixed 2008-04-02 15:27:59 +04:00
Valery Yatsko cd3b9a5e7b another fix 2008-04-02 15:26:28 +04:00
Valery Yatsko 7de46f2b43 m_kline.c warning fixed, but read my comment 2008-04-02 15:25:36 +04:00
Valery Yatsko 7c3f54ab8a remove_temp_glines() without legacy api 2008-04-02 15:23:07 +04:00
Valery Yatsko dc0490da84 daddr - unused variable warning fixed 2008-04-02 15:21:35 +04:00
Valery Yatsko 206b1ee61b fixing dline 2008-04-02 15:20:15 +04:00
Valery Yatsko 6a73262e4d 'ServerStats->' -> 'ServerStats.' 2008-04-02 15:07:00 +04:00
Valery Yatsko ee60b66b9d Line doesn't exists in ratbox3 and makes compile warning - gone 2008-04-02 15:05:04 +04:00
Valery Yatsko 58e8319c1c Reverting to 398.. trying again with native charybdis hash 2008-04-02 14:16:31 +04:00
Valery Yatsko 529088a022 m_message::add_target from ratbox3 2008-04-02 14:05:17 +04:00
Valery Yatsko 79edef0918 Trying again - this will need ssld integration from me 2008-04-02 13:32:14 +04:00
Valery Yatsko b0b796e41f m_pass.c fix 2008-04-02 05:59:06 +04:00
Valery Yatsko 9f6bbe3cf9 CurrentTime -> rb_currenttime(); 2008-04-02 03:53:20 +04:00
Valery Yatsko b96058d185 dlinkAddAlloc -> rb_dlinkAddAlloc 2008-04-02 03:44:26 +04:00
Valery Yatsko f781a34520 linebuf_len -> rb_linebuf_len for modules 2008-04-02 03:43:26 +04:00
Valery Yatsko e68712582b Fixed another two warnings in m_stats.c 2008-04-02 03:41:54 +04:00
Valery Yatsko b8127271b7 extern void send_pop_queue(struct Client *); in header, will implement this some time later 2008-04-02 03:39:08 +04:00
Valery Yatsko 62d289465f DubString -> rb_strdup 2008-04-02 03:26:34 +04:00
Valery Yatsko bba1d5ba04 m_capab.c fixed - please check whether I am correct 2008-04-02 03:09:21 +04:00
Valery Yatsko 8e43b0b414 MyMalloc -> rb_malloc 2008-04-02 03:07:29 +04:00
Valery Yatsko 1b95ca0b6a m_away.c derived from ratbox3 - looks much better and do not use deprecated DupString. 2008-04-02 03:00:38 +04:00
Valery Yatsko 90a3c35b29 Argh, wrong replace caused by MS VS 2005 interface. 2008-04-02 02:47:17 +04:00
Valery Yatsko a55e57248b MyFree -> rb_free 2008-04-02 02:45:16 +04:00
Valery Yatsko cc200171d7 libcharybdis includes gone. 2008-04-02 02:39:19 +04:00
Valery Yatsko 2393f503a6 Removing libcharybdis references. 2008-04-02 02:18:44 +04:00
William Pitcock 7689475b4f make m_signon build. 2008-04-01 16:29:32 -05:00
William Pitcock ccfe0e9712 Make m_set compile. 2008-04-01 16:25:22 -05:00
William Pitcock 8325ed70b7 Automated merge with ssh://hg.atheme.org//hg/charybdis 2008-04-01 16:15:06 -05:00
William Pitcock 9baf91887f fix highest_fd nonsense 2008-04-01 16:14:47 -05:00
William Pitcock 03e24016fc Clean these modules up. 2008-04-01 16:12:16 -05:00
Jilles Tjoelker 7f4fa1956e More changes for libratbox. 2008-04-01 23:11:11 +02:00
Jilles Tjoelker bfccb2c0e1 Various changes for libratbox. 2008-04-01 23:03:14 +02:00
Jilles Tjoelker 9f6c335332 Change over some dlink functions. 2008-04-01 22:54:08 +02:00
William Pitcock 38e6acddad ircs[n]printf -> rb_s[n]printf 2008-04-01 15:38:40 -05:00
William Pitcock 31c047d725 Make this compile, but lots of warnings. 2008-04-01 15:26:43 -05:00
William Pitcock 581fa5c499 ircsprintf -> rb_sprintf 2008-04-01 15:21:53 -05:00
William Pitcock 08d11e34cc start making this compile 2008-04-01 15:18:48 -05:00
William Pitcock db6b03137d bork bork bork 2008-04-01 15:14:08 -05:00
William Pitcock b37edd511a Allow ENCAP GCAP to be reused to broadcast capability changes to the network.
This means that modules can now be added which change CAPs.
2008-04-01 11:45:46 -05:00
Jilles Tjoelker 8e0633f56f Move PRIVS command from extensions to modules (shows effective oper privs). 2008-03-31 00:39:14 +02:00
Jilles Tjoelker 889b032125 Use ERR_DISABLED in CHGHOST and STATS e. 2008-03-30 20:02:55 +02:00
Jilles Tjoelker 5a34b193e6 Unbreak /quote help stats as an oper (all where oper and user help are different).
Remove symlink optimization, so helpfiles equal for
opers and users are loaded into memory twice, which
is not an issue.
2008-03-29 23:38:22 +01:00
Jilles Tjoelker ff74c93aee Use ERR_NOPRIVS when an oper is not allowed to see admin-only /stats.
This includes opers without the admin flag and admins on other servers.
2008-03-29 23:09:45 +01:00
Jilles Tjoelker af58bf737a Fix compiler warning. 2008-03-29 21:36:11 +01:00
Jilles Tjoelker 230a6e6c41 Fix Invalid CAP subcommand error if the user has no nick. 2008-03-18 23:47:37 +01:00
Jilles Tjoelker 4d17e288b4 target change: use fnv32 hash of UID instead of pointer to identify clients
This way, the information remains valid after a split.
For clients on TS5 servers, the nick is used; this is
not much of a problem because these are on pseudoservers
and not assumed to change nick much at all.
2008-03-16 00:39:49 +01:00
Jilles Tjoelker 26f754d989 Show some target change statistics in /stats t.
- the number of messages blocked by target change on
  this server since it was started
- the number of IPs currently subject to a a lower
  target limit on this server (these expire over time)
2008-03-02 17:03:56 +01:00
William Pitcock fda6c724ea Remove CHFL_DEOPPED entirely.
Since charybdis 2.3 will require TS6, emulating legacy semantics is
unnecessary.
2008-02-27 14:08:27 -06:00
Jilles Tjoelker c240ecad4f Remove CHFL_DEOPPED check from TMODE.
This check sometimes blocks oper overrides (OMODE).
It does not stop any hacks that the channelTS check
already stops, because CHFL_DEOPPED is only set when
this server ignored an @ in an incoming SJOIN (the
SJOIN is then propagated without the @) and this
can only be because of a TS difference.
2008-02-25 00:05:15 +01:00
Jilles Tjoelker 3499aa48d5 Fix a UID leak. 2008-02-04 23:56:13 +01:00
Jilles Tjoelker 1f8b58e769 Remove silly a2client_p, entirely pointless since User.server removal.
(and was pointless since Client.servptr was introduced)
2008-01-14 23:59:46 +01:00
Jilles Tjoelker d1264ac892 Add two missing colons for sendto_one_notice(). 2008-01-06 00:12:51 +01:00
Jilles Tjoelker 8eee9ee160 If stats k is masked for nonopers, treat stats k and K the same.
There is no point in forcing two stats requests for just
one line of information.
2008-01-05 17:00:00 +01:00
Jilles Tjoelker e54995b150 Remove idle time checking (auto disconnecting users idle too long). 2008-01-01 23:04:34 +01:00
William Pitcock de0572442e Replace int fd; in local client object with an fde object. 2007-12-28 15:06:33 -06:00
Jilles Tjoelker 372b2193ec More helpful ERROR server notices.
- Do not use hide_error_messages for certain "safe" ERRORs.
- If hide_error_messages hides an ERROR from a handshake,
  send a server notice anyway, but without the message
  text.
- Send server notices about ERRORs from handshakes network
  wide if it was a remote connect.
2007-12-28 01:31:56 +01:00
Jilles Tjoelker df7a3250b1 Never allow a duplicate kline; always allow a wider kline.
Duplicate klines are now disallowed regardless of
no_redundant_klines.  There is a somewhat hackish check
to see if the new kline is wider than the existing one.
2007-12-26 00:51:22 +01:00
Jilles Tjoelker 4c171a9c72 When removing a temp kline, show removed mask, not given mask.
Example: when temp klining 10.0.0.0/16 and unklining 10.0.0.1/16,
it showed 10.0.0.1/16 being removed before, and shows
10.0.0.0/16 now.
2007-12-26 00:18:22 +01:00
Jilles Tjoelker fd4ba65e17 Send a few more snotes about remote connects netwide.
(bad password for server, SID exists)
2007-12-25 16:19:54 +01:00
Jilles Tjoelker 16e0550f25 Use "SID Exists" instead of "Server Exists" where appropriate. 2007-12-25 01:16:18 +01:00
Jilles Tjoelker 2a719c44c0 Consolidate duplicate channel mode flags tables to one. 2007-12-25 01:00:20 +01:00
Jilles Tjoelker 757f5aa8fc Make the notable TS delta snote netwide as this may screw up the entire network. 2007-12-25 00:18:34 +01:00
Jilles Tjoelker 55b5711c56 Put full detail in the SQUIT reason for invalid TS version or excessive TS delta. 2007-12-25 00:16:26 +01:00
Jilles Tjoelker 9f8d60cc83 Make the other notices to snomask +b network wide.
(with the exception of flooding on an &channel)
2007-12-24 22:43:47 +01:00
Jilles Tjoelker c13a2d9ad3 Add mass_notice oper priv, enabled by default for compatibility.
Controls /wallops and masked notices/privmsgs.
2007-12-24 21:47:05 +01:00
Jilles Tjoelker 2d2c402d0b Move various flags from flags2 to flags. 2007-12-24 20:58:55 +01:00
Jilles Tjoelker 420b2c9a10 Remove dot_in_ip6_addr config option. 2007-12-24 18:24:23 +01:00
Jilles Tjoelker 544cde9033 Don't allow opers to bypass can_create_channel check.
Modules need to do so themselves, if desired.
2007-12-18 00:17:25 +01:00
Jilles Tjoelker 326217c4d0 Don't allow faking adminwall via wallops, in case anyone loads it. 2007-12-17 18:50:22 +01:00
Jilles Tjoelker 1ebe6ffc92 Add resv oper priv, enabled by default for compatibility. 2007-12-17 02:20:14 +01:00
Jilles Tjoelker e8149a2c64 Make /rehash help work again. 2007-12-12 22:26:17 +01:00
Jilles Tjoelker 35f6f850b6 Remove reject entries on unkline/ungline/unxline.
When a user is rejected, remember the hash value of the
ban mask (for klines/glines, hash value of the user part
XOR hash value of the host part) with the rejected IP;
if the kline/gline/xline is removed, remove rejects with
the same hash value also.  Note that this does not happen
for expiries; this is deliberate.
Rejects for no auth{} or dnsbl put a hash value of 0;
they cannot be removed selectively.
2007-12-08 21:54:51 +01:00
William Pitcock 9802490cbb help system rework, part 1 2007-12-03 19:35:55 -06:00
William Pitcock b37021a45e nickdelay -> dictionary. 2007-12-03 10:59:25 -06:00
Jilles Tjoelker 6444959578 Fix receiving TS5 client introductions.
This was broken due to User.server removal.
2007-12-01 19:11:44 +01:00
Jilles Tjoelker 1328da8618 Speed up /unresv. Rehash bans now only happens if explicitly requested. 2007-11-30 23:35:48 +01:00
Jilles Tjoelker 60c96e64c1 Clean up m_xline a bit. 2007-11-30 23:35:14 +01:00
Jilles Tjoelker 5408b484da Speed up /unxline similarly. 2007-11-30 14:10:24 +01:00
Jilles Tjoelker 6f3a09ff67 Speed up /undline similarly
- Change find_exact_conf_by_address() to work for dlines also.
- Use find_exact_conf_by_address() to find the dline and
  abort immediately if there is no such dline.
- When removing a permanent dline, remove the dline from
  the data structures instead of rehashing bans.
- Convert alternative ways to write the same dline to the
  one in the found dline. (This was changed in unkline too.)
2007-11-30 01:14:12 +01:00
Jilles Tjoelker 40a1d44606 Speed up /unkline
- Use find_exact_conf_by_address() to find the kline and
  abort immediately if there is no such kline.
- When removing a permanent kline, remove the kline from
  the data structures instead of rehashing bans.
2007-11-29 00:12:51 +01:00
Jilles Tjoelker 60e127c188 Correct already X-Lined notice. 2007-11-25 18:19:26 +01:00
Jilles Tjoelker 0fdb257090 When checking if a nick resv or xline already exists, match exact not wild.
This is important because masks containing @ or # do not
match themselves.
2007-11-25 18:18:07 +01:00
Jilles Tjoelker c0bc9fe39a Show opers a list of recently (<24hrs) split servers in /map. 2007-11-23 23:38:54 +01:00
Jilles Tjoelker 994544c294 Merge links_cache into scache and rework scache.
This changes flattened /links output to disclose less
routing information and slightly increases memory "leak"
from server names that do not come back anymore.
2007-11-23 22:11:25 +01:00
Jilles Tjoelker 66c8fdd207 Remove Server.up and Server.upid.
Server.up is obsolete, like User.server.
Server.upid has never been really useful.
2007-11-22 00:38:13 +01:00
William Pitcock c88cdb0095 Get rid of User.server. 2007-11-20 06:36:55 -06:00
jilles 732a8c5344 [svn] Make /knock send to all channel members on +g (anyone may invite) channels. 2007-09-09 12:19:23 -07:00
nenolod cda8e9b8db [svn] - TS6 is always enabled now.
There is no reason for it to not be enabled on a proper charybdis network.
2007-08-08 23:47:26 -07:00
jilles f7eac53df5 [svn] In a two-argument whois, RPL_ENDOFWHOIS should show second arg.
This already works correctly for successful/notfound case.
2007-07-14 14:50:21 -07:00
jilles 66b4a7ae7a [svn] Call add_to_hostname_hash() with correct (orig) hostname. 2007-06-22 14:59:09 -07:00
jilles f4a80ce6a1 [svn] - allow JOIN 0 from remotes
- allow JOIN 0 from locals, but only if it is exactly one
  zero and is the first channel
2007-05-27 06:07:27 -07:00
nenolod a3986d9482 [svn] - disallow JOIN 0 2007-05-26 22:44:35 -07:00
jilles 88a2a1484b [svn] Prevent too wide klines with CIDR masks. 2007-05-19 16:36:51 -07:00
jilles 598ebb42c7 [svn] Exempt klines with a fixed user@ (no */?) from min_nonwildcard checks. 2007-05-19 15:21:10 -07:00
jilles 0482ebf7b6 [svn] Target left IRC (more friendly error message if a UID
cannot be found) for /invite.
2007-05-06 07:46:45 -07:00
jilles 1117fbd3d5 [svn] Merge old trunk r2767:
Copy channel name from command on lowerTS JOIN/SJOIN,
this makes the capitalization of the channel name
timestamped like modes are.
2007-04-28 16:47:25 -07:00
jilles 822a4a2537 [svn] chghost: refuse spoofs which are empty or start with a colon
(would break the protocol)
2007-04-25 08:21:34 -07:00
jilles 3f7e06428a [svn] SAVE: make the nickTS of the UID nick equal to 100, so it
is always in sync on the network.
2007-04-22 07:02:54 -07:00
jilles 95ffa68595 [svn] Force nickTS to increase when a local user changes their nick. 2007-04-22 04:22:10 -07:00
jilles 81795a910c [svn] Remove #define UFLAGS. We haven't allowed this
undocumented extension to the IRC protocol for
years (allowing an initial umode in USER).
2007-04-15 13:18:54 -07:00
jilles 452f4d4bcc [svn] Use TS6 prefix for server-server JOIN 0. 2007-04-14 14:53:28 -07:00