Commit graph

1139 commits

Author SHA1 Message Date
Jilles Tjoelker
3f6e258775 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
014e2aa049 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
7478545cb2 Hide cmode +r from 005 if there is no service{} block. 2008-03-11 23:56:23 +01:00
Jilles Tjoelker
428b796aa4 sgml docs: mention that connect::topicburst is now enabled by default 2008-03-11 21:58:13 +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
Jilles Tjoelker
a65f9880f6 Update copyright year in sgml documentation. 2008-02-29 20:18:09 +01:00
Jilles Tjoelker
878f1c5148 Add more details to stats in sgml docs. 2008-02-29 17:10:20 +01:00
Jilles Tjoelker
93ecb714db Update docs for change to masked stats k/K. 2008-02-29 16:27:55 +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
81daf9555b 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
8c39f0bf04 Fix a UID leak. 2008-02-04 23:56:13 +01: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
8170176a78 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
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
b90022da01 PRIVS: Show name of operator block.
Change the "O" to "operator:<name>".
2008-01-06 15:29:54 +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
c728f9934c Add PRIVS extension, a command that shows oper and some auth{} privileges. 2008-01-05 23:59:43 +01:00
Jilles Tjoelker
19c13ce523 flag_table -> oper_table (more descriptive name) 2008-01-05 22:51:09 +01:00
Jilles Tjoelker
0a621c4b5b 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
de82e84fae Use a more expected value for SHARED_TRESV. 2008-01-05 14:58:13 +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
86737148fa sgml docs: kline_exempt does not exempt from D:lines in any way 2008-01-05 00:52:02 +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
1115a7a586 Various updates to the INSTALL document. 2008-01-04 18:50:46 +01:00
Jilles Tjoelker
fddc5ee420 config.h: remove some obsolete options, move MAX_BUFFER to tunable section 2008-01-04 18:42:59 +01:00
Jilles Tjoelker
be462ae76a 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
a260ff7df8 Charybdis does not have --enable-services, it is always enabled. 2008-01-04 17:29:15 +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
c14b0e4030 Document special characters in stats i/testmask in sgml. 2008-01-01 22:40:22 +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
922aa82644 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
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
7f27e3163d 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