Commit graph

624 commits

Author SHA1 Message Date
William Pitcock 82eac99fc0 Fix typo. 2010-03-07 22:30:30 -06:00
William Pitcock ec55bec527 Add MLOCK capability token. 2010-03-07 22:25:41 -06:00
William Pitcock a51c452643 Rename channel_modes() to channel_modes_real(), and use macros to build both the mode list, and the mlock list. 2010-03-07 22:22:14 -06:00
William Pitcock bafd5ea61c struct Channel: add mode_lock structure to the channel object. 2010-03-07 21:41:06 -06:00
William Pitcock a51b50c366 struct Mode: add off_mode bitfield to describe disabled channel modes. 2010-03-07 21:40:34 -06:00
William Pitcock dd0f1f5b88 Add RPL_CHANNELMLOCKIS for ircd-side MLOCK enforcement. 2010-03-07 21:35:54 -06:00
Jilles Tjoelker 5c2b9eaf48 BAN: Reject bans with insufficient non-wildcard characters.
Such bans are not applied locally, but are propagated normally.
They can only be removed on a server that applies them.

Note that normally KLINE will not accept such bans.
This is mainly for services, differing min_wildcard and
ircd changes.
2010-03-06 01:45:41 +01:00
Jilles Tjoelker 431a1a2784 Add propagated klines.
A KLINE command without the ON clause now sets a propagated
("global") ban. KLINE commands with the ON clause work as
before.

Propagated klines can only be removed with an UNKLINE command
without the ON clause, and this removes them everywhere.
In fact, they remain in a deactivated state until the latest
expiry ever used for the mask has passed.

Propagated klines are part of the netburst using a new BAN
message and capab. If such a burst has an effect, both the
server name and the original oper are shown in the server
notice.

No checks whatsoever are done on bursted klines at this time.

The system should be extended to XLINE and RESV later.

There is currently no way to list propagated klines,
but TESTLINE works normally.
2010-03-05 18:36:44 +01:00
Jilles Tjoelker 9197bc355e Add code to expire "propagated" bans.
The data structure is very simple: a dlink list of all propagated bans.
2010-03-04 00:21:22 +01:00
Jilles Tjoelker c2e7ab8c1e ConfItem.next is not used, remove it. 2010-03-03 23:36:28 +01:00
Jilles Tjoelker f9545a9b54 Make struct operhash_entry private. 2010-03-01 01:24:00 +01:00
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 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
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 666de5311f Remove some obsolete paths from config.h. 2010-02-22 23:53:45 +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
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 c9f01c4f2f target change: Allow free replies.
When a user receives a private message, notice or RPL_UMODEGMSG,
add the source to a special set of 5 target slots.
These slots are checked in the normal way when sending messages,
allowing a reply without using up a free target.

This feature will not be very useful if a user is being messaged
by many different users; to help this, messages blocked entirely
by +g or +R do not affect the targets. CTCP replies also remain
free in terms of targets.
2010-02-15 01:07:07 +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
Jilles Tjoelker ad1d39a76f Make the number of targets tracked for target change a #define. 2010-02-13 15:18:17 +01: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 8f10356217 Remove remnants of <foo>_t typedefs. 2010-01-30 15:57:10 +01:00
William Pitcock 2e918bf515 Merge +C (no CTCP to channels) from ircd-seven. 2010-01-19 02:11:04 -06:00
William Pitcock 83595e6016 Add bandb IRCd APIs. 2010-01-07 17:10:16 -06:00
William Pitcock 0d781b9a4f Add DBPATH. 2010-01-07 16:55:34 -06:00
William Pitcock 7083c02121 Run autoreconf. 2010-01-07 16:51:32 -06:00
Jilles Tjoelker cef7a7bc4e Remove FLAGS_SENDQEX, fix sendq exceeded snotes for servers.
from ircd-ratbox
2009-12-21 16:58:25 +01:00
Jilles Tjoelker 01a7f6d4f9 Remove two obsolete constants. 2009-06-03 23:18:07 +02: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 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
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 553aaaf4db Remove two obsolete constants. 2009-06-03 23:18:07 +02: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 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 54ff698839 presence: Add CLICAP_PRESENCE.
This will enable broadcasting presence updates on channels.
2009-06-02 02:14:44 -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 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 f01154c478 presence: Declare MetadataEntry struct. 2009-06-02 01:29:58 -05:00
William Pitcock 0d3b24f9cf presence: Create presence metadata tracking structures where appropriate. 2009-05-30 13:30:57 -05:00
William Pitcock d7ca5991bc struct Client: add a dictionary to contain presence metadata. 2009-05-30 13:17:39 -05:00
William Pitcock 32a7faa104 Automated merge with ssh://hg.atheme.org//hg/charybdis 2009-05-30 13:16:01 -05:00
William Pitcock 8669b3b99c Add irc_dictionary.h to stdinc. I'm lazy. 2009-05-30 13:15:58 -05:00
Jilles Tjoelker 6dbb113478 Remove some obsolete unused definitions. 2009-05-21 16:01:46 +02:00
Jilles Tjoelker aa9c9ed268 Allow ctcp replies through floodcount after ctcp'ing a large group.
A large group is any $$ or $# or a channel with more than
floodcount/2 local members, checked on each server separately.
Note that floodcount checks are done on the sender's server.

The special treatment is active for 15 seconds.
2009-05-17 20:52:16 +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 c6240d7940 Allow for capabilities to be marked as "required".
If capability negotiation fails on these capabilities, then the server link is dropped.
2009-04-20 09:36:55 -05:00
William Pitcock 5f8d323c59 can_kick hook, based on the ircd-seven one. 2009-04-20 09:20:11 -05: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 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 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 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 ad08ad1876 For remote rehashes, send error messages to the requesting oper as well. 2009-01-30 00:11:12 +01:00
Jilles Tjoelker 975c61928a Don't suggest putting values in an enum that are not in the enum.
Compilers may assume that variables of enumerated type
only contain values in the enumeration.
2009-01-28 01:02:34 +01:00
Jilles Tjoelker 161f040940 Update comments for parv[0] removal. 2009-01-18 18:22:43 +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
Valeriy Yatsko 32eadd332e Update client.h. 2008-12-13 23:22:12 +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 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
Valeriy Yatsko b7a689d1e5 Remove irc_basename, replace it with rb_basename from libratbox. 2008-12-03 02:59:13 +03: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 d764f7ce5a Correct buffer without space for '\0', should have been safe due to padding. 2008-11-22 18:51:00 +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 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 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 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
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
Jilles Tjoelker 3540120ad5 Fix ident for ssl connections. 2008-08-28 00:49:04 +02:00
William Pitcock f37fc9389b HasPrivilege(): check to make sure localClient and localClient.privset are non-NULL. 2008-08-17 08:52:04 -05:00
William Pitcock 6ac9e53ee4 All modules converted to use privsets by porting the macro over.
New macro, HasPrivilege() does most of the work here, the old IsOper*() macros
are deprecated, and will likely be removed later.
2008-08-17 08:36:17 -05: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
Jilles Tjoelker 8c59a8403b Add 328 numeric (ChanServ channel URL) to the header files. 2008-08-17 14:49:01 +02:00
Jilles Tjoelker f11d08a405 Remove another servlink remnant. 2008-08-17 14:46:29 +02:00
William Pitcock a2e1310cbe oper_conf structure: add privset association. 2008-08-17 07:32:30 -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 33e65f0004 no more servlink - removed 'servlink_path' from reference.conf and source files 2008-08-16 22:23:56 +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
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
Valery Yatsko 9bdd947118 channel.h cleaned up a bit - removed unused includes 2008-07-30 16:27:35 +04:00
Valery Yatsko 687ff2f994 Removed charybdis.h include - used nowhere 2008-07-30 16:19:56 +04:00
Valery Yatsko 104c6d469d rb_uint32_t -> uint32_t, rb_uint16_t -> uint16_t 2008-07-30 02:45:31 +04:00
Valery Yatsko adc7be98fc Removed unneeded includes from newconf.h 2008-07-28 23:14:51 +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 c24efdc0b7 Also apply floodcount to messages to remote clients (except services).
As before, only local clients can have their message blocked.
2008-07-22 01:46:34 +02:00
Jilles Tjoelker ce3801b175 Remove some obsolete ConfItem flags. 2008-07-04 17:05:18 +02:00
Valery V Yatsko b2064202fb Removed SystemTime declaration 2008-06-28 14:38:27 +04:00
Valery V Yatsko b3ebc7ab9e Applied svn diff from ratbox3 r21458:21470 2008-06-28 14:13:50 +04:00
Valery V Yatsko b4407833bd Remove Channel->users_last, used nowhere 2008-06-28 12:25:53 +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 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 33599ae783 Missed declaration of chm_orphaned 2008-06-24 22:08:24 +04: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 1a53072881 Clean up s_auth a little. No functional changes. 2008-06-21 00:58:08 +02:00
Jilles Tjoelker 0c5cbb3b96 Remove unused field ip6_int. 2008-06-20 22:55:51 +02:00
Jilles Tjoelker a3143c9b6b Some const stuff for m_set. 2008-06-11 00:28:08 +02:00
William Pitcock 2a7872e9fb Merge with 'charybdis-ts6only' branch. 2008-06-08 01:09:04 -05:00
Jilles Tjoelker c42fb00e7f Remove dline flags from shared all.
This means dline/undline need to be specified
explicitly in a shared{} block.
2008-04-21 01:41:42 +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
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 caa4d9d273 Various inet* -> rb_inet_* 2008-04-20 08:55:41 +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 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
Jilles Tjoelker 8bd5767b95 Remove ^M on line endings. 2008-04-13 17:54:23 +02:00
Jilles Tjoelker 7b7daec8db Rerun autoconf and autoheader. 2008-04-11 17:57:37 +02:00
William Pitcock cd3cab1416 TS_MIN is 6 now. 2008-04-11 10:23:47 -05:00
William Pitcock 729d5e3558 start working on TS5 removal. 2008-04-11 10:22:44 -05: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
Jilles Tjoelker a8ac111452 Add extern to eob_count global variable declaration in header file. 2008-04-11 11:30:07 +02: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 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
Jilles Tjoelker d48a559768 Make Message.cmd a const pointer. 2008-04-08 18:51:52 +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 044aa2c757 Changing umode defines - renumbered 2008-04-08 20:06:43 +04:00
Valery Yatsko f53ed7f8ca 'S' flag meaning we use ssl link added to /stats {c,C} (connect) 2008-04-08 18:30:53 +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 72324d1052 ircd_state.{c,h} gone - let us redesign it in future really 2008-04-08 15:41:41 +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 e04fd343f8 Some declarations connected to removed servlink gone 2008-04-07 15:26:25 +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 1471fb5f2b add missing file 2008-04-06 11:31:46 -05:00
Valery Yatsko c6d7203732 ssl sync with http://hg.angelforce.ru/charybdis-old 2008-04-06 18:52:42 +04:00
Jilles Tjoelker f1eccc3420 Branch merge. 2008-04-05 22:34:13 +02:00
Jilles Tjoelker abe5dd209d Put back connecting to servers defined by hostname.
The DNS lookup is done at connect time.
2008-04-05 22:09:32 +02:00
Valery Yatsko 101db4c443 Much clear maxconnections stuff - ported from ratbox3. 2008-04-05 23:56:15 +04:00
Valery Yatsko 9ea3ea1085 Missed some files in r520 commit. 2008-04-05 21:20:48 +04:00
Valery Yatsko ccda6e3fc5 Replacing legacy IPV6 define with RB_IPV6 (which is included in libratbox's config.h). 2008-04-05 20:57:30 +04:00
Valery Yatsko 47adde3def s_stats.c removed, now we use new style of stats handling. 2008-04-04 19:54:37 +04:00
Jilles Tjoelker 074e7607a7 Remove some declarations for removed functions. 2008-04-04 01:19:28 +02:00
Jilles Tjoelker f455ed520d Servlink control data is read again, this makes /stats Z work. 2008-04-04 00:45:38 +02:00
Jilles Tjoelker 8c689f969d Ziplinks appear to work again now. 2008-04-04 00:13:50 +02:00
William Pitcock 4016731b1c s_log.* -> logger.* (s_foo looks ugly, lets try to get rid of it) 2008-04-02 21:52:01 -05:00
William Pitcock ba1a1399c7 ilog_error() replaces legacy report_error() craq 2008-04-02 21:40:54 -05:00
Jilles Tjoelker c6f49c9a63 Make s_auth.c compile. 2008-04-02 21:14:34 +02:00
Valery Yatsko e967e868c4 Stuff connected with ctrlFd disabled 2008-04-02 21:16:13 +04:00
Valery Yatsko 5a606a8f8c flood_recalc moved on ratbox3 event engine 2008-04-02 21:10:29 +04:00
Valery Yatsko 60eb0cdc9c linebuf -> rb_linebuf 2008-04-02 21:04:44 +04:00
Valery Yatsko f691939a17 Workarond with listener.c stuff on moving from listener->fd usage on listener->F. 2008-04-02 20:06:11 +04:00
Valery Yatsko e7046ee54d irc_sockaddr_storage -> rb_sockaddr_storage, changing fd in Listener struct to F 'cause libratbox3 need it. 2008-04-02 19:57:37 +04:00
Valery Yatsko b08ce46eb1 class.c fixed 2008-04-02 19:49:42 +04:00
Valery Yatsko 97b41ffab9 m_pass.c fixed 2008-04-02 19:45:22 +04:00
Valery Yatsko 54ac8b60a1 Reverting some changed related not to moving on libratbox3 but using ratbox3 source! 2008-04-02 19:37:50 +04:00
Valery Yatsko 18b94b70dc replacing ssld with servlink 2008-04-02 17:00:18 +04:00
Valery Yatsko 07d5c0494a get_printable_kline(..) fix 2008-04-02 16:55:01 +04:00
Valery Yatsko e4d8860e06 READBUF_SIZE 2008-04-02 16:35:48 +04:00
Valery Yatsko 4714a17f54 Trying to fix packet.c 2008-04-02 16:31:17 +04:00
Valery Yatsko a4597cd8d9 fixing ServerStats struct 2008-04-02 16:08:28 +04:00
Valery Yatsko 19fee732d7 tstats stuff gone to m_stats.c 2008-04-02 16:04:43 +04:00
Valery Yatsko 05ffd6946d fixing Class struct 2008-04-02 15:34:26 +04:00
Valery Yatsko 4998e3d6dc More charybdis -> ratbox3 2008-04-02 15:02:45 +04:00
Valery Yatsko 3c5a494ddd Fixing bugs 2008-04-02 14:43:53 +04:00
Valery Yatsko 9fa9300fa2 hostmask.h cleanup 2008-04-02 14:42:25 +04:00
Valery Yatsko 7ee5e8a5fe reject functions from ratbox3 2008-04-02 14:41:37 +04:00
Valery Yatsko b5cf99a8c3 s_stats workaround 2008-04-02 14:35:57 +04:00
Valery Yatsko f888761cec ssl_ok in ircd.{h,c} 2008-04-02 14:29:18 +04:00
Valery Yatsko e1c8d82073 localflags stuff 2008-04-02 14:28:02 +04:00
Valery Yatsko a3996b820e LocalUser::ssl_ctl 2008-04-02 14:26:13 +04:00
Valery Yatsko 6120b9525d CLI_FD_MAX 2008-04-02 14:23:36 +04:00
Valery Yatsko 835b12ef61 Some hash stuff 2008-04-02 14:20:27 +04:00
Valery Yatsko ae78a57163 Reverting to 398.. trying again with native charybdis hash 2008-04-02 14:16:31 +04:00
Valery Yatsko 002bc9e82c switching back on nd_dict instead of ratbox3 hash functions 2008-04-02 14:11:01 +04:00
Valery Yatsko 46f200fae9 LocalUser struct changes 2008-04-02 14:07:14 +04:00
Valery Yatsko 4c07af8252 LOCAL_COPY_N macro 2008-04-02 14:03:16 +04:00
Valery Yatsko 5c65d4ca0c nd_entry struct from ratbox3 2008-04-02 14:00:41 +04:00
Valery Yatsko 85958381ad hash.{h,c} from ratbox3, let's work around them! xD 2008-04-02 13:58:52 +04:00
Valery Yatsko fd1e24eccb 'lip' added in LocalUser struct 2008-04-02 13:55:17 +04:00
Valery Yatsko ba4936e2c5 extern declaration in ircd.h instead of ircd.c 2008-04-02 13:53:41 +04:00
Valery Yatsko 433a202989 Much more changes to remove compilation warnings 2008-04-02 13:43:11 +04:00
Valery Yatsko 18f4cc5a2c This define is in libratbox config.h 2008-04-02 13:40:07 +04:00
Valery Yatsko f7e2c5b340 Trying again - this will need ssld integration from me 2008-04-02 13:32:14 +04:00
Valery Yatsko f438bd836a Reverting last commit to try again 2008-04-02 13:11:59 +04:00
Valery Yatsko 873487eb8f Trying to migrate on ratbox3's listener. 2008-04-02 06:25:08 +04:00
Valery Yatsko bac4c06faf DupNString removed - we don't need it now 2008-04-02 06:00:24 +04:00
William Pitcock 2b42818532 yet another autoreconf run. 2008-04-01 20:55:40 -05:00
William Pitcock f589ec6fb1 run autoreconf. 2008-04-01 20:40:26 -05:00
William Pitcock fa94d8fb93 make s_user.c build. 2008-04-01 20:36:50 -05:00
Valery Yatsko 398b6a7372 ok, trying to work on blockheap's stuff 2008-04-02 04:28:05 +04:00
Valery Yatsko 0ccdff98ac fixing cache.c compilation - code stolen from ratbox3, with irc dictionary addition 2008-04-02 04:15:58 +04:00
Valery Yatsko e335494516 CurrentTime -> rb_currenttime(); 2008-04-02 03:53:20 +04:00
Valery Yatsko a235e4101d 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 6e6a632636 ircd_defs.h declaration in stdinc.h - needed for some reasons. 2008-04-02 03:31:31 +04:00
Valery Yatsko a1f535de14 Returned back declaration I've mistakenly removed. 2008-04-02 03:28:15 +04:00
Valery Yatsko 47a0375094 DubString -> rb_strdup 2008-04-02 03:26:34 +04:00
Valery Yatsko 300a543344 away stuff from ratbox3 2008-04-02 03:03:15 +04:00
Valery Yatsko 423f18a073 monitor.{c,h} stuff for libratbox3. 2008-04-02 02:55:34 +04:00
Valery Yatsko 81af5bcb39 libcharybdis includes gone. 2008-04-02 02:39:19 +04:00
Jilles Tjoelker 3b2ebd04de Make send.c compile, except for ziplinks. 2008-04-01 23:51:34 +02:00
William Pitcock fa8328508d Make m_set compile. 2008-04-01 16:25:22 -05:00
Jilles Tjoelker 7018b86a12 More changes for libratbox. 2008-04-01 23:11:11 +02:00
Jilles Tjoelker 0e7cb7e6a1 Various changes for libratbox. 2008-04-01 23:03:14 +02:00
William Pitcock 5b96d9a6b9 start making this compile 2008-04-01 15:18:48 -05:00
William Pitcock d56734d6dd bork bork bork 2008-04-01 15:14:08 -05:00
Jilles Tjoelker 7b7e1640de Move PRIVS command from extensions to modules (shows effective oper privs). 2008-03-31 00:39:14 +02:00
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 48a266e5da Cleanups to 005 code, from ratbox (androsyn). 2008-03-18 23:28:03 +01:00
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 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 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 de82e84fae Use a more expected value for SHARED_TRESV. 2008-01-05 14:58:13 +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 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 cdd5b26189 Remove idle time checking (auto disconnecting users idle too long). 2008-01-01 23:04:34 +01:00
Jilles Tjoelker d61de0adff Remove various obsolete ConfItem statuses (types) and flags. 2008-01-01 16:06:59 +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 7d1f9131fb Consolidate duplicate channel mode flags tables to one. 2007-12-25 01:00:20 +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 3fec9477b8 Rearrange flags2 to make room for 3 more oper privileges. 2007-12-24 21:16:19 +01:00
Jilles Tjoelker 095328a742 Move various flags from flags2 to flags. 2007-12-24 20:58:55 +01:00
Jilles Tjoelker 9696c9d6ab Remove various unused macros. 2007-12-24 20:40:12 +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 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