Bram Matthys
6067202cdf
Rewrite SJOIN to fix a bug where modes were sometimes cut-off resulting
...
in incorrect bans being added.
2017-01-06 11:11:19 +01:00
Bram Matthys
d003f8bfe9
Merge pull request #64 from Adam-/unreal40+remove_unknown
...
remove_unknown: don't send squits for unknown uids and don't leak server ip in quit message
2016-12-29 21:44:51 +01:00
Bram Matthys
9da4c7e5d0
Added DNSBL check exemption: except blacklist { mask 1.2.3.4; };
2016-12-29 11:38:49 +01:00
Bram Matthys
aae0971cf4
Add the ability to set specific ssl options in listen blocks and link blocks.
...
This allows you to for example specify a specific certificate/key on an
serversonly port and in link block (a self-signed 10 year valid certificate)
and use a short-lived (XX day) Let's Encrypt certificate on the other ports.
And several other uses, of course.
2016-12-29 08:37:15 +01:00
Bram Matthys
9a8645973c
Added set::ssl::options::no-client-certificate
...
This is really NOT a recommended setting but may be necessary to work around
some browser issues for wss://.
2016-12-16 17:20:27 +01:00
Adam
10c038ffc0
remove_unknown: don't send squits for unknown uids, don't leak server ips in quit msg
2016-12-07 08:19:16 -05:00
Bram Matthys
b444116c12
Use exact struct type & remove unnecessary casts.
2016-06-26 15:08:55 +02:00
Bram Matthys
8ddf0a8762
Remove (now) confusing comment regarding local/remote struct members in aClient
2016-05-22 20:11:50 +02:00
Bram Matthys
caa5eba30f
Move blacklist hits to snomask +b (new) rather than notifying all ircops.
...
This snomask is set by default but this can be overridden via
set::snomask-on-oper or oper::snomask. Suggested by hayek (#4566 ).
2016-03-04 13:50:55 +01:00
Bram Matthys
4c2323e1a3
Now at the right place..
2015-12-16 11:22:58 +01:00
Bram Matthys
f04e95376b
/LIST never finished if more than 50-100 channels ( #4473 ). Oh neno... does it ever stop?
2015-12-09 19:42:50 +01:00
Bram Matthys
2de3fbf9d0
Remove MODE_NOCOLOR and MODE_STRIP leftovers.
2015-10-17 19:51:39 +02:00
Bram Matthys
ad23afc81f
Improve (error) messages shown on console while booting. Fatal boot errors are now shown on the console, no need to check ircd.log.
2015-08-10 21:50:23 +02:00
Bram Matthys
b072a80638
get rid of local->ip stuff in throttle
2015-07-28 17:47: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
d15701bced
Make ident code more ipv4/ipv6 neutral. This will break things until we do the socket split.
2015-07-28 14:44:42 +02:00
Bram Matthys
80147b2914
Make throttling code work on aClient * structs. Other code may change later (makes it easier).
2015-07-28 14:05:41 +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
6f6b713fce
sendto_server() w/multiple (combined) caps or nocaps was broken. It matched on ANY cap instead of ALL caps.
2015-07-20 16:42:01 +02:00
Bram Matthys
390a4c2494
Remove "PROTOCTL HCN" as we now include the IP in HCN-alike connecting messages.
2015-07-19 18:20:40 +02:00
Bram Matthys
209a5a3762
Start with moving ip_str stuff
2015-07-19 13:09:51 +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
19ad342a73
Start with client/localclient split
2015-07-19 11:50:32 +02:00
Bram Matthys
c06dc9a142
Get rid of #ifdef CLEAN_COMPILE, along with some other shit
2015-07-16 17:22:51 +02:00
Bram Matthys
dcb4e382a3
Apparently on newer OpenSSL versions (unreleased) you can't access the read buffer. So use this method instead. Ohh.. we are so helpful to our users..
2015-07-15 15:48:00 +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
Bram Matthys
ef341b1f6d
Link to servers faster after boot. Check links for re-linking more often. Allow connfreq of 5 seconds. Set default to 15. Get rid of HANGONGOODLINK/HANGONRETRYDELAY stuff.
2015-07-14 15:23:28 +02:00
Bram Matthys
f1a95ffd0b
Remove IPList - unused
2015-07-13 14:35:36 +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
Bram Matthys
a9fc2243aa
support multiple vhost::swhois items for consistency
2015-07-10 10:44:40 +02:00
Bram Matthys
c2f4e0fb2a
Support multiple oper::swhois items.
2015-07-10 10:15:36 +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
15977e011d
remove umode 'g' (failops), we have snomasks and oper umode for this.
2015-07-09 14:09:02 +02:00
Travis McArthur
752a34011d
Remove IsAnOper
2015-07-06 18:09:37 -07:00
Bram Matthys
b52b7afabe
Remove local irc operator (locop)
2015-07-06 20:14:02 +02:00
Bram Matthys
422b339be1
In 2003 I added PROTOCTL CHANMODES= so other servers (and services) could
...
easily deal with "parameter eating" of unknown channel modes.
Now, 12 years later, finally added the code to do this.
This prevents some (serious) desynching if you have a parameter-eating
channel mode on one server and not on the other.
Obviously, you should always try to have the same featureset on all
servers, but sometimes this is not possible, like when upgrading..
2015-07-04 19:25:27 +02:00
Travis McArthur
58b61ab336
Remove old oper macros not used now
2015-06-27 14:14:01 -07:00
Travis McArthur
a1e7fefe94
Remove IsPrivileged
2015-06-27 14:13:26 -07:00
Travis McArthur
81cba1b12d
Remove remaining OPCan*
...
Updates to default operclasses as well
2015-06-26 11:08:00 -07: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
Travis McArthur
527a00dafa
More ACL work, rip out *admin support (mostly...)
...
Not totally tested - I validated it built, I validated ACL validation worked, I validated that most of the ripped out functionality seemed to be absent, eg: we still set the modes (backwards compat w/ services?) but we don't actually check them anywhere, or add them to your whois.
2015-06-24 19:17:40 -04: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
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