1
0
mirror of https://github.com/unrealircd/unrealircd.git synced 2026-06-27 05:36:38 +02:00
Commit Graph

365 Commits

Author SHA1 Message Date
Bram Matthys ae23d99e07 Get rid of #if INET6 stuff, as all supported OS's support IPv6 at compile time. Use set::options::disable-ipv6 to disable IPv6 at runtime. Cleanup unused IPv6 structs/vars/functions/.. 2015-07-29 10:31:12 +02:00
Bram Matthys a29baf96f6 upgrade some ipv4-only stuff. Also set::link::bind-ip was broken in multiple ways. 2015-07-28 22:24:17 +02:00
Bram Matthys fa87577918 and some more. 2015-07-28 22:14:58 +02:00
Bram Matthys 47ec1da3f5 Remove unused functions 2015-07-28 21:42:40 +02:00
Bram Matthys 46ee510da6 ipv4/ipv6 split. interim commit (does not compile) 2015-07-28 17:42:24 +02:00
Bram Matthys 3577583eaf ipv4/ipv6 split - phase 1 (unstable!!) 2015-07-28 16:20:00 +02:00
Bram Matthys a444964730 Convert TLD code to use match_user(): MOTD OPERMOTD BOTMOTD RULES etc.. 2015-07-28 13:50:47 +02:00
Bram Matthys 709c7e890e Use match_user() for is banned checking. This also makes CIDR work in bans/exempt/invex.
Remove ban_realhost, ban_virthost, ban_cloakhost and ban_ip stuff. Should be just as fast if you use match_user() now.
2015-07-28 13:39:56 +02:00
Bram Matthys 58b864edd5 Re-do CIDR and at the same time all the user matching stuff. Introducing match_user(mask, acptr, options): this should be used everywhere rather than the many DIY routines everywhere that create a nick!user@host and then run a match() on it.
The match_user() function is not been fully tested yet, at this point I'm happy we can compile again.
2015-07-28 13:26:03 +02:00
Bram Matthys 5bfa5c701e Never understood why it's called get_sockhost() if it actually sets it. Renamed to set_sockhost() 2015-07-27 18:30:25 +02:00
Bram Matthys 85dceb0bae mark some stuff with __attribute__((warn_unused_result)) 2015-07-25 20:29:04 +02:00
Bram Matthys 2cb395216a First version of crash reporter. TODO: Windows, SSL (HTTPS), prettify code, .. 2015-07-24 21:21:35 +02:00
Bram Matthys 6be099d2b1 Actually wait for the ident response rather than just hope it to arrive in time (which it often won't). 2015-07-23 12:58:33 +02:00
Bram Matthys 1452a2821b sendto_server() w/multiple (combined) caps or nocaps was broken. It matched on ANY cap instead of ALL caps. 2015-07-20 16:39:47 +02:00
Bram Matthys 6379956521 strip 2 useless args from sendto_connect & sendto_fconnect (maybe useful in the past, not anymore) 2015-07-19 13:14:37 +02:00
Bram Matthys 13fffa4e1a split all the local client stuff to acptr->local. makes it a lot easier to catch bugs.
If the IRCd crashes then it's likely not by this change but rather an existing issue that was previously gone unnoticed.
2015-07-19 12:48:18 +02:00
Bram Matthys 50d1b194df Linking: for outgoing connects, only support SSL/TLS by default (either 'directly' on an ssl port or via STARTTLS 'upgrading'). Set link::outgoing::options::insecure to disable. 2015-07-15 12:42:47 +02:00
Bram Matthys 1ba5f95ecb For ougoing server links, attempt to upgrade the connection via STARTTLS if not using SSL/TLS already. 2015-07-15 12:09:11 +02:00
Peter Powell 53bb3c0fb3 Use "NOTICE *" before registration instead of "NOTICE AUTH".
AUTH is a valid nickname so sending notices to it is probably not
a good idea. Use * as the target instead as done with numerics
when the nick is not available.

This mimics the behaviour in Charybdis, IRCD-Hybrid, InspIRCd 2.2,
Plexus 4, etc.
2015-07-14 13:20:32 +01:00
Bram Matthys f1a95ffd0b Remove IPList - unused 2015-07-13 14:35:36 +02:00
Bram Matthys 68ba94c136 Make './unreal backtrace' work again. Hmmm. 2015-07-12 18:07:10 +02:00
Bram Matthys 372ce82335 Make client capabilities a modular sub-system, as it should have been since the beginning. 2015-07-12 17:10:48 +02:00
Bram Matthys 6c0ebb5bd3 Protection against linking race conditions is back again (IOTW: allow very rapid re-linking), but only if your network is fully 3.4.x (actually: current git unreal34 or later)
Re-implemented PROTOCTL SERVERS= which nenolod ripped out (#4355).
Add 2nd argument to PROTOCTL EAUTH=servername,unrealprotocol
Change UnrealProtocol from 2350 to 2351
2015-07-10 21:57:13 +02:00
Bram Matthys 71d3e8dbfa New function AddListItemPrio, since we now use priorities in two places already (swhois, hooks). 2015-07-10 11:10:10 +02:00
Travis McArthur 2450909c26 Change name of OperEval... 2015-07-09 12:31:45 -07:00
Bram Matthys f3199ec5e5 1) unset the swhois you got via a vhost upon MODE -t. 2) allow MODE yourself -t
which will unset your vhost & give you a cloaked host (#2613, suggested by Stealth)
2015-07-09 18:43:21 +02:00
Bram Matthys 2f8cb55e47 Add extended SWHOIS support. Allows multiple swhoises and tracking of who/what set the swhois.
Added swhois_add / swhois_delete functions which also take care of broadcasting
New remove_oper_privileges() function, will move the rest to use this (svsnoop svsmode etc)
Not finished yet...
2015-07-09 16:26:52 +02:00
Bram Matthys d59b7b4129 add sendto_umode_global() to h.h 2015-07-09 14:52:12 +02:00
Bram Matthys 15977e011d remove umode 'g' (failops), we have snomasks and oper umode for this. 2015-07-09 14:09:02 +02:00
Bram Matthys 7b02afb3e5 Make MOD_LOAD and MOD_UNLOAD have a useful argument: pass modinfo, just like in MOD_TEST and MOD_INIT.
Change MOD_TEST/MOD_LOAD/etc macro's (this breaks all modules). Now just use this:
MOD_INIT(modulename)
{
// you can access modinfo here.. or other stuff...
}

(Similar to the CMD_FUNC() macro)

Rather than:
DLLFUNC int MOD_INIT(name)(ModuleInfo *modinfo)
{
//...
}
2015-07-08 17:57:02 +02:00
Bram Matthys b52b7afabe Remove local irc operator (locop) 2015-07-06 20:14:02 +02:00
Bram Matthys f58402365c Moved jointhrottle from channel mode +j to set::anti-flood::join-flood
with a default of 3:90 (3 joins per 90 seconds). There's rarely any need
to configure this on a per-channel basis and this way it's enabled by
default for everyone (unless you decide not to load load the module)
2015-07-05 13:31:56 +02:00
Bram Matthys b04776dc3b Broadcast PROTOCTL CHANMODES= on change (eg: module loaded or unloaded) 2015-07-04 20:50:57 +02:00
Bram Matthys 1a1ef4d0d3 Fix MODVAR stuff on Windows. Fixes a crash. 2015-06-28 10:41:49 +02:00
Travis McArthur 10bfb21321 Remove most of OPCan functionality - more later 2015-06-25 21:46:55 -07:00
Bram Matthys 80362e0d9c Fix compile warnings (and possibly a crash in dcc deny code introduced a week or so ago) 2015-06-25 22:38:22 +02:00
Bram Matthys 0f2af3f506 current 3.4.x git is really bleeding edge now, come back in a day or so:
* remove netadmin, services-admin, admin, co-admin.
* remove all oper flags (there are some placeholders for the next... <24hrs..)
* ADMINCHAT and NACHAT are gone, since admin & netadmin no longer exist
* SVSO used oper flags, but this no longer exists, SVSO removed. maybe later we can add some sort of replacement.. maybe..
* re-style the m_oper code a bit
2015-06-25 22:26:53 +02:00
Bram Matthys dd3c4ac4f4 Insert an extra parameter in UmodeAdd and SnomaskAdd to indicate "unset this on de-oper". Safer and better than in XYZ places in the code. 2015-06-21 20:37:53 +02:00
Bram Matthys c0f18b3e8e Replace user mode +v ("victim", receive infected DCC notices) with snomask +D (modules/snomasks/dccreject). 2015-06-21 19:48:13 +02:00
Bram Matthys 7f5f26d0d8 Move user mode +R to usermodes/regonlymsg 2015-06-21 11:14:24 +02:00
Bram Matthys 8866793bdb Move user mode +p to usermodes/privacy 2015-06-21 10:40:25 +02:00
Bram Matthys 8cb381cc8e Move user mode +S to usermodes/servicebot.
TODO: hide channels in /WHOIS and some more testing. Tomorrow.. ;)
2015-06-20 21:09:17 +02:00
Bram Matthys 489230cebf Move user mode +q to usermodes/nokick 2015-06-20 20:05:33 +02:00
Bram Matthys 10dd6267de Move user mode +W to usermodes/showwhois 2015-06-20 18:56:08 +02:00
Bram Matthys 69fa434a0c Removed helpop user mode (not the command) since nowadays it does nothing but add a title to whois. You can use swhois for that, like via vhost::swhois. 2015-06-20 18:42:53 +02:00
Bram Matthys 4ae1eb23f0 Move user mode +B to usermodes/bot module.
Also add HOOKTYPE_WHO_STATUS.
2015-06-20 18:30:57 +02:00
Travis McArthur 221bc2a92b Refactor auth ACL to remove superfluous param 2015-06-14 17:59:37 -04:00
Bram Matthys 501daede0c move cgiirc block to webirc module and rename the block to webirc { } 2015-06-12 20:16:26 +02:00
Bram Matthys dbda0eb419 Ask Windows users if they want to automatically upgrade the configuration file(s) [GUI mode] 2015-06-08 10:09:51 +02:00
Bram Matthys e1b7c34c96 Fix various warnings, including one reported by Adam: possible crash in aliases (introduced 1-2wks ago) 2015-06-07 22:07:00 +02:00