Commit graph

889 commits

Author SHA1 Message Date
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
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
2af8c7ff8b Some global structs cleaned up a bit in their initalization and declarations. 2008-04-05 22:02:59 +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
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
Jilles Tjoelker
209b3a713d Unbreak /stats B. 2008-04-03 23:38:47 +02:00
Jilles Tjoelker
d18a9c05fb Fix crash when a server or attempt by an oper exits. 2008-04-03 22:47:16 +02:00
Jilles Tjoelker
75c5813806 Unbreak connecting to servers. 2008-04-03 22:46:43 +02:00
Jilles Tjoelker
2844a8b409 Remove ident connect failure notices again.
reverting 7ea53124d350
2008-04-03 22:19:47 +02:00
Jilles Tjoelker
9f316874a3 Clean this up a bit. 2008-04-03 22:11:19 +02:00
Jilles Tjoelker
2b2df0cb10 Fix a case where an EOF could be interpreted a previous errno (often ignorable). 2008-04-03 21:43:54 +02:00
Jilles Tjoelker
e33c4818c3 Connect to correct ident port (forgot an htons). 2008-04-03 20:46:20 +02:00
William Pitcock
c5eebb3efb Make identd check work again. Someone made an oops here. 2008-04-03 10:53:16 -05:00
William Pitcock
93a426cb6e Make this compile again. 2008-04-03 10:31:18 -05:00
William Pitcock
8afa3bf057 Call ilog_error() to log identd check failures. 2008-04-03 10:29:51 -05:00
William Pitcock
fd3f1b5b69 set_time() isn't needed anymore; remove it 2008-04-03 05:35:44 -05: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
825ddf1363 report_error() cleanup 2008-04-02 21:47:03 -05:00
William Pitcock
ba1a1399c7 ilog_error() replaces legacy report_error() craq 2008-04-02 21:40:54 -05:00
William Pitcock
caf88e7805 Remove gnutls.c, we don't need it now. 2008-04-02 20:46:05 -05:00
William Pitcock
1d5d54832a setting maxconnections seems to get things going... 2008-04-02 20:45:24 -05:00
William Pitcock
12b7556ef4 use an rpath to avoid LD_LIBRARY_PATH stuff 2008-04-02 20:26:48 -05:00
William Pitcock
33564d03b5 use rb_set_time() to update ratbox time 2008-04-02 20:26:00 -05:00
Jilles Tjoelker
150f35f7c2 Need to initialize linebuf separately. 2008-04-03 01:40:32 +02:00
Jilles Tjoelker
fe18f4bc7b Restore and update send_oper_motd().
The main ircd binary now compiles and links.
2008-04-03 01:16:49 +02:00
Jilles Tjoelker
6c528b8e68 Make some more files compile. 2008-04-03 01:10:04 +02:00
Jilles Tjoelker
b2c190a64d Make s_conf.c compile. 2008-04-02 21:39:58 +02:00
Jilles Tjoelker
c6f49c9a63 Make s_auth.c compile. 2008-04-02 21:14:34 +02:00
Jilles Tjoelker
1087485cf2 Remove ^M. 2008-04-02 20:50:20 +02:00
William Pitcock
0240b41954 reject.c ported 2008-04-02 13:01:18 -05:00
William Pitcock
0f6d6f3ddf res.c is ported to libratbox :) 2008-04-02 12:57:14 -05:00
Valery Yatsko
d91ce397ba packet.c fixed 2008-04-02 21:23:29 +04:00
Valery Yatsko
e967e868c4 Stuff connected with ctrlFd disabled 2008-04-02 21:16:13 +04:00
Valery Yatsko
673f58abaf servlink fd commented out in close_connection() - we are moving on ssld 2008-04-02 21:12:08 +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
bec1e0a51e Oups, change for last commit 2008-04-02 20:55:38 +04:00
Valery Yatsko
3610cbbbda find_dline fixed 2008-04-02 20:54:27 +04:00
Valery Yatsko
8454fac35c Last argument fix 2008-04-02 20:51:17 +04:00
Valery Yatsko
59dc6c8634 listener.c fixes - part 1 2008-04-02 20:49:46 +04:00
Valery Yatsko
99c4835f99 add_connection fixed to accept F instead of fd 2008-04-02 20:45:37 +04:00
Valery Yatsko
8e09c4a231 Missed declarations 2008-04-02 20:40:38 +04:00
Valery Yatsko
0d89d5cd46 Porting accept callback functions 2008-04-02 20:39:36 +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
54ac8b60a1 Reverting some changed related not to moving on libratbox3 but using ratbox3 source! 2008-04-02 19:37:50 +04:00
Valery Yatsko
07d5c0494a get_printable_kline(..) fix 2008-04-02 16:55:01 +04:00
Valery Yatsko
9072ba07bd fixing reject.c compilation + some changes I forgot in previous changeset 2008-04-02 16:53:21 +04:00
Valery Yatsko
acd639c5de includes fix 2008-04-02 16:37:42 +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
87116eca09 add_reject fix - please check!!! 2008-04-02 16:12:49 +04:00
Valery Yatsko
c111ac1162 fixing ServerStats references 2008-04-02 16:11:27 +04:00
Valery Yatsko
19fee732d7 tstats stuff gone to m_stats.c 2008-04-02 16:04:43 +04:00
Valery Yatsko
29b15e07b3 s_stats.c::tstats fixed 2008-04-02 16:01:49 +04:00
Valery Yatsko
35ce33bc5f ircst legacy declaration gone 2008-04-02 16:00:08 +04:00
Valery Yatsko
7ea870f364 ircvsnprintf -> rb_vsnprintf 2008-04-02 15:58:00 +04:00
Valery Yatsko
2454b79add inotice fixed 2008-04-02 15:56:34 +04:00
Valery Yatsko
f62e27ad8d add_listener w/o ssl 2008-04-02 15:53:46 +04:00
Valery Yatsko
da66e74437 Missed ')' 2008-04-02 15:46:38 +04:00
Valery Yatsko
e5ac49667f client.c fixed, remember to check it with servlink 2008-04-02 15:45:41 +04:00
Valery Yatsko
4964011f8a class.c fixed possibly 2008-04-02 15:33:29 +04:00
Valery Yatsko
b41f87571e client.c fixed 2008-04-02 15:25:49 +04:00
Valery Yatsko
6f24a013bf fixing dline 2008-04-02 15:20:15 +04:00
Valery Yatsko
39bdbd3f7d 'ServerStats->' -> 'ServerStats.' 2008-04-02 15:07:00 +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
7ee5e8a5fe reject functions from ratbox3 2008-04-02 14:41:37 +04:00
Valery Yatsko
c11029da8a Missed include 2008-04-02 14:37:40 +04:00
Valery Yatsko
b5cf99a8c3 s_stats workaround 2008-04-02 14:35:57 +04:00
Valery Yatsko
d8b66e8b52 sslproc.h include 2008-04-02 14:30:44 +04:00
Valery Yatsko
f888761cec ssl_ok in ircd.{h,c} 2008-04-02 14:29:18 +04:00
Valery Yatsko
0ff67b4b83 hash_cli_fd(x) 2008-04-02 14:22:43 +04:00
Valery Yatsko
fc2998b46f clientbyFdTable 2008-04-02 14:22:02 +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
b871b3263d UMODE_DEBUG -> SNO_DEBUG 2008-04-02 14:01:32 +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
ba4936e2c5 extern declaration in ircd.h instead of ircd.c 2008-04-02 13:53:41 +04:00
Valery Yatsko
59323b9668 Reverting last commit 2008-04-02 13:52:05 +04:00
Valery Yatsko
5d1efcb253 fixing maxconnections -> rb_get_maxconnections() 2008-04-02 13:48:31 +04:00
Valery Yatsko
433a202989 Much more changes to remove compilation warnings 2008-04-02 13:43:11 +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
William Pitcock
2847d2186e fix ircd.c compilation 2008-04-01 20:56:54 -05:00
William Pitcock
11dd56fa8e Automated merge with http://angelforce.ru:8000 2008-04-01 20:55:21 -05:00
Valery Yatsko
0edb29fa2e Fixed a ratbox lib call as it is in ircd-ratbox-3 2008-04-02 05:47:12 +04:00
Valery Yatsko
12aea5fecd event* -> rb_event* 2008-04-02 05:43:35 +04:00
William Pitcock
faefd28ac1 Automated merge with http://angelforce.ru:8000 2008-04-01 20:38:23 -05:00
William Pitcock
fa94d8fb93 make s_user.c build. 2008-04-01 20:36:50 -05:00
William Pitcock
c626889a84 make s_stats.c compile 2008-04-01 20:34:58 -05:00
William Pitcock
e410dcf545 make s_newconf.c compile 2008-04-01 20:34:02 -05:00
William Pitcock
6aae811eb3 fix s_log. 2008-04-01 20:31:26 -05:00
Valery Yatsko
adc6cc4278 client.c fixes + away stuff from ratbox3, part 2 2008-04-02 05:24:54 +04:00
William Pitcock
c75fdbfb29 fix restart.c 2008-04-01 20:11:11 -05:00
William Pitcock
b572cd7a75 fix reslib 2008-04-01 20:07:43 -05:00
William Pitcock
afdc068ce0 fix newconf.c 2008-04-01 20:04:03 -05:00
William Pitcock
95b3551e55 fix monitor.c 2008-04-01 20:03:40 -05:00
William Pitcock
301061562a warning clean 2008-04-01 20:03:13 -05:00
William Pitcock
57fa364823 fix ircd_state.c 2008-04-01 20:01:48 -05:00
William Pitcock
90728508bb fix irc_dictionary, and some ircd warnings 2008-04-01 20:01:25 -05:00
William Pitcock
c608a0619b channel.c done!!!! 2008-04-01 19:56:51 -05:00
Valery Yatsko
398b6a7372 ok, trying to work on blockheap's stuff 2008-04-02 04:28:05 +04:00
Valery Yatsko
c2551f470d BlockHeap -> rb_bh 2008-04-02 04:21:17 +04:00
Valery Yatsko
91e2f81c99 Prevent cork usage as charybdis doesn't have its support 2008-04-02 04:19:12 +04:00
Valery Yatsko
2296e5600f Missed include. 2008-04-02 04:16:50 +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
47a0375094 DubString -> rb_strdup 2008-04-02 03:26:34 +04:00
Valery Yatsko
eddc2ab6d8 MyMalloc -> rb_malloc 2008-04-02 03:07:29 +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
637c4932f6 Argh, wrong replace caused by MS VS 2005 interface. 2008-04-02 02:47:17 +04:00
Valery Yatsko
bd19829278 MyFree -> rb_free 2008-04-02 02:45:16 +04:00
Valery Yatsko
81af5bcb39 libcharybdis includes gone. 2008-04-02 02:39:19 +04:00
Valery Yatsko
f24a7dfbaf Removing libcharybdis references. 2008-04-02 02:18:44 +04:00
Jilles Tjoelker
734d420e14 Some changes for libratbox. 2008-04-02 00:10:51 +02:00
Jilles Tjoelker
3b2ebd04de Make send.c compile, except for ziplinks. 2008-04-01 23:51:34 +02:00
William Pitcock
434028d031 rb_event_add ;) 2008-04-01 16:26:23 -05: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
William Pitcock
944e17ac4f patricia stuff 2008-04-01 15:44:55 -05:00
William Pitcock
5cefa1d6c8 macro replacement 2008-04-01 15:43:10 -05:00
William Pitcock
330fc5c10c dlink -> rb_dlink 2008-04-01 15:41:52 -05:00
William Pitcock
b2f0da886e ircs[n]printf -> rb_s[n]printf 2008-04-01 15:38:40 -05: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
William Pitcock
75bb1a639c kill patricia.c 2008-04-01 15:11:03 -05:00
William Pitcock
24e9341af3 Initialize libratbox. 2008-04-01 15:10:43 -05:00
William Pitcock
ecc31a989c link against libratbox... 2008-04-01 14:55:00 -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
8682f1cb32 Fix type mismatch with format string.
Could have broken on some 64-bit machines.
2008-03-29 21:56:15 +01:00
Jilles Tjoelker
48a266e5da Cleanups to 005 code, from ratbox (androsyn). 2008-03-18 23:28:03 +01:00
Jilles Tjoelker
7478545cb2 Hide cmode +r from 005 if there is no service{} block. 2008-03-11 23:56:23 +01:00
Jilles Tjoelker
3b005693bd Clearer error messages for failed joins. 2008-03-11 19:48:58 +01:00
Jilles Tjoelker
43f8445df3 Show some target change statistics in /stats t.
- the number of messages blocked by target change on
  this server since it was started
- the number of IPs currently subject to a a lower
  target limit on this server (these expire over time)
2008-03-02 17:03:56 +01:00
William Pitcock
aed5ce90a5 Remove CHFL_DEOPPED entirely.
Since charybdis 2.3 will require TS6, emulating legacy semantics is
unnecessary.
2008-02-27 14:08:27 -06:00
Jilles Tjoelker
5aa453a47f Default connect::flags topicburst to true.
Use ~topicburst if you must disable it.
2008-02-02 17:15:34 +01:00
Jilles Tjoelker
309e4fd03f Update /stats z for removal of struct User from whowas.
This was done in hybrid 5 or earlier...
2008-01-22 22:07:11 +01:00
Jilles Tjoelker
8d0d947de8 send_linebuf_remote(): Remove broken and useless ghost check that can never happen.
Reasoning why it never does anything:
- the to = to->from line makes sure that MyConnect(to)
- then IsPerson(to) && (to == from->from) implies that to == from
- so MyClient(to)
- which cannot happen because it also wants that !MyClient(from)

Originally, the to = to->from line was below, and it did a
fake direction check, killing a client if servers could be
confused about it. The kill cannot do any good with TS6.

The fake direction check is and was performed by the
callers of send_linebuf_remote().
2008-01-17 01:06:32 +01:00
Jilles Tjoelker
19807b5b97 Fix some split servers not appearing in oper /map.
Needed another scache_split() call, in qs_server().
2008-01-16 19:53:42 +01:00
Jilles Tjoelker
c7874951aa kline_exempt does not exempt from D:lines, so don't tell user it does. 2008-01-06 17:41:59 +01:00
Jilles Tjoelker
5ca543e7c5 Remove FLAGS2_NOLIMIT (IsExemptLimits/SetExemptLimits).
This only has an effect at connection time, and the
ConfItem flag suffices for that.
2008-01-06 00:16:57 +01:00
Jilles Tjoelker
e4b9c8e115 Add two missing colons for sendto_one_notice(). 2008-01-06 00:12:51 +01:00
Jilles Tjoelker
19c13ce523 flag_table -> oper_table (more descriptive name) 2008-01-05 22:51:09 +01:00
Jilles Tjoelker
b4838ccdf5 Show full flag name, not letter, when refusing to set umode +s +n or +a. 2008-01-05 01:37:03 +01:00
Jilles Tjoelker
962747349b Send a rate-limited server notice if a blacklist gives a non-127.0.0.x reply. 2008-01-05 00:38:23 +01:00
Jilles Tjoelker
05ee179e43 Update some copyright years. 2008-01-02 22:34:29 +01:00
Jilles Tjoelker
137d856d65 Only accept 127.0.0.x as a dnsbl listing. 2008-01-02 22:32:09 +01:00
Jilles Tjoelker
85e132a46f Update main copyright year. 2008-01-02 00:09:50 +01:00
Jilles Tjoelker
c8de4f0037 Include time the k/d line was set in the reason when reading ban confs.
This correspond to what happens when a kline or dline is set.
2008-01-02 00:06:08 +01:00
Jilles Tjoelker
cdd5b26189 Remove idle time checking (auto disconnecting users idle too long). 2008-01-01 23:04:34 +01:00
Jilles Tjoelker
c4f13a6499 STATS I and TESTMASK: Show some more auth{} flags.
flood_exempt (|), dnsbl_exempt ($), gline_exempt (_)
All these are only shown to opers.
2008-01-01 21:54:27 +01:00
Jilles Tjoelker
f56fdec2a0 Fix a crash when connecting to a server. 2008-01-01 18:47:10 +01:00
Jilles Tjoelker
a63a1eab74 STATS I: Show spoofed auth{} blocks and ^<> flags to remote opers also. 2008-01-01 18:25:04 +01:00
Jilles Tjoelker
997613d2f3 Fix a crash after a local client exits. 2008-01-01 18:15:56 +01:00
Jilles Tjoelker
d61de0adff Remove various obsolete ConfItem statuses (types) and flags. 2008-01-01 16:06:59 +01:00
Jilles Tjoelker
7a8dcc086d Remove long obsolete comment. 2007-12-28 23:23:15 +01:00
William Pitcock
c5c2f506c1 Replace int fd; in local client object with an fde object. 2007-12-28 15:06:33 -06:00
Jilles Tjoelker
35cf4c7998 Use connect_timeout for handshakes; add snote and log when they time out. 2007-12-28 16:38:39 +01:00
Jilles Tjoelker
e2a980439e Remove code for unregistered clients from check_pings_list()
because it is only called for lists of registered clients.
2007-12-28 16:17:39 +01:00
Jilles Tjoelker
06b697a268 Make remote numerics to channels work.
Note that +D clients do not get these.  This is consistent
with how ircu treats remote numerics and with how we treat
server notices from other servers, but not with how locally
generated notices and numerics are sent also to +D clients.
2007-12-26 22:46:43 +01:00
Jilles Tjoelker
7d1f9131fb Consolidate duplicate channel mode flags tables to one. 2007-12-25 01:00:20 +01:00
Jilles Tjoelker
0b580267af Remove "<server> had been connected for <time>" snote.
For registered servers, it is entirely redundant with the
"<server> was connected for <time>.  <traffic>" snote, and
only sent for some ways of closing; for handshakes, you
already know that it had not been connected for long.
2007-12-24 23:29:01 +01:00
Jilles Tjoelker
f2c1b06bcf Make the other notices to snomask +b network wide.
(with the exception of flooding on an &channel)
2007-12-24 22:43:47 +01:00
Jilles Tjoelker
a6f4368b96 Add mass_notice oper priv, enabled by default for compatibility.
Controls /wallops and masked notices/privmsgs.
2007-12-24 21:47:05 +01:00
Jilles Tjoelker
095328a742 Move various flags from flags2 to flags. 2007-12-24 20:58:55 +01:00
Jilles Tjoelker
86142e83d7 Remove unused CONF_FLAGS_DO_IDENTD and FLAGS_NEEDID. 2007-12-24 20:32:41 +01:00
Jilles Tjoelker
29c55c49f2 Remove unused flag FLAGS_CHKACCESS. 2007-12-24 20:26:39 +01:00
Jilles Tjoelker
c3fed903fd Branch merge. 2007-12-24 18:24:49 +01:00
Jilles Tjoelker
420b2c9a10 Remove dot_in_ip6_addr config option. 2007-12-24 18:24:23 +01:00
William Pitcock
c1e5bc4117 comm_locate_fd(), not comm_lookup_fd(). 2007-12-22 16:30:06 -06:00
William Pitcock
5cd74a3b6c linebuf_flush(): use fde_t's. 2007-12-22 16:28:05 -06:00
William Pitcock
5893220fdc wtf mercurial, tbh. 2007-12-22 16:08:34 -06:00
William Pitcock
64513f3675 Automated merge with ssh://hg.atheme.org//hg/charybdis 2007-12-22 14:05:45 -06:00
William Pitcock
2cac65a378 Add some GNUTLS helper code. 2007-12-22 14:05:03 -06:00
Jilles Tjoelker
95d36ef54b It is ok to send 402 to local clients for any hunt_server operation. 2007-12-22 00:20:54 +01:00
Jilles Tjoelker
1ef5b43053 Require resv oper privilege to set cmode +L or +P. 2007-12-18 00:24:05 +01:00
Jilles Tjoelker
1ebe6ffc92 Add resv oper priv, enabled by default for compatibility. 2007-12-17 02:20:14 +01:00
Jilles Tjoelker
c422d2a067 Silence harmless compiler warning. 2007-12-13 00:20:06 +01:00
Jilles Tjoelker
d7f753cd3a Do not copy string passed to add_top_conf()/add_conf_item().
If the caller can keep a function pointer valid, they can
certainly keep a string valid.
This also fixes an error with HAVE_STRDUP undefined.
2007-12-13 00:14:02 +01:00
Jilles Tjoelker
e8149a2c64 Make /rehash help work again. 2007-12-12 22:26:17 +01:00
Jilles Tjoelker
351078d072 Use 127.0.0.1 as nameserver if none can be found in /etc/resolv.conf.
This agrees with bind's behaviour.
2007-12-11 18:37:14 +01:00
Jilles Tjoelker
35f6f850b6 Remove reject entries on unkline/ungline/unxline.
When a user is rejected, remember the hash value of the
ban mask (for klines/glines, hash value of the user part
XOR hash value of the host part) with the rejected IP;
if the kline/gline/xline is removed, remove rejects with
the same hash value also.  Note that this does not happen
for expiries; this is deliberate.
Rejects for no auth{} or dnsbl put a hash value of 0;
they cannot be removed selectively.
2007-12-08 21:54:51 +01:00
Jilles Tjoelker
1cda7a9cb2 Change meaning of "bits" in FNV hash functions to bitlen instead of 32-bitlen.
Do reduction like recommended by
http://www.isthe.com/chongo/tech/comp/fnv/index.html#xor-fold
2007-12-08 19:44:18 +01:00
Jilles Tjoelker
176489286d Mention vhost in serverlog connect log message. 2007-12-06 22:45:26 +01:00
William Pitcock
43de0f45a1 Make sure the nd_dict is always created. 2007-12-03 19:37:33 -06:00
William Pitcock
9802490cbb help system rework, part 1 2007-12-03 19:35:55 -06:00
William Pitcock
b37021a45e nickdelay -> dictionary. 2007-12-03 10:59:25 -06:00
William Pitcock
3e91d7006f I was nuts when I wrote that comment, lets kill it off. 2007-12-02 15:50:54 -06:00
William Pitcock
90187f2112 It compiles, ship it. 2007-12-02 09:41:13 -06:00
William Pitcock
8ac7552983 commands and aliases go from horrible hashtable code to dictionary... try 1 2007-12-02 09:34:45 -06:00
William Pitcock
c98390004f Automated merge with ssh://hg.atheme.org//hg/charybdis 2007-12-02 09:06:50 -06:00
William Pitcock
d6bda36db1 Add irc_dictionary code. 2007-12-02 09:06:25 -06:00
Jilles Tjoelker
6f3a09ff67 Speed up /undline similarly
- Change find_exact_conf_by_address() to work for dlines also.
- Use find_exact_conf_by_address() to find the dline and
  abort immediately if there is no such dline.
- When removing a permanent dline, remove the dline from
  the data structures instead of rehashing bans.
- Convert alternative ways to write the same dline to the
  one in the found dline. (This was changed in unkline too.)
2007-11-30 01:14:12 +01:00
Jilles Tjoelker
4e0f14a0e8 Add find_exact_conf_by_address() to find klines etc by exact mask. 2007-11-28 23:59:49 +01:00
Jilles Tjoelker
0fdb257090 When checking if a nick resv or xline already exists, match exact not wild.
This is important because masks containing @ or # do not
match themselves.
2007-11-25 18:18:07 +01:00
Jilles Tjoelker
c0bc9fe39a Show opers a list of recently (<24hrs) split servers in /map. 2007-11-23 23:38:54 +01:00
Jilles Tjoelker
994544c294 Merge links_cache into scache and rework scache.
This changes flattened /links output to disclose less
routing information and slightly increases memory "leak"
from server names that do not come back anymore.
2007-11-23 22:11:25 +01:00
Jilles Tjoelker
66c8fdd207 Remove Server.up and Server.upid.
Server.up is obsolete, like User.server.
Server.upid has never been really useful.
2007-11-22 00:38:13 +01:00
William Pitcock
c88cdb0095 Get rid of User.server. 2007-11-20 06:36:55 -06:00
nenolod
0a61720ad4 [svn] - we do not need to call find_server() in the function for registering local users 2007-11-20 03:16:43 -08:00
nenolod
cc32202d96 [svn] Explain invalid username rejections to users when they are rejected. 2007-11-20 03:08:23 -08:00
jilles
832942858c [svn] Fix desyncs with very long extbans. Bans can now be upto 195 chars long. 2007-11-07 15:45:14 -08:00
jilles
5b87d08a05 [svn] allocate_channel(): no need to truncate name, its only caller already does it
furthermore, truncating here causes an inconsistent channel name
2007-11-07 13:45:14 -08:00
jilles
fea1ad5224 [svn] Fix a memory leak. 2007-10-27 14:56:53 -07:00
jilles
c614f4a9c9 [svn] Make EXTBAN 005 token like unreal's (, instead of :). 2007-09-09 11:59:08 -07:00
nenolod
cda8e9b8db [svn] - TS6 is always enabled now.
There is no reason for it to not be enabled on a proper charybdis network.
2007-08-08 23:47:26 -07:00
nenolod
fffecc26ed [svn] - better text for RPL_LOAD2HI explaining in a better way what is going on 2007-08-08 23:40:52 -07:00
jilles
2f15f871ff [svn] Make highest connection counts a bit more consistent. 2007-08-01 13:18:12 -07:00
jilles
4f3f411b34 [svn] Fix wrong line numbers in ircd.conf parser (some comments).
from ratbox 2.2 (androsyn).
2007-07-30 10:26:00 -07:00
jilles
fd488ac17a [svn] Use mask_match() to check bans from local clients for
redundancy. This fixes the problem that bans like *!?@*
prevent any ban starting with *!*@ being set.
2007-07-14 06:34:50 -07:00
jilles
df251055ca [svn] Add mask_match(), like ircu mmatch().
This compares two masks and returns whether the "new" is
more specific than or equal to the "old". The difference
with match() is that a '?' in "old" does not match a '*' in
"new".
2007-07-14 06:32:18 -07:00
jilles
94d53e53a4 [svn] add_id() for local client: do not collapse() the ban mask.
The code calling this already collapses the mask, and if
not, doing it here would cause a desync.
2007-07-14 05:20:48 -07:00
jilles
8aba962d43 [svn] monitor: send the same message buffer to all users
monitoring a certain nick; the target field of the
numeric becomes *, much like server notices
2007-06-30 15:15:35 -07:00
nenolod
f80a18239d [svn] - "please report this to the ratbox developers" -> "please report this to the charybdis developers". not sure how we overlooked this for so long. 2007-06-06 09:25:21 -07:00
jilles
7d08aa8911 [svn] xline/resv wildcard checking:
- count escaped (\) characters as one nonwild
- accept strings without wilds no matter how short they are
2007-06-04 09:04:49 -07:00
jilles
b808adf9d3 [svn] - fold conf_connect_allowed() into accept_connection()
- extend add_connection() so that exempt{}s apply to max unregistered
  connections per ip
from ratbox
2007-05-18 13:31:33 -07:00
jilles
8017ad2d27 [svn] Remove s_assert in del_unknown_ip() supposedly if the ip
cannot be found, it is not feasible to avoid that case
entirely with m_webirc.c.
2007-05-18 12:14:18 -07:00
jilles
54015b5fea [svn] Apply ratbox flood fix. 2007-05-14 15:21:16 -07:00
jilles
1d3e262e40 [svn] Remove emptyline craq because it leaks memory on /rehash motd etc.
from ratbox 2.2 (anfl/Androsyn)
2007-05-02 12:56:40 -07:00
jilles
f1e35c19a7 [svn] Merge old trunk r2065,r2067:
channel_modes(): get rid of the trailing space
also make the *pbuf check work like it should
(don't call IsMember another time if we already
gave one parameter)
simplify a bit more, update comments
2007-04-26 16:01:16 -07:00
jilles
e2b44358a2 [svn] Move new_local_user hook, so it is possible to call
exit_client() from it, refusing the connection.
2007-04-15 09:54:50 -07:00
jilles
ec3fbdecd2 [svn] Only free PreClient struct when the rest of the Client
is freed, not immediately upon exit_client(). Doing this
would cause problems with sasl's new_local_user hook
vs hooks that exit the client there.
2007-04-15 09:49:56 -07:00
nenolod
725a6c5dc9 [svn] - 2.2 operline 2007-04-06 14:25:37 -07:00
jilles
afc20e91f7 [svn] Change code that checks maxclients limit: allow exactly
the configured amount of non-exceed_limit clients.
Code that appeared to limit exceed_limit clients too
but less heavily removed (it was not effective because
the parentheses were wrong).
2007-04-04 17:24:47 -07:00
jilles
23836ead45 [svn] By default, leave MAX_BUFFER fds free for log files,
server connections, ident lookups, exceed_limit clients,
etc. Mention this in example.conf and reference.conf.
2007-04-04 17:12:55 -07:00
jilles
1aa8ffcbfd [svn] Make the code that raises fd rlimit to hard limit work. 2007-04-03 15:25:11 -07:00
nenolod
e8a2d50da8 [svn] - some more transit to sendto_one_numeric(). 2007-04-03 03:15:39 -07:00
nenolod
885203035d [svn] - change some sendto_one() to sendto_one_numeric(). 2007-04-03 03:11:06 -07:00
nenolod
6c8cbf341b [svn] - remove x86-optimized hash code. 2007-04-03 02:37:03 -07:00
nenolod
6fcb8629ae [svn] - remove ALL braindead 2.8 I/O artifacts: MASTER_MAX, HARD_FDLIMIT, HARD_FDLIMIT_, MAXCONNECTIONS, MAX_CLIENTS, etc.
they are ALL gone. all of this stuff is now determined at runtime via getrlimit(2).
- due to this, devpoll is broken. i'm not motivated to fix it at the moment.
2007-04-03 02:21:31 -07:00
jilles
8d53472c4a [svn] Change copyright years in version.c.SH as in release-2.1 r3339. 2007-04-01 15:10:05 -07:00
jilles
64f2a7eb2c [svn] Merge old trunk r2077,r2079:
- Move closing of servlink control fd to close_connection()
  instead of doing it in exit_local_server(), and make sure
  we first close the data fd and then the control fd.
- Have servlink process ready fds in order net, data, ctrl
  instead of ctrl, data, net.  This seems to fix the problem
  that squit reasons do not show up on the other side of a
  ziplink (by making it send any final SQUIT and/or ERROR
  before noticing the closed control fd).
2007-03-29 13:03:06 -07:00
jilles
8d19a2b257 [svn] Merge old trunk r2081:
Don't say that services cannot be killed in
ERR_ISCHANSERVICE message (given when trying
to kick or deop them), as that's not the case.
2007-03-28 08:40:24 -07:00
jilles
42bda3f3d2 [svn] Merge old trunk r2835:
resolver: if sendto(2) fails, try sending to the next nameserver
2007-03-28 08:04:06 -07:00
jilles
c83cbedc0e [svn] Merge old trunk r2294:
Zero out the varlist passed to substitution_* when rejecting DNSBL clients.
2007-03-28 07:33:50 -07:00
jilles
4b7e690457 [svn] Don't leak auth{} spoofed ip for I-line is full notice either. 2007-03-18 07:44:24 -07:00
jilles
1ebf4db4c6 [svn] Allow /invite (but not invex) to override +r, +l, +j in
addition to +i. As before, a restrictive mode must be in
place at /invite time for the invite to have an effect;
+r does not count as a restrictive mode if the user is
logged in; +l and +j always count as restrictive modes to
allow for cases where they would allow join at /invite
time but not when the user tries to join.
2007-03-15 11:09:08 -07:00
jilles
307328bb13 [svn] Remove invite_ops_only, forcing it to YES. 2007-03-13 09:09:28 -07:00
jilles
0734f634d9 [svn] Move username check after xline and dnsbl checks, so it
will not complain to opers about clients who are xlined
or blacklisted anyway (both of which silently reject).
2007-03-06 06:07:11 -08:00
nenolod
c2d96fcbff [svn] - add config option for setting max_clients. 2007-03-05 10:58:38 -08:00
nenolod
68ff929f3d [svn] - remove get_maxrss() and all of that insecure and unsafe nonsense 2007-03-05 10:51:17 -08:00
nenolod
c961476e55 [svn] - clear up use of fd_table in ircd. 2007-03-05 09:28:27 -08:00
jilles
14e23b0e1e [svn] Fix some cases where the size argument to strlcpy()
for usernames and hostnames is 1 too small.
2007-03-04 17:14:46 -08:00
jilles
606384aea8 [svn] Don't leak auth{} spoofed IP addresses in +f notices.
from ratbox (androsyn)
2007-03-02 09:45:47 -08:00
jilles
652b8478fb [svn] Make oper_up() take +i/-i during opering up into account
(e.g. no_oper_invis extension, +i in operator::umodes).
Remove the hack from no_oper_invis.
2007-02-24 11:34:28 -08:00
jilles
1178125363 [svn] Put "End of Channel Quiet List" instead of
"End of Channel Ban List" for a +q list.
Due to client restrictions the numerics for
quiet lists must be the same as for ban lists.
2007-02-21 11:52:51 -08:00
jilles
9b6ff0c8f9 [svn] Make -logfile work again. 2007-02-11 08:54:43 -08:00
jilles
a8086a7ca0 [svn] Change handling of modularized umodes:
- keep the bitmask reserved forever to the letter, fixing
  the problems when loading multiple umode modules,
  unloading them and then loading them in a different order
- don't allow local users to change umodes which have
  been unloaded and don't set them on new users via
  default_umodes
2007-02-04 07:08:04 -08:00
jilles
01cebbd88e [svn] Move find_umode_slot() from libcharybdis/tools.c to src/s_user.c. 2007-02-03 17:59:38 -08:00
jilles
4d7a1ee5d1 [svn] Change two occurances like match(userinput, target_p->name) ||
match(target_p->name, userinput) to just match(userinput,
target_p->name). No client name can contain * or ? now.
2007-01-31 17:07:42 -08:00
jilles
e26e2b1954 [svn] Do not try find_server() on a name find_client() has
returned NULL for, as this will always return NULL
since the removal of hostmasking.
2007-01-31 16:49:07 -08:00
jilles
f42e9cebee [svn] Remove hash_find_masked_server(), which made it possible
to specify the full (unmasked) name of a server behind
a hostmask. As a result find_any_client() (for prefixes)
becomes equal to find_client(), so remove that too.
2007-01-31 16:19:14 -08:00
jilles
e5d9ca18eb [svn] Remove '*' from valid server name characters.
This makes it impossible to connect hostmasked servers.
(This support didn't work well anyway, was incompatible
with TS6 and we never masked ourselves.)
2007-01-31 16:02:35 -08:00
jilles
63aecfb960 [svn] Change spambot, flooder and jupe joiner notices from host to orighost. 2007-01-31 15:57:18 -08:00
jilles
dd12a19c2c [svn] Include real hostname in Closing Link message for unknown
connections that have sent USER. This is helpful for
k-lined users while not breaking server IP hiding.
2007-01-26 10:52:11 -08:00
nenolod
5366977b4f [svn] Backport from early 3.x:
--
nenolod     2006/09/27 16:39:14 UTC	(20060927-2178)
  Log:
  - remove "Processing connection to foobar.net" message


  Changes:	Modified:
  +0 -3		trunk/src/s_auth.c (File Modified)


nenolod     2006/09/27 16:34:26 UTC	(20060927-2176)
  Log:
  - missed the processing connection one (actually, we can probably nuke this one)


  Changes:	Modified:
  +1 -2		trunk/src/s_auth.c (File Modified)


river       2006/09/27 16:33:05 UTC	(20060927-2174)
  Log:
  get_client_name = stupid



  Changes:	Modified:
  +10 -7	trunk/modules/core/m_kill.c (File Modified)


nenolod     2006/09/27 16:32:37 UTC	(20060927-2172)
  Log:
  - remove excessive arguments


  Changes:	Modified:
  +1 -2		trunk/src/s_conf.c (File Modified)
  +1 -1		trunk/src/s_user.c (File Modified)


nenolod     2006/09/27 16:30:59 UTC	(20060927-2170)
  Log:
  - use sendto_one_notice() for on-connect notices too.


  Changes:	Modified:
  +10 -10	trunk/src/s_auth.c (File Modified)


nenolod     2006/09/27 16:27:01 UTC	(20060927-2168)
  Log:
  - use sendto_one_notice() in the core, too.


  Changes:	Modified:
  +2 -2		trunk/src/chmode.c (File Modified)
  +8 -15	trunk/src/modules.c (File Modified)
  +3 -5		trunk/src/s_conf.c (File Modified)
  +1 -2		trunk/src/s_newconf.c (File Modified)
  +20 -57	trunk/src/s_user.c (File Modified)


river       2006/09/27 16:19:25 UTC	(20060927-2166)
  Log:
  the KILL command will use get_client_name(, SHOW_IP) instead of
  target->name, and will show a more useful error for local opers



  Changes:	Modified:
  +6 -4		trunk/modules/core/m_kill.c (File Modified)


nenolod     2006/09/27 16:09:48 UTC	(20060927-2164)
  Log:
  - fix bugs in sendto_one_notice()/sendto_one_numeric() where a client identifier won't be sent to unregistered clients


  Changes:	Modified:
  +4 -2		trunk/src/send.c (File Modified)


nenolod     2006/09/27 16:05:46 UTC	(20060927-2161)
  Log:
  - back out r2159


  Changes:	Modified:
  +1 -1		trunk/include/client.h (File Modified)


nenolod     2006/09/27 16:04:05 UTC	(20060927-2159)
  Log:
  - get_id(): fall back to "*" if client has no known name


  Changes:	Modified:
  +1 -1		trunk/include/client.h (File Modified)


nenolod     2006/09/27 16:01:29 UTC	(20060927-2157)
  Log:
  - convert to sendto_one_notice().


  Changes:	Modified:
  +2 -3		trunk/unsupported/m_clearchan.c (File Modified)
  +4 -6		trunk/unsupported/m_force.c (File Modified)


nenolod     2006/09/27 15:57:11 UTC	(20060927-2155)
  Log:
  - use sendto_one_notice() in many places instead of
sendto_one(source_p, ":%s NOTICE %s :", ...);


  Changes:	Modified:
  +10 -25	trunk/extensions/example_module.c (File Modified)
  +5 -14	trunk/extensions/hurt.c (File Modified)
  +1 -2		trunk/extensions/m_42.c (File Modified)
  +7 -12	trunk/extensions/m_mkpasswd.c (File Modified)
  +1 -2		trunk/extensions/m_ojoin.c (File Modified)
  +1 -2		trunk/extensions/m_opme.c (File Modified)
  +3 -3		trunk/extensions/spy_whois_notice.c (File Modified)
  +3 -3		trunk/extensions/spy_whois_notice_global.c (File Modified)
  +3 -7		trunk/modules/core/m_die.c (File Modified)
  +2 -4		trunk/modules/core/m_kill.c (File Modified)
  +2 -2		trunk/modules/core/m_squit.c (File Modified)
  +1 -2		trunk/modules/m_challenge.c (File Modified)
  +11 -15	trunk/modules/m_connect.c (File Modified)
  +20 -28	trunk/modules/m_dline.c (File Modified)
  +2 -2		trunk/modules/m_etrace.c (File Modified)
  +11 -21	trunk/modules/m_gline.c (File Modified)
  +2 -4		trunk/modules/m_kline.c (File Modified)
  +1 -2		trunk/modules/m_rehash.c (File Modified)
  +3 -7		trunk/modules/m_restart.c (File Modified)
  +31 -45	trunk/modules/m_set.c (File Modified)
  +2 -4		trunk/modules/m_testmask.c (File Modified)
  +5 -8		trunk/modules/m_unreject.c (File Modified)
  +2 -5		trunk/modules/m_xline.c (File Modified)
--
2007-01-24 23:23:01 -08:00
nenolod
92fb5c3175 [svn] - keyword-subst from charybdis 2.2. 2007-01-24 23:08:21 -08:00
nenolod
212380e3f4 [svn] - the new plan:
+ branches/release-2.1 -> 2.2 base
  + 3.0 -> branches/cxxconversion
  + backport some immediate 3.0 functionality for 2.2
  + other stuff
2007-01-24 22:40:21 -08:00