Commit Graph

267 Commits

Author SHA1 Message Date
Valery Yatsko 6e9b4415cc ok, trying to work on blockheap's stuff 2008-04-02 04:28:05 +04:00
Valery Yatsko acc2595cc3 fixing cache.c compilation - code stolen from ratbox3, with irc dictionary addition 2008-04-02 04:15:58 +04:00
Valery Yatsko 9f6bbe3cf9 CurrentTime -> rb_currenttime(); 2008-04-02 03:53:20 +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 06c0995c9b ircd_defs.h declaration in stdinc.h - needed for some reasons. 2008-04-02 03:31:31 +04:00
Valery Yatsko 7118180f5a Returned back declaration I've mistakenly removed. 2008-04-02 03:28:15 +04:00
Valery Yatsko 62d289465f DubString -> rb_strdup 2008-04-02 03:26:34 +04:00
Valery Yatsko ece36b7b5d away stuff from ratbox3 2008-04-02 03:03:15 +04:00
Valery Yatsko f0a889b602 monitor.{c,h} stuff for libratbox3. 2008-04-02 02:55:34 +04:00
Valery Yatsko cc200171d7 libcharybdis includes gone. 2008-04-02 02:39:19 +04:00
Jilles Tjoelker 780087dc8e Make send.c compile, except for ziplinks. 2008-04-01 23:51:34 +02:00
William Pitcock ccfe0e9712 Make m_set compile. 2008-04-01 16:25:22 -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
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
Jilles Tjoelker 8e0633f56f Move PRIVS command from extensions to modules (shows effective oper privs). 2008-03-31 00:39:14 +02:00
Jilles Tjoelker bf7f01038e Add ERR_DISABLED (517) from ircu. 2008-03-30 19:56:20 +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 58067bff67 Cleanups to 005 code, from ratbox (androsyn). 2008-03-18 23:28:03 +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 cb57dfe520 Generate include/serno.h from the hg revision data.
The code is inspired by the code in atheme-services, but
* it uses 'hg parents' instead of 'hg tip' so it will
  also work if the working directory is not updated
  to the latest version in the local repository
* the format is different (date-shorthash instead of
  revnum:shorthash)
* some sort of serno.h is always generated, be it
  "unknown" only
2008-03-12 18:44:47 +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 7506208c5c Remove FLAGS2_NOLIMIT (IsExemptLimits/SetExemptLimits).
This only has an effect at connection time, and the
ConfItem flag suffices for that.
2008-01-06 00:16:57 +01:00
Jilles Tjoelker f726dd0928 Use a more expected value for SHARED_TRESV. 2008-01-05 14:58:13 +01:00
Jilles Tjoelker c41a85dfb6 Send a rate-limited server notice if a blacklist gives a non-127.0.0.x reply. 2008-01-05 00:38:23 +01:00
Jilles Tjoelker acba5bbe80 config.h: remove some obsolete options, move MAX_BUFFER to tunable section 2008-01-04 18:42:59 +01:00
Jilles Tjoelker 493a1c6f02 Overwrite config.h.dist with config.h.
config.h.dist serves no purpose other than a backup copy
for local changes to config.h
2008-01-04 18:33:36 +01:00
Jilles Tjoelker e54995b150 Remove idle time checking (auto disconnecting users idle too long). 2008-01-01 23:04:34 +01:00
Jilles Tjoelker 4d23dfbcb5 Remove various obsolete ConfItem statuses (types) and flags. 2008-01-01 16:06:59 +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 2a719c44c0 Consolidate duplicate channel mode flags tables to one. 2007-12-25 01:00:20 +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 333d73ff28 Rearrange flags2 to make room for 3 more oper privileges. 2007-12-24 21:16:19 +01:00
Jilles Tjoelker 2d2c402d0b Move various flags from flags2 to flags. 2007-12-24 20:58:55 +01:00
Jilles Tjoelker 91e46e62e5 Remove various unused macros. 2007-12-24 20:40:12 +01:00
Jilles Tjoelker 6f068dbd15 Remove unused CONF_FLAGS_DO_IDENTD and FLAGS_NEEDID. 2007-12-24 20:32:41 +01:00
Jilles Tjoelker 5fcb6b5d88 Remove unused flag FLAGS_CHKACCESS. 2007-12-24 20:26:39 +01:00
Jilles Tjoelker 420b2c9a10 Remove dot_in_ip6_addr config option. 2007-12-24 18:24:23 +01:00
Jilles Tjoelker 1ebe6ffc92 Add resv oper priv, enabled by default for compatibility. 2007-12-17 02:20:14 +01:00
Jilles Tjoelker d7f753cd3a Do not copy string passed to add_top_conf()/add_conf_item().
If the caller can keep a function pointer valid, they can
certainly keep a string valid.
This also fixes an error with HAVE_STRDUP undefined.
2007-12-13 00:14:02 +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
Jilles Tjoelker 1cda7a9cb2 Change meaning of "bits" in FNV hash functions to bitlen instead of 32-bitlen.
Do reduction like recommended by
http://www.isthe.com/chongo/tech/comp/fnv/index.html#xor-fold
2007-12-08 19:44:18 +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
William Pitcock 90187f2112 It compiles, ship it. 2007-12-02 09:41:13 -06:00
William Pitcock 8ac7552983 commands and aliases go from horrible hashtable code to dictionary... try 1 2007-12-02 09:34:45 -06:00
William Pitcock c98390004f Automated merge with ssh://hg.atheme.org//hg/charybdis 2007-12-02 09:06:50 -06:00
William Pitcock d6bda36db1 Add irc_dictionary code. 2007-12-02 09:06:25 -06:00
Jilles Tjoelker 4e0f14a0e8 Add find_exact_conf_by_address() to find klines etc by exact mask. 2007-11-28 23:59:49 +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
nenolod 0a61720ad4 [svn] - we do not need to call find_server() in the function for registering local users 2007-11-20 03:16:43 -08:00
nenolod cc32202d96 [svn] Explain invalid username rejections to users when they are rejected. 2007-11-20 03:08:23 -08:00
jilles 407b1826e6 [svn] Update description of oper privileges a bit. 2007-11-17 13:55:48 -08:00
jilles 832942858c [svn] Fix desyncs with very long extbans. Bans can now be upto 195 chars long. 2007-11-07 15:45:14 -08:00
jilles 5b87d08a05 [svn] allocate_channel(): no need to truncate name, its only caller already does it
furthermore, truncating here causes an inconsistent channel name
2007-11-07 13:45:14 -08:00
jilles fea1ad5224 [svn] Fix a memory leak. 2007-10-27 14:56:53 -07: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
jilles c614f4a9c9 [svn] Make EXTBAN 005 token like unreal's (, instead of :). 2007-09-09 11:59:08 -07:00
jilles d64fec57a1 [svn] Remove a sentence which gives the impression that TS6 is optional. 2007-09-06 13:30:22 -07:00
jilles 0c30404320 [svn] Clarify format of IPv6 addresses in SGML documentation. 2007-08-29 15:18:31 -07:00
jilles b0dc8e031c [svn] Clarify format of IPv6 addresses in auth{} and connect{}. 2007-08-29 15:04:45 -07:00
jilles f0e3fa7629 [svn] Add more information about invitations and invexes. 2007-08-23 14:02:31 -07:00
jilles 518bd9012d [svn] Add what /invite actually does (bypass +ijlr). 2007-08-23 12:00:10 -07:00
jilles 29fa754919 [svn] callerid (+g) documentation:
- Mention 005 (isupport) token with possibility of different mode letter.
- Explicitly clarify that /accept can be used while -g, and setting -g
  does not clear the accept list.
- Mention that some users may be able to bypass +g.
- Mention that /accept may allow more than just going through +g.
- Update to 716/717/718 numerics instead of notices.
- Clarify that the one-minute period applies to messages from all users,
  not just one user.
- Add a numerics section with more exact syntax.
2007-08-18 07:45:10 -07:00
jilles 8e8f4ffc19 [svn] Send TS6 protocol for the actual work of override modules.
Wallops remain TS5-style for now.
2007-08-10 15:31:14 -07:00
nenolod abe616bb76 [svn] - update IDEAS as TS6 only is partially done 2007-08-08 23:50:13 -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
nenolod fffecc26ed [svn] - better text for RPL_LOAD2HI explaining in a better way what is going on 2007-08-08 23:40:52 -07:00
jilles 8f0a1bf3ac [svn] Also rerun autoheader, for solaris ports changes. 2007-08-01 13:52:54 -07:00
jilles 7dfa2d1d42 [svn] Rerun autoconf for version bump, at last. 2007-08-01 13:50:54 -07:00
jilles 2f15f871ff [svn] Make highest connection counts a bit more consistent. 2007-08-01 13:18:12 -07:00
jilles 4f3f411b34 [svn] Fix wrong line numbers in ircd.conf parser (some comments).
from ratbox 2.2 (androsyn).
2007-07-30 10:26:00 -07:00
jilles d62ae16cb0 [svn] Change EmptyString so gcc 4.2 doesn't complain.
from ratbox (androsyn), slightly changed
2007-07-26 07:21:57 -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 fd488ac17a [svn] Use mask_match() to check bans from local clients for
redundancy. This fixes the problem that bans like *!?@*
prevent any ban starting with *!*@ being set.
2007-07-14 06:34:50 -07:00
jilles df251055ca [svn] Add mask_match(), like ircu mmatch().
This compares two masks and returns whether the "new" is
more specific than or equal to the "old". The difference
with match() is that a '?' in "old" does not match a '*' in
"new".
2007-07-14 06:32:18 -07:00
jilles 94d53e53a4 [svn] add_id() for local client: do not collapse() the ban mask.
The code calling this already collapses the mask, and if
not, doing it here would cause a desync.
2007-07-14 05:20:48 -07:00
nenolod efb1d08613 [svn] - fix dereference problems with not widely used polling engines 2007-07-07 01:08:23 -07:00
nenolod b076458c6f [svn] - forgot to do something 2007-07-06 00:56:14 -07:00
nenolod 514235a762 [svn] - fix a possible problem with ipv6 2007-07-06 00:54:54 -07:00
nenolod 762cc38cf9 [svn] - new ip cloaking module 2007-07-06 00:48:28 -07:00
jilles 8aba962d43 [svn] monitor: send the same message buffer to all users
monitoring a certain nick; the target field of the
numeric becomes *, much like server notices
2007-06-30 15:15:35 -07:00
jilles 66b4a7ae7a [svn] Call add_to_hostname_hash() with correct (orig) hostname. 2007-06-22 14:59:09 -07:00
jilles 88cb7f9965 [svn] Version bump on trunk to 2.3. 2007-06-10 09:14:03 -07:00
nenolod f80a18239d [svn] - "please report this to the ratbox developers" -> "please report this to the charybdis developers". not sure how we overlooked this for so long. 2007-06-06 09:25:21 -07:00
nenolod 4a8fab1f7b [svn] Add IRC_DEPRECATED macro for marking functions and data structures
as deprecated on compilers that support it.
2007-06-06 09:20:40 -07:00
nenolod 7fd77cb085 [svn] - update IDEAS with link failover 2007-06-06 08:46:12 -07:00
jilles 7d08aa8911 [svn] xline/resv wildcard checking:
- count escaped (\) characters as one nonwild
- accept strings without wilds no matter how short they are
2007-06-04 09:04:49 -07:00
jilles 5832fa369b [svn] Tweak some comments in sno_whois extension. 2007-05-30 03:22:25 -07:00
jilles f7b6029312 [svn] Tweak NEWS a little. 2007-05-30 03:22:01 -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 a6ac2e9122 [svn] - add some IDEAS, including SASL based opering, internally reworking channel access (custom access
levels?), hideops, namespace cleanups, etc
2007-05-26 23:33:26 -07:00
nenolod a3986d9482 [svn] - disallow JOIN 0 2007-05-26 22:44:35 -07:00