Jilles Tjoelker
27f616ddf5
Track who set a dline/kline/xline/resv as in ratbox3.
...
Like in ratbox3, there is no way to query this information
(other than bandb's tables, but they worked before this
commit).
2010-03-01 01:23:22 +01:00
Jilles Tjoelker
3d242eb30f
Merge bugfix that also applied to 3.2.x.
2010-02-28 16:45:55 +01:00
Jilles Tjoelker
4db0e2bdf2
Fix memory leak on /rehash bans.
...
We do not have the 'oper' field in klines yet.
2010-02-28 16:45:25 +01:00
Jilles Tjoelker
a12ad04472
Generate the "Temporary K-line %d min" part from aconf->hold - aconf->created.
2010-02-28 16:27:06 +01:00
Jilles Tjoelker
b52c294986
Store the creation time of klines and dlines as a time_t instead of as text.
...
The value 0 indicates the creation time is unknown (currently the case
for bandb).
Also store a creation time for xlines and resvs, but do not use it yet.
2010-02-28 00:46:56 +01:00
Jilles Tjoelker
58c728aed8
Add a missing comment for new /challenge numerics.
2010-02-27 23:56:56 +01:00
Alexander F?r?y
51027be825
Use RPL_QUIETLIST and RPL_ENDOFQUIETLIST instead of RPL_BANLIST and
...
RPL_ENDOFBANLIST for channel mode +q.
2010-02-27 01:08:41 +01:00
Jilles Tjoelker
1815320d3b
Remove more old kline.conf stuff.
...
Make sure to recompile modules, stuff has been removed
close to the start of ConfigFileEntry.
2010-02-22 19:31:05 +01:00
Jilles Tjoelker
22342cd11f
Remove code to write bans to csv files.
2010-02-22 19:09:46 +01:00
Jilles Tjoelker
981586df2b
spambot checks: Fix excessive expiry in some cases.
2010-02-21 01:29:41 +01:00
William Pitcock
dbcd150bce
Do not try to free the alias dict if it does not exist.
2010-02-18 18:38:26 -06:00
William Pitcock
cb7f3af4d3
Change license version in version.c.SH (GPLv1 -> GPLv2) so that it agrees with the other documentation.
2010-02-17 23:05:47 -06:00
William Pitcock
9600850e8f
s/o:lines/operator blocks/
2010-02-17 23:01:58 -06:00
William Pitcock
76169ea734
Clarify ERR_NOOPERHOST and convert it to use sendto_one_numeric().
2010-02-17 06:51:41 -06:00
William Pitcock
ff31db8473
Add support for client certificate fingerprints in o:lines.
2010-02-17 06:41:41 -06:00
Jilles Tjoelker
4f2685f3e1
Move target change code to src/tgchange.c,
...
so we can use it for /invite as well.
2010-02-15 21:58:34 +01:00
Jilles Tjoelker
179becdf5f
target change: Overwrite the least recently used target with a new one.
2010-02-15 00:31:17 +01:00
JD Horelick
97deedc42f
English fix to fix the fix i made about 80 minutes ago.
...
I suck at a/an cometimes. Also, fix.
2010-02-08 18:04:54 -05:00
JD Horelick
bc4fccbc44
One or 2 English language cleanups. Less than I thought there were.
2010-02-08 16:28:08 -05:00
Jilles Tjoelker
8eda114a78
Pass certfp to other servers and show it in whois. Do not show it on connect.
...
The server protocol for this is
:<uid> ENCAP * CERTFP :<40 hex chars>
both in new user introductions and in burst.
As in oftc-hybrid, only the user themselves and opers can see the certfp.
Displaying the certfp on connect seems unnecessary to me,
the user can whois themselves if needed.
2010-02-06 00:18:27 +01:00
Jilles Tjoelker
17e4b48b55
Apply ratbox3 workaround for too permissive inet_pton6():
...
Any kline (or various other things) containing * or ? is
a mask kline and not an IP kline. Ideally, rb_inet_pton_sock()
would return failure for those, but in practice this is not
always the case for IPv6.
Such a kline that is erroneously treated as an IP line
likely matches way fewer IPs than expected.
2010-02-03 00:44:51 +01:00
William Pitcock
11dff8a423
Clarify CertFP message.
2010-01-31 17:35:15 -06:00
Jilles Tjoelker
7247337afa
Add certfp support to libratbox and ssld.
...
This lets a user connect with a client certificate, and
passes the certificate's fingerprint to ircd, which
currently just notices it to the user.
A new ssld->ircd message 'F' is used to pass on the
fingerprint.
This is only for OpenSSL for now, not GNUTLS.
2010-01-31 19:04:20 +01:00
William Pitcock
47f9d6002a
Automated merge with ssh://hg.atheme.org//hg/charybdis
2010-01-30 19:21:28 -06:00
William Pitcock
7d778d510a
modreload: Causing an entire 50,000 user network to crash due to user-error is a bad idea, don't let it happen again by not allowing paths in /modreload.
2010-01-30 19:21:17 -06:00
Jilles Tjoelker
5f2df25109
Slightly tighten auth{} duplicate check:
...
If the existing auth{} block has no auth_user, it will
trump any auth{} block for the same u@h.
2010-01-31 01:40:43 +01:00
Jilles Tjoelker
3d1f32c07a
Take auth_user into account when detecting redundant/duplicate auth{}.
...
from ircd-seven (spb)
2010-01-31 01:36:37 +01:00
Jilles Tjoelker
90afc118fd
No need to be paranoid about clearing auth_user.
...
It is a username, not a password.
2010-01-31 01:30:25 +01:00
Jilles Tjoelker
fcb057992c
Fix memory leak with auth_user.
...
from ircd-seven (spb)
2010-01-31 01:29:08 +01:00
Jilles Tjoelker
8f10356217
Remove remnants of <foo>_t typedefs.
2010-01-30 15:57:10 +01:00
Jilles Tjoelker
cd5d9abf63
Do not read in help files starting with a dot (including dot and dot-dot).
2010-01-22 02:02:45 +01:00
Stephen Bennett
d06f3da955
Don't cache files that are empty or not files. Avoids crashing on the likes of 'HELP .'
2010-01-21 16:27:34 +00:00
William Pitcock
2e918bf515
Merge +C (no CTCP to channels) from ircd-seven.
2010-01-19 02:11:04 -06:00
William Pitcock
fdb90316e1
Automated merge with ssh://hg.atheme.org//hg/charybdis
2010-01-19 01:47:27 -06:00
William Pitcock
bde6442c47
supported: Add CLIENTVER=3.0 to indicate presence of 3.0 core capabilities (such as CAP, extended WHO, etc) as requested by LifeIsPain.
2010-01-19 01:47:21 -06:00
Jilles Tjoelker
70ea02ebd6
Complete the move of xlines and resvs from aconf->name to aconf->host.
2010-01-08 18:46:29 +01:00
William Pitcock
23959371d0
Fix up more things with bandb.
2010-01-07 18:14:15 -06:00
William Pitcock
80c9ac516e
Load in new bans from bandb on startup.
2010-01-07 18:06:15 -06:00
William Pitcock
6eebc37378
Start bandb on ircd initialization.
2010-01-07 17:22:44 -06:00
William Pitcock
83595e6016
Add bandb IRCd APIs.
2010-01-07 17:10:16 -06:00
Jilles Tjoelker
22df9f8989
Update some copyright years.
2010-01-01 22:46:34 +01:00
Jilles Tjoelker
cef7a7bc4e
Remove FLAGS_SENDQEX, fix sendq exceeded snotes for servers.
...
from ircd-ratbox
2009-12-21 16:58:25 +01:00
Stephen Bennett
6657de63ac
Merge
2009-12-08 19:23:32 +00:00
Stephen Bennett
c127b45b83
Revert all presence-related changes
2009-12-08 19:22:55 +00:00
Jilles Tjoelker
456e5b3d64
Fix crashes when there are no alias blocks in the conf.
2009-12-05 20:48:02 +01:00
William Pitcock
ae62bed786
Automated merge with ssh://hg.atheme.org//hg/charybdis
2009-10-24 21:07:53 -05:00
William Pitcock
04708f0e5b
If you're going to censor my jokes, at least do it right.
2009-10-24 21:07:41 -05:00
Jilles Tjoelker
c2c25552ca
Force part local users (not resv_exempt) on channel resv.
...
A notice will be sent to any force parted users that the channel
is temporarily/permanently unavailable on the server.
A new config option channel::resv_forcepart can be used to disable this.
from ircd-ratbox (dubkat)
2009-09-19 21:24:35 +02:00
William Pitcock
5cca545c3c
Display o:line "nickname" in global oper-up messages.
2009-07-13 12:55:35 -05:00
Jilles Tjoelker
beccbe318c
Show yyerror() parse errors on stderr on startup.
...
Noticed by: spb
2009-06-18 00:37:19 +02:00
Jilles Tjoelker
7919c03041
Add new constants for presence key/value lengths
...
instead of overloading NICKLEN/TOPICLEN.
2009-06-03 23:38:07 +02:00
Jilles Tjoelker
383eac2e64
Do not send two 792 numerics when changing a metadata from one non-empty value to another.
2009-06-03 20:44:37 +02:00
William Pitcock
2914055be3
presence: send..._with_capability...(): don't send if the client does not have the capab but isn't on a channel
2009-06-02 02:48:22 -05:00
William Pitcock
9def763407
presence: delete_metadata(): Free from the right heap.
2009-06-02 02:46:37 -05:00
William Pitcock
972e31192f
presence: Add _butone() variant of sendto_common_channels_local_with_capability().
2009-06-02 02:38:38 -05:00
William Pitcock
48c5e056ca
presence: Broadcast presence changes to peer clients with CLICAP_PRESENCE.
2009-06-02 02:36:18 -05:00
William Pitcock
695cc4bc0c
presence: Declare RPL_METADATACHG.
2009-06-02 02:32:07 -05:00
William Pitcock
62928328bf
presence: Add sendto_common_channels_local_with_capability(), used for broadcasting presence updates.
2009-06-02 02:28:02 -05:00
William Pitcock
727bca6269
presence: Declare RPL_WHOISMETADATA.
2009-06-02 02:19:37 -05:00
William Pitcock
28d4abde2b
presence: Remove no longer used away_heap.
2009-06-02 02:08:45 -05:00
William Pitcock
884b5d41c1
presence: Remove user.away, replaced by a metadata entry.
...
Cache the metadata retrieval value where feasible for minimal performance impact.
2009-06-02 02:03:51 -05:00
William Pitcock
df2688426d
presence: Make set_metadata() erase any old metadata for an entry.
2009-06-02 01:53:05 -05:00
William Pitcock
75ea650c3c
presence: Add get_metadata().
2009-06-02 01:50:40 -05:00
William Pitcock
e581ea8e3d
presence: Add set_metadata() and delete_metadata().
2009-06-02 01:41:44 -05:00
William Pitcock
195d10c293
presence: Declare RPL_METADATASET and RPL_METADATAREM.
2009-06-02 01:32:09 -05:00
William Pitcock
0d3b24f9cf
presence: Create presence metadata tracking structures where appropriate.
2009-05-30 13:30:57 -05:00
Jilles Tjoelker
1bb1f1b0e7
Remove check_banned_lines() code duplication.
...
We can just call check_dlines(), check_klines() and check_xlines().
2009-05-21 23:11:32 +02:00
Jilles Tjoelker
cf09122bf7
Check the return value on rb_pipe.
...
from ircd-ratbox (r26515) (androsyn)
2009-05-13 22:07:57 +02:00
Jilles Tjoelker
c04a500dfa
Remove unused inet_socketpair() code, this is in libratbox now.
2009-05-12 23:56:28 +02:00
Jilles Tjoelker
eda22d87af
More rb_socketpair() return value checks.
...
from ircd-ratbox (r26507) (androsyn)
2009-05-12 23:30:46 +02:00
Jilles Tjoelker
6388eda683
Report errors and close the incoming connection if socketpair fails
...
for ssl connections.
from ircd-ratbox (r26503) (androsyn)
2009-05-12 23:18:41 +02:00
Jilles Tjoelker
97c9dd8a26
Change xlines to store spaces as \s.
...
Spaces in xline.conf files are changed to \s in memory
and recognized on unxline, but are not changed in the
file. New xlines are added to xline.conf files with \s.
xline.conf written by this commit or newer will not work
properly with charybdis older than 1124:131254925f32 (which
introduced \s support in match_esc()).
2009-05-08 00:21:14 +02:00
William Pitcock
5f8d323c59
can_kick hook, based on the ircd-seven one.
2009-04-20 09:20:11 -05:00
Stephen Bennett
179f024d18
/ is a host character and not a nick character, so make pretty_mask treat it as such
2009-04-20 08:42:41 -05:00
Stephen Bennett
9a180ae365
Allow / in spoofed hosts
2009-04-20 08:37:13 -05:00
Jilles Tjoelker
8c23bb2e21
Fix compilation with --enable-assert=soft.
2009-04-08 21:30:58 +02:00
Jilles Tjoelker
8b27cfefe8
Remove some unused variables.
2009-04-08 21:30:34 +02:00
Jilles Tjoelker
c4d2d01419
Apply +z to messages blocked by +b and +q as well.
...
This adds a new server capab EOPMOD which will be used
for an extended topic command also.
2009-03-29 15:48:07 +02:00
Jilles Tjoelker
8347bf2459
No profanity.
2009-03-13 19:36:49 +01:00
William Pitcock
ca6a194d92
Our IRC oper messages are now as enhanced as enhanced interrogation techniques.
2009-03-08 21:06:33 -05:00
Jilles Tjoelker
408024fa63
rehash bans: show mask in k/x line over-ruled notice
...
This was already shown in the over-ruled notices on k/x line add.
2009-03-08 14:31:50 +01:00
Jilles Tjoelker
7340b36bf2
rehash bans: still check k/x lines for users exempt from dlines
2009-03-08 13:30:30 +01:00
Jilles Tjoelker
7eecdd6894
Use ratbox's match_esc(), this allows \s for space.
2009-03-08 02:14:26 +01:00
Jilles Tjoelker
07c2bb757d
Fix close detection with ssl+zip, porting more code from ircd-ratbox.
...
This tells the SSL ssld to report connection closure to ircd
using the new fd.
2009-03-07 03:23:17 +01:00
Jilles Tjoelker
995f300eb1
Allow /rehash throttles to clear throttling.
2009-03-07 01:49:09 +01:00
Jilles Tjoelker
ad13bb7556
Rework remote rehash messages to apply to all server notices during rehash.
...
Previously various notices such as those applying
to modules were not sent to the remote oper.
2009-03-07 01:27:05 +01:00
Jilles Tjoelker
b9620c24ef
Remove unused declaration.
2009-03-03 22:26:45 +01:00
Jilles Tjoelker
6865c0b099
Add channel::only_ascii_channels config option
...
to restrict channel names to printable ascii only.
Like disable_fake_channels this only applies to joins
by local users; unlike disable_fake_channels it applies
to opers as well.
2009-02-22 00:12:21 +01:00
Jilles Tjoelker
54828d589d
Avoid unnecessary const violation.
2009-02-22 00:05:48 +01:00
Jilles Tjoelker
4f7a1feeda
Fix an off by one error with zipstats processing
...
from ircd-ratbox (androsyn)
2009-02-07 23:26:05 +01:00
Jilles Tjoelker
53307da8ca
Disable autoconnect for a server with excessive TS delta.
...
Note that in some cases (different TS delta settings,
heavy lag) it is possible only one of the servers
detects the problem and autoconnect may be left enabled.
The mechanism used for disabling is the same as
/quote set autoconn <server> 0; the A flag in /stats c
disappears and a rehash or /quote set autoconn can put
it back.
2009-02-05 23:43:07 +01:00
Jilles Tjoelker
6e5e2b000a
Warn about auth blocks after a *@* auth and duplicate auth blocks.
2009-01-31 18:42:03 +01:00
Jilles Tjoelker
e0f8d70cb2
Remove comments related to (removed) ability to disable TS6.
2009-01-30 16:50:00 +01:00
Jilles Tjoelker
ad08ad1876
For remote rehashes, send error messages to the requesting oper as well.
2009-01-30 00:11:12 +01:00
Jilles Tjoelker
8b801ad161
Log unknown class in auth errors to ircd.log as well.
2009-01-29 23:53:20 +01:00
Jilles Tjoelker
a33bdd9fb6
Remove obsolete comment.
2009-01-25 21:02:04 +01:00
Jilles Tjoelker
d45f5ea2d9
Only kill unknown prefix UIDs that start with a valid SID
...
(existing and behind the link that sent the prefix).
Also require them to be exactly 9 characters long.
2009-01-22 00:27:27 +01:00
Jilles Tjoelker
cd300c1b82
Simplify hunt_server(), send ERR_NOSUCHSERVER from only one place.
2009-01-21 20:15:07 +01:00
Jilles Tjoelker
161f040940
Update comments for parv[0] removal.
2009-01-18 18:22:43 +01:00
Jilles Tjoelker
106c88737f
If a privset is removed from ircd.conf, wipe its privs.
...
(Privsets continue to exist as long as they are referenced.)
2009-01-18 01:39:41 +01:00
Jilles Tjoelker
3a17735469
Change /stats O to show privset blocks (oper only).
...
To show operator blocks, only /stats o (lowercase) now works.
2009-01-18 01:35:24 +01:00
Jilles Tjoelker
bea2295fed
burst_TS6(): assume users have a UID
2009-01-16 23:11:11 +01:00
Jilles Tjoelker
42d609f65a
[ratbox3 svn r26397] Make it more likely that error messages on ssld connections get through.
...
When ssld reports a connection closure because of
"Remote host closed the connection" and the connection
is any server or a registered client, try a
read_packet() on the client.
This should mainly help LIBRB_USE_IOTYPE=poll which
iterates over the ready file descriptors in numerical
order, processing the ssld control connection before the
closing data connection.
2009-01-15 20:08:46 +03:00
androsyn
0bd120ed48
[svn r26332] get rid of the zip ready stuff
2009-01-01 14:50:21 +03:00
Aaron Sethman
a4165b42bf
re-enable ziplinks + ssl
2008-12-13 23:20:59 +03:00
Jilles Tjoelker
f2601e74cb
Update some copyright years.
2009-01-01 22:48:50 +01:00
Jilles Tjoelker
681ddf64d2
Allow opers to see other users umodes with /mode <nick>.
...
If the other user is local, the snomask is also shown.
2009-01-01 19:24:38 +01:00
Jilles Tjoelker
c98c2c89d6
Remove redundant check.
...
Surely, if source_p == target_p, then target_p->from == source_p->from.
2008-12-28 18:36:41 +01:00
Jilles Tjoelker
a1d2fafd55
Make sure default privset remains available, fixes various crashes
...
with default/invalid privsets and rehashing.
2008-12-27 23:13:48 +01:00
Jilles Tjoelker
31c86ea80f
Put libratbox version on startup in a nicer place.
2008-12-22 21:50:21 +01:00
Valeriy Yatsko
d2b6b9f308
[ratbox3 svn r26284 by androsyn] spew the libratbox version info on -version and at startup
2008-12-22 12:58:33 +03:00
Jilles Tjoelker
83235e9ed5
Show rejectcache/throttle in /testline output.
...
This adds more RPL_TESTLINE numerics with code '!'.
Different from the other results, the I/K line or
RESV will be shown as well.
2008-12-19 19:24:12 +01:00
Jilles Tjoelker
16ef24cf38
Only count throttle entries that cause rejection in /stats t.
2008-12-16 21:10:09 +01:00
Jilles Tjoelker
ae09cb7dbe
Show throttle info in /stats t.
...
from ircd-ratbox (androsyn)
2008-12-16 21:02:04 +01:00
Jilles Tjoelker
422bb0b553
Make rehashing privset{} change online oper privileges.
...
This also fixes memory leak due to multiple privsets
with the same name (added after each rehash).
2008-12-14 18:25:15 +01:00
Jilles Tjoelker
0e52d0d4cf
Unref privset of quitting oper.
2008-12-14 17:31:42 +01:00
androsyn
bdbc903306
cast getpid() to int
2008-12-10 12:46:23 +03:00
Aaron Sethman
cdf7c361aa
report logfile access issues
...
committer: Valeriy Yatsko <dwr@it-penza.org>
2008-11-16 10:15:28 +03:00
Valeriy Yatsko
731fac317d
Branch merge.
2008-12-03 02:59:26 +03:00
Valeriy Yatsko
b7a689d1e5
Remove irc_basename, replace it with rb_basename from libratbox.
2008-12-03 02:59:13 +03:00
Jilles Tjoelker
2a073ca2ed
Put back conditionally netwide ssld error snote.
2008-12-03 00:55:58 +01:00
Valeriy Yatsko
d0f4d745c6
Branch merge.
2008-12-03 02:50:01 +03:00
Valeriy Yatsko
3202e24921
Copied libratbox and related stuff from shadowircd upstream.
2008-12-03 02:49:39 +03:00
Jilles Tjoelker
d4db3063c7
Specify RTLD_LOCAL explicitly.
...
As in atheme-services, I guess some versions of
MacOS X need this.
2008-12-03 00:39:07 +01:00
Jilles Tjoelker
e33e589cbf
Split cidr_bitlen into cidr_ipv4_bitlen and cidr_ipv6_bitlen.
...
Taken from ircd-ratbox 3 via shadowircd.
2008-11-30 13:31:59 +01:00
Jilles Tjoelker
54e3b7658f
Remove unnecessary initialization that violates const.
2008-11-27 22:50:01 +01:00
Jilles Tjoelker
5c16ab05a0
Put back accidentally removed word.
2008-11-26 21:38:49 +01:00
Jilles Tjoelker
e07de82c26
Make the notices reporting auth{} privs a bit more serious-looking,
...
as in ratbox3.
2008-11-19 22:45:13 +01:00
Aaron Sethman
679ccbe5ef
make is_cti/is_sti collect times connected in unsigned long long instead of time_t as well..on 32bit boxes that is going to wrap pretty quickly
...
committer: Valeriy Yatsko <dwr@it-penza.org>
2008-11-16 10:04:09 +03:00
Jilles Tjoelker
b0c41d32b1
Only require DNSBL replies to be in 127.0.0.0/8 instead of /24.
2008-11-15 16:17:16 +01:00
Jilles Tjoelker
db3efb7ac2
Allow the resolver to process longer hostnames,
...
for the benefit of some DNSBLs like the "TorDNSEL service".
2008-11-15 16:13:39 +01:00
Jilles Tjoelker
ffe4e4ae65
Add WHOX to 005 so we can see if much breaks.
2008-11-09 00:27:15 +01:00
Jilles Tjoelker
48957a4951
Add ircu-like /who format options.
...
Use /quote help who for details.
The format code "o" (oplevel) is not documented,
but implemented showing dummy information (999 for
chanop, n/a otherwise).
2008-11-09 00:12:56 +01:00
Jilles Tjoelker
e0c1f4ecab
Show spambot notices for joins, not for parts.
...
Parts still decrement the counter for showing notices.
This shows more channels in the notices.
2008-11-08 17:22:41 +01:00
Jilles Tjoelker
9641f15652
Add the IP address to userlog, as in ratbox3.
2008-10-31 10:57:51 +01:00
Jilles Tjoelker
d61a1c7e13
Allow clearing general::kline_reason via a rehash.
2008-09-17 00:21:00 +02:00
Jilles Tjoelker
10847f65d3
Remove old oper privilege flags.
2008-09-09 21:51:26 +02:00
Jilles Tjoelker
b159441429
Add need_ssl to auth{} and operator{}.
...
Specifying need_ssl on auth{} denies the connection if
it is not SSL/TLS, much like need_ident or need_sasl.
Specifying need_ssl on operator{} refuses opering with
ERR_NOOPERHOST if the connection is not SSL/TLS.
from ircd-ratbox
2008-09-07 01:18:58 +02:00
Jilles Tjoelker
c2f73e5dbc
Use rb_snprintf() in various places.
2008-09-06 01:00:20 +02:00
Valeriy Yatsko
41d8802e84
We don't want to leave the isupport name in the extension memory space on changing it - fixed a bug (tnx Artem@IrcNet(RU))
2008-08-31 03:57:27 +04:00
William Pitcock
5d47bdca0f
Make change_isupport() return the old value!!!
2008-08-29 15:36:41 -05:00
William Pitcock
474b0d3515
Add change_isupport() to change the value of an ISUPPORT token.
2008-08-29 15:27:34 -05:00
William Pitcock
86b6be08eb
Automated merge with ssh://hg.atheme.org//hg/charybdis
2008-08-29 14:48:06 -05:00
Stephen Bennett
12f4addbed
If auth_user and server password were given and not used, use auth_user as an account name in the nickserv identify command
2008-08-29 14:45:30 -05:00
Jilles Tjoelker
d7dc7ae6c1
Remove some dead code.
...
found using llvm static analyzer
2008-08-29 02:53:52 +02:00
Jilles Tjoelker
ab2b9e23cc
Fix a memory leak.
...
found using llvm static analyzer
2008-08-29 01:58:10 +02:00
Jilles Tjoelker
d60a42a27f
Fix comment, getsockname() can fail legitimately.
...
from ircd-ratbox r25967 (jilles)
2008-08-28 01:06:19 +02:00
Jilles Tjoelker
9692f954c6
Don't try to add a closed connection.
...
ircd-ratbox r25965 (jilles)
2008-08-28 01:05:41 +02:00
Jilles Tjoelker
3540120ad5
Fix ident for ssl connections.
2008-08-28 00:49:04 +02:00
Jilles Tjoelker
83dfad0e75
Clear privset on deoper.
2008-08-25 18:24:24 +02:00
Jilles Tjoelker
7d5acab766
Fix crash if there is no privset= in an operator{}.
2008-08-18 00:55:12 +02:00
Jilles Tjoelker
bdd296d5b9
Use C locale for the compilation date.
2008-08-17 22:55:57 +02:00
William Pitcock
ef24271618
Make a reference to privset in Client.localClient.
2008-08-17 08:23:40 -05:00
William Pitcock
598b4cf10c
privilegeset_ref(): return the privilegeset
2008-08-17 08:22:56 -05:00
William Pitcock
49b0375d62
Make use of the new default privset!!
2008-08-17 08:08:23 -05:00
William Pitcock
39a68b5376
ircd initialization: add a "default" privset with no privs.
2008-08-17 08:06:28 -05:00
William Pitcock
5c68d54336
Automated merge with ssh://hg.atheme.org//hg/charybdis
2008-08-17 07:53:32 -05:00
William Pitcock
e62b8b4a53
update oper line
2008-08-17 07:53:29 -05:00
Jilles Tjoelker
8c59a8403b
Add 328 numeric (ChanServ channel URL) to the header files.
2008-08-17 14:49:01 +02:00
William Pitcock
76de88805d
same bug
2008-08-17 07:47:06 -05:00
William Pitcock
065f67db89
fix another stupid bug, gah
2008-08-17 07:46:18 -05:00
William Pitcock
f80958276f
Make sure extended privilege sets are added to the registry.
2008-08-17 07:44:46 -05:00
William Pitcock
3d8f7aa7b4
Allow : to be in 'string' values.
2008-08-17 07:41:52 -05:00
William Pitcock
22c3b270ca
Initial work on getting privsets working.
2008-08-17 07:40:27 -05:00
William Pitcock
f860687514
Add config magic for privset{} parsing.
2008-08-17 07:10:23 -05:00
William Pitcock
353f862553
Add privilegeset_extend().
2008-08-17 06:35:49 -05:00
William Pitcock
9c3f080b99
Add basic PrivilegeSet API.
2008-08-17 06:27:59 -05:00
Valery V Yatsko
b1daa815bd
fixed warnings on src/ircd.c compilation
2008-08-17 09:33:05 +04:00
Valery V Yatsko
ec86417cee
ircd-ratbox -> charybdis
2008-08-16 22:38:13 +04:00
Valery V Yatsko
e1db84d87d
seed random not even every 300 seconds, but on startup also
2008-08-16 22:30:28 +04:00
Valery V Yatsko
37cd159e94
egd fixed
2008-08-16 22:29:33 +04:00
Valery V Yatsko
f01a7ff1e9
comment to fix egd (not work currently)
2008-08-16 22:24:28 +04:00
Valery V Yatsko
33e65f0004
no more servlink - removed 'servlink_path' from reference.conf and source files
2008-08-16 22:23:56 +04:00
Valery V Yatsko
b924934711
fixed typo in sslproc.c
2008-08-08 20:01:52 +04:00
Valery V Yatsko
1a7848d87a
ilog -> inotice in ircd_restart_cb (ircd.c)
2008-08-06 23:57:45 +04:00
Valery V Yatsko
6643434b59
from ircd-ratbox r25799 by androsyn: give a bit more info when libratbox calls logging callbacks
2008-08-06 23:12:02 +04:00
Valery V Yatsko
392ae75ca9
Moved extern chmode_flags declaration from channel.h to chmode.h, as
...
it's actually declared in the second one
2008-08-04 21:51:15 +04:00
Valery V Yatsko
6b67766849
Removed global_tree declaration as unused from reject.c
2008-08-04 21:45:30 +04:00
Jilles Tjoelker
43946961df
Move to ratbox3 reject and throttle code.
...
Throttle replaces max_unknown_ip, reject is like before
(including the charybdis-specific unkline handling).
Both of these now apply before SSL negotiation.
This commit does not include the global_cidr and new dline code.
m_webirc is a bit nasty with throttling (unlike before
with max_unknown_ip), this may be fixed later (or
the webirc IP needs to be exempt{}ed).
2008-08-01 01:59:08 +02:00
Jilles Tjoelker
4679c2c1cc
Fix rejectcache and unknown_count.
...
Unfortunately they are checked after SSL setup.
2008-07-31 22:47:53 +02:00
Jilles Tjoelker
41d7fefad1
Fix some part of IPv6 dline checking.
2008-07-31 21:56:05 +02:00
Jilles Tjoelker
ce1cab0ffd
Fix problems with resolver not responding and epoll.
...
Read from resolver socket until it is no longer ready.
2008-07-30 19:53:54 +02:00
Jilles Tjoelker
88fc1aeb68
Put back netwide snotes for ssld errors from remote connects.
2008-07-30 14:50:12 +02:00
Jilles Tjoelker
befa24c8fe
Make the ircd start again.
2008-07-30 14:48:39 +02:00
Valery Yatsko
0862e335a3
sslproc.c synced with ircd-ratbox3 svn
2008-07-30 02:55:08 +04:00
Valery Yatsko
adc7be98fc
Removed unneeded includes from newconf.h
2008-07-28 23:14:51 +04:00
Valery Yatsko
6fce54ff82
Reordered functions to match ratbox3's order
2008-07-28 23:02:54 +04:00
Valery Yatsko
cd27d99ce4
Removing '/* patricia */' declarations block as libratbox3 has this now, changed the order of variable declarations a bit
2008-07-27 16:25:00 +04:00
Valery Yatsko
6977926571
Cleanup: removed unused initialVMTop variable from ircd.c and get_maxrss() from restart.c
2008-07-27 16:18:50 +04:00
Valery Yatsko
ba8b3ff18a
last changes of crypt -> rb_crypt
2008-07-27 14:52:46 +04:00
Valery Yatsko
acdf71d9d2
A very draft version of extensions, which are adding can_join hooks for custom channel modes
2008-07-27 12:10:48 +04:00
Jilles Tjoelker
189b86d258
Regenerate depend files.
2008-07-12 01:52:27 +02:00
Jilles Tjoelker
baacec4186
Some fixes to .depend generation.
2008-07-12 01:52:14 +02:00
Jilles Tjoelker
ba0711fd4a
Do not send kills for unknown prefixes which are nicks.
...
This can happen harmlessly in particular if a SAVE
and a nick-prefixed command crossed; then, due to
nick changes and nick chasing, it easily causes
ghosts that need a kill or split to disappear.
Most commands use UID as prefix which does not have
this problem and will destroy real ghosts soon enough.
2008-07-02 00:58:56 +02:00
Jilles Tjoelker
81c5873e97
Log ssld errors for servers and handshakes.
...
(serverlog)
2008-06-30 00:28:00 +02:00
Jilles Tjoelker
39452169e8
Call serv_connect_callback() directly from serv_connect_ssl_callback().
...
This speeds up outgoing SSL server connections by 1 second.
2008-06-29 23:47:10 +02:00
Jilles Tjoelker
9ec5132680
Give proper error messages if connect fails for a server using SSL.
2008-06-29 23:47:02 +02:00
Jilles Tjoelker
2ce698f393
Send ssld error netwide if it was a remote connect and a handshake.
2008-06-29 22:02:32 +02:00
Jilles Tjoelker
78dfd39d42
Keep track of nameservers that timeout and use others preferably.
...
The number of timeouts since the last received
packet is visible in /stats A.
2008-06-29 21:07:24 +02:00
Jilles Tjoelker
6a30990367
Reset check_splitmode_ev to NULL after removing it,
...
to exclude the possibility of it being removed twice.
like ircd-ratbox r25641 (jilles)
reverts 788:476d29d84191
2008-06-29 01:37:11 +02:00
Valery V Yatsko
3664572833
New (and better) values for startup event timings
2008-06-28 14:50:21 +04:00
Valery V Yatsko
82fed37e11
Removed __CYGWIN__ define - server has no ability to work on cygwin right now
2008-06-28 14:46:03 +04:00
Valery V Yatsko
b2064202fb
Removed SystemTime declaration
2008-06-28 14:38:27 +04:00
Valery V Yatsko
3d3d1a95bb
Remove srand() from main(), we are using ratbox3 random number generator (ev)
2008-06-28 14:36:25 +04:00
Valery V Yatsko
b3ebc7ab9e
Applied svn diff from ratbox3 r21458:21470
2008-06-28 14:13:50 +04:00
Valery V Yatsko
405ae5ce44
notify_banned_client cleaned up
2008-06-28 12:56:58 +04:00
Valery V Yatsko
b09cbaa315
1. Removed stupid initUser() function outside of all heaps initializations
...
2. Cleaned up make_client
2008-06-28 12:49:27 +04:00
Valery V Yatsko
5433b83e8f
*_heap declaration related to client.c are now in client.c + current_uid too
2008-06-28 12:44:19 +04:00
Valery V Yatsko
b4407833bd
Remove Channel->users_last, used nowhere
2008-06-28 12:25:53 +04:00
Valery V Yatsko
18e4d42137
'struct config_channel_entry ConfigChannel' in channel.c too
2008-06-28 12:02:51 +04:00
Valery V Yatsko
c3d1034381
'rb_dlink_list global_channel_list' declaration moved to channel.c
2008-06-28 12:00:01 +04:00
Valery V Yatsko
b617afdc02
channel_heap,ban_heap,topic_heap,member_heap declared statically in channel.c instead of ircd.{c,h}
2008-06-28 11:54:51 +04:00
Valery V Yatsko
4231cedcea
Pretty symlink logic for help files
2008-06-28 11:48:30 +04:00
Valery V Yatsko
22b98b1ed1
untabify function added to cache.c:
...
removes tabs from src, replaces with 8 spaces, and returns the length
of the new string. if the new string would be greater than destlen,
it is truncated to destlen - 1
2008-06-28 11:22:43 +04:00
Valery V Yatsko
af41336ae5
unlikely -> rb_unlikely
2008-06-26 10:19:27 +04:00
Valery V Yatsko
40c1fd4799
PASS selector:password for auth{}, based on spb's patch for ircd-seven
2008-06-26 10:18:58 +04:00
Valery V Yatsko
c18cb68b91
Generating cflags bufs dynamically: one for RPL_MYINFO and one for
...
supported.c
2008-06-25 07:51:32 +04:00
Valery V Yatsko
9bec26cc38
Merged find_orphaned_cflags and construct_noparam_modes in one function
...
as there's no reason to use them separetly
2008-06-25 07:13:58 +04:00
Valery V Yatsko
f588b95674
New way of noparam mode search
2008-06-24 22:21:26 +04:00
Valery V Yatsko
cbed45a2da
New orphaned cflags implementation, now using chm_orphaned instead of
...
storing orphaned flags in a variable
2008-06-24 22:00:41 +04:00
Jilles Tjoelker
d463189921
Fix some tracking for cmode +r.
2008-06-25 19:40:12 +02:00
Jilles Tjoelker
84c9a8c7be
Fix limits on simple modes.
...
Formerly some mode strings like +svvvv were not accepted.
2008-06-25 19:27:30 +02:00
Valery V Yatsko
46d59e1138
A draft version of find_cmode_slot and orphaned concept for channel
...
flags
2008-06-24 21:26:49 +04:00
Valery V Yatsko
efccc22c27
Applying dyn-cmodes.diff - first step in implementing channel module
...
addition in extensions
2008-06-24 20:45:19 +04:00
Jilles Tjoelker
dd1b211fae
ident: use rb_read/rb_write instead of direct syscalls
2008-06-21 02:29:21 +02:00
Jilles Tjoelker
d0ebe1bcb2
ident: obtain port numbers earlier and store them
...
This eliminates two syscalls per ident lookup.
It also removes a piece of code that depends on
the port fields being in the same location for
sockaddr_in and sockaddr_in6.
2008-06-21 01:52:57 +02:00
Jilles Tjoelker
d5d5e89c98
ident: Check getsockname() return value.
2008-06-21 01:27:17 +02:00
Jilles Tjoelker
1a53072881
Clean up s_auth a little. No functional changes.
2008-06-21 00:58:08 +02:00
Jilles Tjoelker
6bb4fb832b
Do not timeout unknowns if still waiting for blacklist lookup.
...
This fixes inability to connect if all DNS queries
time out and any blacklists are defined.
2008-06-20 01:49:53 +02:00
Jilles Tjoelker
f8a8d16e52
Get rid of ", " at the start of some oper privs strings.
2008-06-18 21:58:43 +02:00
Jilles Tjoelker
8e9623ab59
resolver: Remove effectively unused 'resend' flag.
2008-06-15 15:53:04 +02:00
Jilles Tjoelker
dd1bfa0de1
resolver: Remove request_state which is no longer used.
2008-06-15 01:17:42 +02:00
Jilles Tjoelker
c889c12f3a
Allow CNAMEs everywhere, named will have recursed into them for us.
...
This makes PTRs containing names that are a CNAME
for an A (instead of an A) work. While this is
probably bad practice, some people do it and most
other ircds seem to accept it.
2008-06-15 00:57:15 +02:00
Jilles Tjoelker
ba301effe1
Remove construction of some TS5 linebufs.
2008-06-14 02:30:30 +02:00
Jilles Tjoelker
982ef94983
Remove more TS5 remants (sendto_server calls).
2008-06-14 02:06:55 +02:00
Jilles Tjoelker
fd44b8518a
Unbreak sending out bans and simple modes with parameters.
2008-06-13 22:21:44 +02:00
Jilles Tjoelker
6ab8c0d318
Get rid of some K&R style function declarations for conf parser.
2008-06-11 00:54:02 +02:00
Jilles Tjoelker
a3143c9b6b
Some const stuff for m_set.
2008-06-11 00:28:08 +02:00
William Pitcock
469c9689c1
More TS6 special cases simplified.
2008-06-08 02:16:43 -05:00
William Pitcock
23489ed776
Remove one last bit of TS5 stuff.
2008-06-08 02:14:21 -05:00
William Pitcock
032515f48c
Forgot to test the bitmask, oops.
2008-06-08 02:13:26 -05:00
William Pitcock
0866cef3c1
Replace old 2.8-style privileges notice with a new one.
2008-06-08 02:09:15 -05:00
William Pitcock
ca273a1c73
core: no more TS5
2008-06-08 01:29:26 -05:00
William Pitcock
7bb8c655ec
Remove burst_modes_TS5() and burst_TS5().
2008-06-08 01:11:57 -05:00
Jilles Tjoelker
794816af01
Check for the -rpath linker flag.
...
This makes it build on MacOS X which neither
supports nor needs this flag.
2008-05-17 17:46:37 +02:00
Jilles Tjoelker
b380384839
Show hg revision number (serno) in ircd -version.
2008-04-22 23:41:16 +02:00
Jilles Tjoelker
b7bb965735
Don't try to fflush a file we just closed.
...
ircd-ratbox r25251 (androsyn)
2008-04-22 00:45:43 +02:00
Jilles Tjoelker
121b641409
Remove obsolete comment.
...
DNS lookups should be done prior to usage of an item,
not when loading the configuration.
2008-04-20 15:33:23 +02:00
Jilles Tjoelker
fd5c370711
Remove conf_connect_allowed(), neither used nor declared.
2008-04-20 15:32:08 +02:00
Jilles Tjoelker
896755fe0d
Move some declarations to header files, this enforces that they match.
2008-04-20 15:30:24 +02:00
Jilles Tjoelker
2e819b6b3e
Fix various compiler warnings.
2008-04-20 15:20:10 +02:00
Jilles Tjoelker
9eea5de11d
Remove silly cast that caused a compiler warning.
2008-04-20 14:47:34 +02:00
Valery Yatsko
f5cb68d51d
Remote d:lines implementation (based on ircd-seven's r230 by spb, Stephen Bennett <spb@attenuate.org>)
2008-04-20 11:26:37 +04:00
William Pitcock
ab4285181c
Remainder of irc_string.* is moved to new inline/stringops.h.
2008-04-20 01:03:11 -05:00
Valery Yatsko
4562c60489
irc_string.h -> match.h, irc_string.h; includes changed
2008-04-20 09:47:38 +04:00
Valery Yatsko
decf0486cc
strip_tabs() is related to s_conf.c ONLY - moved it there
2008-04-20 09:38:26 +04:00
Valery Yatsko
e3b33fe3e6
clean_string() is related to m_links.c ONLY - moved it there
2008-04-20 09:35:22 +04:00
Valery Yatsko
4a2651e520
strtoken -> rb_strtok_r (with arguments order changes)
2008-04-20 09:20:25 +04:00
Valery Yatsko
cbe4e1ba31
legacy irc sprintf gone
2008-04-20 09:12:09 +04:00
Valery Yatsko
08d75d9702
myctime -> rb_ctime
2008-04-20 09:03:39 +04:00
Valery Yatsko
e6be5558e4
no need for inetntop* now - removed
2008-04-20 08:57:25 +04:00
Valery Yatsko
caa4d9d273
Various inet* -> rb_inet_*
2008-04-20 08:55:41 +04:00
Valery Yatsko
79c70bbb9c
Missed file from previous changeset
2008-04-20 08:46:04 +04:00
Valery Yatsko
1f9de103c3
strlcat -> rb_strlcat
2008-04-20 08:44:04 +04:00
Valery Yatsko
f427c8b00d
strlcpy -> rb_strlcpy
2008-04-20 08:40:40 +04:00
Valery Yatsko
6af128685d
Functions replacement: ircd_baseXX_{en,de}code -> rb_baseXX_{en,de}code
2008-04-20 08:36:28 +04:00
Valery Yatsko
d80645d0e2
'reseed_srand' event - libratbox and various ssl stuff need it
2008-04-20 08:26:14 +04:00
Valery Yatsko
f20a07457b
Remove rb_checktimeouts event init from ircd.c - it's inside libratbox now
2008-04-20 08:14:22 +04:00
Valery Yatsko
ea82a3ca27
Splitted open_logfiles(); into open_logfiles(); and close_logfiles();, use the second one on ircd_shutdown
2008-04-20 07:42:30 +04:00
Valery Yatsko
fd5af3d072
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
041d54ff4b
Switched on using cache_user_motd(); for motd update on rehash
2008-04-20 07:24:50 +04:00
Jilles Tjoelker
3eabb958a7
Improve SIGCHLD handler
...
- Reap multiple zombies per signal
- Save and restore errno
ircd-ratbox r25239
2008-04-18 01:01:38 +02:00
Jilles Tjoelker
8bd5767b95
Remove ^M on line endings.
2008-04-13 17:54:23 +02:00
William Pitcock
de4d47a12a
New operline based on ranting from ccr.
2008-04-12 18:56:46 -05:00
Jilles Tjoelker
aae358c078
Remove various other gline stuff.
2008-04-11 17:10:40 +02:00
Valery Yatsko
eae062741d
'You are exempt from...' message fixed - glines gone
2008-04-11 19:09:19 +04:00
Valery Yatsko
453ea2fde8
Fixing compilation - CAP_GLN removed
2008-04-11 18:56:53 +04:00
Valery Yatsko
170703fe3a
Removing glines
2008-04-11 18:47:03 +04:00
Valery Yatsko
8982edb068
Fixing time_t warnings
2008-04-09 23:34:34 +04:00
Valery Yatsko
b3e9f8ebc2
Importing ratbox3 r25213 changeset
2008-04-09 23:22:51 +04:00
Valery Yatsko
79b0d5a330
.cvsignore files removed, SVN-Access replaced by Mercurial-Access
2008-04-09 22:24:50 +04:00
Valery Yatsko
c84557ac70
chm_* declarations gone to chmode.h - this makes some modules clean
2008-04-08 23:39:35 +04:00
Jilles Tjoelker
01e9b1eb3b
Fix some warnings in the resolver code.
2008-04-08 19:55:51 +02:00
Jilles Tjoelker
6db4fb0a9b
Make Dictionary keys const everywhere.
2008-04-08 19:52:02 +02:00
Jilles Tjoelker
8262273238
Make the format argument of change_nick_user_host() const.
2008-04-08 18:54:58 +02:00
Valery Yatsko
26716d6d40
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
536845c57d
Removing UMODE_ALL, replacing all sendto_realops_flags in sslproc.c with snomasks
2008-04-08 20:16:19 +04:00
Valery Yatsko
39944e1ff2
rb_lib_loop delay changed from 250 to 0, it really must be set to nil, 'cause there are some additional checks inside libratbox3
2008-04-08 18:09:32 +04:00
Valery Yatsko
b2c42c4589
Branch merge
2008-04-08 18:01:37 +04:00
Valery Yatsko
4c79bbd350
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
b5b84cad5d
Oups, declarations related to ircd.c returned from ircd_state.c
2008-04-08 16:01:16 +04:00
Valery Yatsko
1aad97824b
Cleaned up ircd.c a bit and added additional check to ircd_die_cb()
2008-04-08 15:50:39 +04:00
Valery Yatsko
72324d1052
ircd_state.{c,h} gone - let us redesign it in future really
2008-04-08 15:41:41 +04:00
Valery Yatsko
31fd33171e
ServerRunning is not used too
2008-04-08 15:38:18 +04:00
Valery Yatsko
aa6c90dec7
It seems that we don't use data structs version anywhere since 1.2.0 - removed
2008-04-08 15:36:56 +04:00
Valery Yatsko
f4a759c560
show_capabilities cleanup and now show whether we are TS or TS6 and SSL link
2008-04-07 20:21:09 +04:00
Valery Yatsko
bbe968ca0c
Make charybdis not search m_sjoin as its a core module
2008-04-07 20:06:04 +04:00
William Pitcock
af7aaa8444
fix whois :)
2008-04-06 12:04:25 -05:00
William Pitcock
3318e109f9
add umode +Z for SSL, can't be set or unset
2008-04-06 11:55:12 -05:00
William Pitcock
f845191560
make this compile again
2008-04-06 11:33:34 -05:00