Jilles Tjoelker
bd710c8837
Add ERR_DISABLED (517) from ircu.
2008-03-30 19:56:20 +02:00
Jilles Tjoelker
85550587fb
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
8682f1cb32
Fix type mismatch with format string.
...
Could have broken on some 64-bit machines.
2008-03-29 21:56:15 +01:00
Jilles Tjoelker
48a266e5da
Cleanups to 005 code, from ratbox (androsyn).
2008-03-18 23:28:03 +01:00
Jilles Tjoelker
7478545cb2
Hide cmode +r from 005 if there is no service{} block.
2008-03-11 23:56:23 +01:00
Jilles Tjoelker
3b005693bd
Clearer error messages for failed joins.
2008-03-11 19:48:58 +01:00
Jilles Tjoelker
43f8445df3
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
aed5ce90a5
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
5aa453a47f
Default connect::flags topicburst to true.
...
Use ~topicburst if you must disable it.
2008-02-02 17:15:34 +01:00
Jilles Tjoelker
309e4fd03f
Update /stats z for removal of struct User from whowas.
...
This was done in hybrid 5 or earlier...
2008-01-22 22:07:11 +01:00
Jilles Tjoelker
8d0d947de8
send_linebuf_remote(): Remove broken and useless ghost check that can never happen.
...
Reasoning why it never does anything:
- the to = to->from line makes sure that MyConnect(to)
- then IsPerson(to) && (to == from->from) implies that to == from
- so MyClient(to)
- which cannot happen because it also wants that !MyClient(from)
Originally, the to = to->from line was below, and it did a
fake direction check, killing a client if servers could be
confused about it. The kill cannot do any good with TS6.
The fake direction check is and was performed by the
callers of send_linebuf_remote().
2008-01-17 01:06:32 +01:00
Jilles Tjoelker
19807b5b97
Fix some split servers not appearing in oper /map.
...
Needed another scache_split() call, in qs_server().
2008-01-16 19:53:42 +01:00
Jilles Tjoelker
c7874951aa
kline_exempt does not exempt from D:lines, so don't tell user it does.
2008-01-06 17:41:59 +01:00
Jilles Tjoelker
5ca543e7c5
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
e4b9c8e115
Add two missing colons for sendto_one_notice().
2008-01-06 00:12:51 +01:00
Jilles Tjoelker
19c13ce523
flag_table -> oper_table (more descriptive name)
2008-01-05 22:51:09 +01:00
Jilles Tjoelker
b4838ccdf5
Show full flag name, not letter, when refusing to set umode +s +n or +a.
2008-01-05 01:37:03 +01:00
Jilles Tjoelker
962747349b
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
05ee179e43
Update some copyright years.
2008-01-02 22:34:29 +01:00
Jilles Tjoelker
137d856d65
Only accept 127.0.0.x as a dnsbl listing.
2008-01-02 22:32:09 +01:00
Jilles Tjoelker
85e132a46f
Update main copyright year.
2008-01-02 00:09:50 +01:00
Jilles Tjoelker
c8de4f0037
Include time the k/d line was set in the reason when reading ban confs.
...
This correspond to what happens when a kline or dline is set.
2008-01-02 00:06:08 +01:00
Jilles Tjoelker
cdd5b26189
Remove idle time checking (auto disconnecting users idle too long).
2008-01-01 23:04:34 +01:00
Jilles Tjoelker
c4f13a6499
STATS I and TESTMASK: Show some more auth{} flags.
...
flood_exempt (|), dnsbl_exempt ($), gline_exempt (_)
All these are only shown to opers.
2008-01-01 21:54:27 +01:00
Jilles Tjoelker
f56fdec2a0
Fix a crash when connecting to a server.
2008-01-01 18:47:10 +01:00
Jilles Tjoelker
a63a1eab74
STATS I: Show spoofed auth{} blocks and ^<> flags to remote opers also.
2008-01-01 18:25:04 +01:00
Jilles Tjoelker
997613d2f3
Fix a crash after a local client exits.
2008-01-01 18:15:56 +01:00
Jilles Tjoelker
d61de0adff
Remove various obsolete ConfItem statuses (types) and flags.
2008-01-01 16:06:59 +01:00
Jilles Tjoelker
7a8dcc086d
Remove long obsolete comment.
2007-12-28 23:23:15 +01:00
William Pitcock
c5c2f506c1
Replace int fd; in local client object with an fde object.
2007-12-28 15:06:33 -06:00
Jilles Tjoelker
35cf4c7998
Use connect_timeout for handshakes; add snote and log when they time out.
2007-12-28 16:38:39 +01:00
Jilles Tjoelker
e2a980439e
Remove code for unregistered clients from check_pings_list()
...
because it is only called for lists of registered clients.
2007-12-28 16:17:39 +01:00
Jilles Tjoelker
06b697a268
Make remote numerics to channels work.
...
Note that +D clients do not get these. This is consistent
with how ircu treats remote numerics and with how we treat
server notices from other servers, but not with how locally
generated notices and numerics are sent also to +D clients.
2007-12-26 22:46:43 +01:00
Jilles Tjoelker
7d1f9131fb
Consolidate duplicate channel mode flags tables to one.
2007-12-25 01:00:20 +01:00
Jilles Tjoelker
0b580267af
Remove "<server> had been connected for <time>" snote.
...
For registered servers, it is entirely redundant with the
"<server> was connected for <time>. <traffic>" snote, and
only sent for some ways of closing; for handshakes, you
already know that it had not been connected for long.
2007-12-24 23:29:01 +01:00
Jilles Tjoelker
f2c1b06bcf
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
a6f4368b96
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
095328a742
Move various flags from flags2 to flags.
2007-12-24 20:58:55 +01:00
Jilles Tjoelker
86142e83d7
Remove unused CONF_FLAGS_DO_IDENTD and FLAGS_NEEDID.
2007-12-24 20:32:41 +01:00
Jilles Tjoelker
29c55c49f2
Remove unused flag FLAGS_CHKACCESS.
2007-12-24 20:26:39 +01:00
Jilles Tjoelker
c3fed903fd
Branch merge.
2007-12-24 18:24:49 +01:00
Jilles Tjoelker
420b2c9a10
Remove dot_in_ip6_addr config option.
2007-12-24 18:24:23 +01:00
William Pitcock
c1e5bc4117
comm_locate_fd(), not comm_lookup_fd().
2007-12-22 16:30:06 -06:00
William Pitcock
5cd74a3b6c
linebuf_flush(): use fde_t's.
2007-12-22 16:28:05 -06:00
William Pitcock
5893220fdc
wtf mercurial, tbh.
2007-12-22 16:08:34 -06:00
William Pitcock
64513f3675
Automated merge with ssh://hg.atheme.org//hg/charybdis
2007-12-22 14:05:45 -06:00
William Pitcock
2cac65a378
Add some GNUTLS helper code.
2007-12-22 14:05:03 -06:00
Jilles Tjoelker
95d36ef54b
It is ok to send 402 to local clients for any hunt_server operation.
2007-12-22 00:20:54 +01:00
Jilles Tjoelker
1ef5b43053
Require resv oper privilege to set cmode +L or +P.
2007-12-18 00:24:05 +01:00
Jilles Tjoelker
1ebe6ffc92
Add resv oper priv, enabled by default for compatibility.
2007-12-17 02:20:14 +01:00
Jilles Tjoelker
c422d2a067
Silence harmless compiler warning.
2007-12-13 00:20:06 +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
351078d072
Use 127.0.0.1 as nameserver if none can be found in /etc/resolv.conf.
...
This agrees with bind's behaviour.
2007-12-11 18:37:14 +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
Jilles Tjoelker
176489286d
Mention vhost in serverlog connect log message.
2007-12-06 22:45:26 +01:00
William Pitcock
43de0f45a1
Make sure the nd_dict is always created.
2007-12-03 19:37:33 -06: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
3e91d7006f
I was nuts when I wrote that comment, lets kill it off.
2007-12-02 15:50:54 -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
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
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
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
c614f4a9c9
[svn] Make EXTBAN 005 token like unreal's (, instead of :).
2007-09-09 11:59:08 -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
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
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
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
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
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
b808adf9d3
[svn] - fold conf_connect_allowed() into accept_connection()
...
- extend add_connection() so that exempt{}s apply to max unregistered
connections per ip
from ratbox
2007-05-18 13:31:33 -07:00
jilles
8017ad2d27
[svn] Remove s_assert in del_unknown_ip() supposedly if the ip
...
cannot be found, it is not feasible to avoid that case
entirely with m_webirc.c.
2007-05-18 12:14:18 -07:00
jilles
54015b5fea
[svn] Apply ratbox flood fix.
2007-05-14 15:21:16 -07:00
jilles
1d3e262e40
[svn] Remove emptyline craq because it leaks memory on /rehash motd etc.
...
from ratbox 2.2 (anfl/Androsyn)
2007-05-02 12:56:40 -07:00
jilles
f1e35c19a7
[svn] Merge old trunk r2065,r2067:
...
channel_modes(): get rid of the trailing space
also make the *pbuf check work like it should
(don't call IsMember another time if we already
gave one parameter)
simplify a bit more, update comments
2007-04-26 16:01:16 -07:00
jilles
e2b44358a2
[svn] Move new_local_user hook, so it is possible to call
...
exit_client() from it, refusing the connection.
2007-04-15 09:54:50 -07:00
jilles
ec3fbdecd2
[svn] Only free PreClient struct when the rest of the Client
...
is freed, not immediately upon exit_client(). Doing this
would cause problems with sasl's new_local_user hook
vs hooks that exit the client there.
2007-04-15 09:49:56 -07:00
nenolod
725a6c5dc9
[svn] - 2.2 operline
2007-04-06 14:25:37 -07:00
jilles
afc20e91f7
[svn] Change code that checks maxclients limit: allow exactly
...
the configured amount of non-exceed_limit clients.
Code that appeared to limit exceed_limit clients too
but less heavily removed (it was not effective because
the parentheses were wrong).
2007-04-04 17:24:47 -07:00
jilles
23836ead45
[svn] By default, leave MAX_BUFFER fds free for log files,
...
server connections, ident lookups, exceed_limit clients,
etc. Mention this in example.conf and reference.conf.
2007-04-04 17:12:55 -07:00
jilles
1aa8ffcbfd
[svn] Make the code that raises fd rlimit to hard limit work.
2007-04-03 15:25:11 -07:00
nenolod
e8a2d50da8
[svn] - some more transit to sendto_one_numeric().
2007-04-03 03:15:39 -07:00