Commit graph

571 commits

Author SHA1 Message Date
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