Commit Graph

481 Commits

Author SHA1 Message Date
Alexey Sokolov
0a355636b2 Cleanup ZNC_LVREFQUAL 2023-11-18 15:07:46 +00:00
Alexey Sokolov
9835f76939 Use std::variant to save a bit of RAM 2023-11-18 13:39:18 +00:00
Alexey Sokolov
a1a254bef1 Update password hashes from SHA-256 to Argon2id
These days salted SHA-256 is considered quite weak for passwords.

Transparently upgrade existing hashes upon login.

Bump cmake requirement to able to use IMPORTED_TARGET, this will allow
further cleanup in next commits.
2023-09-27 01:11:07 +01:00
Falk Rund
f9fd05c307 Welcome to 2023 2023-01-01 06:49:00 +01:00
Alexey Sokolov
c55237be0b Make CUser::Put* send to all clients
Instead of only networkless clients, which is a very rare case, because
most clients are connected to some network. This resulted in
CModule::PutModule to sometimes have no effect.

I fixed CUser::PutStatus and PutStatusNotice back in 2011 in
0b6d609014, but missed these 3 functions.

Deprecate CUser::PutAllUser() which is now essentially alias to
CUser::PutUser().
2022-10-28 23:18:43 +01:00
Falk Rund
6402d241ac Welcome to 2022
The same procedure as last year, Miss Sophie?
Same procedure as every year, James.
2022-01-01 14:05:32 +01:00
Alexey Sokolov
7ab8446dcf Merge pull request #1814 from blendbyte/new-deny-options
New User Options: DenySetIdent, DenySetNetwork, DenySetRealName, DenySetQuitMsg, DenySetCTCPReplies

Close #1796
2021-11-27 14:18:39 +00:00
Alexey Sokolov
dcb5f3df82 Fix build with libressl
It got another feature of openssl implemented, which broke this
2021-11-14 00:45:01 +00:00
Bradley Shaw
fe475e1ef0 Add more deny options
DenySetIdent - Denies setting ident

DenySetNetwork - Denies adding/removing networks/servers

DenySetRealName - Denies setting realname

DenySetQuitMsg - Denies setting quitmsg

DenySetCTCPReplies - Denies adding/removing CTCP replies
2021-07-03 17:16:42 +01:00
Alexey Sokolov
fd71a69fab Rewrite message parsing using string_view
It's a bit too early yet to require C++17 so the implementation from
BackportCpp (string_view-standalone) is used instead.

Fixes https://crbug.com/oss-fuzz/34413 - slow message parsing on huge
messages. In real word, messages can't be that big, because CSocket
enforces a line length limit.

This can be considered a regression of 1.7.0, because before it, instead
of gathering params into a vector, code was searching 1st word in the
string, then 2nd word, then 3rd word, starting from beginning each time.
It was not very efficient, but the number of passes over the string was
limited.
2021-05-22 09:57:04 +01:00
MAGIC
99687b0f24 Welcome to 2021 2021-01-01 19:37:07 +01:00
njhanley
99b33eade9 Add MoveChan and SwapChans commands 2020-09-29 19:32:45 -04:00
njhanley
926d140a47 Respect order of subconfigs in znc.conf 2020-09-03 00:27:15 -04:00
NuclearW
c79961c514 Add support for cap account-tag
The account-tag capability is now requested when ZNC connects to an IRC server, the same is then offered to clients connecting.
This permits the tag to then pass through to account-tag aware clients.
2020-08-02 23:26:17 -04:00
Alexey Sokolov
dd42fcd209 Remove autoconf, leave only CMake 2020-05-01 23:44:19 +01:00
Alexey Sokolov
ff7758b573 Increase version number to 1.9.x 2020-05-01 22:20:07 +01:00
Alexey Sokolov
54053c0676 Return version number to git: 1.8.x 2020-05-01 22:18:38 +01:00
Alexey Sokolov
6295fffee5 ZNC 1.8.0-alpha1 2020-03-29 15:23:47 +01:00
Alexey Sokolov
f3d7922499 Update copyright in files which were missing in the previous update 2020-01-05 11:37:51 +00:00
MAGIC
9081aa971d Welcome to 2020 2020-01-02 00:36:05 +01:00
Alexey Sokolov
c0e71184be Backport SSL changes from asio branch (#1639).
This shouldn't change any behavior.
2019-12-29 13:03:52 +00:00
Aspen (linudaemon)
95369455fc Rework MODE/RPL_CHANMODEIS handling for trailing args (#1661)
Some servers may send a colon even if the last parameter doesn't need it, currently this leads to issues with permission/mode tracking, as the core doesn't handle the colon properly.

This fix replaces reconstructing the parameter string with just passing a vector of the relevant parameters to CChan::SetModes() and adds overrides for CChan::SetModes() and CChan::ModeChange() that accept the vector instead.

Clean up uses of old CModeMessage::GetModes()
2019-08-08 21:54:49 +01:00
Alexey Sokolov
2c951bcac1 Merge branch 'master' of github.com:znc/znc 2019-06-15 02:28:30 +01:00
Alexey Sokolov
ac66d48430 Merge branch '1.7.x' 2019-06-15 02:02:42 +01:00
Alexey Sokolov
8de9e376ce Fix remote code execution and privilege escalation vulnerability.
To trigger this, need to have a user already.

Thanks for Jeriko One <jeriko.one@gmx.us> for finding and reporting this.

CVE-2019-12816
2019-06-15 02:00:42 +01:00
girst
3988cfef98 ListStyle (compact) replacement for two-column tables
by calling CTable::SetStyle(CTable::ListStyle) one can switch from the
bulky and unreadable-on-narrow-devices-or-nonmonospaced-fonts tables to
a more compact list style of output. The first "column" will be bolded
for better visibility and seperated with a colon from the second.

This is currently designed to replace two column tables only.
2019-05-19 14:03:41 +02:00
Alexey Sokolov
9966bea961 Return version back to 1.7.x 2019-03-30 14:41:01 +00:00
Alexey Sokolov
6b03fac6c1 ZNC 1.7.3-rc1 2019-03-22 00:31:10 +00:00
Alexey Sokolov
855ab8c55d Revert version number to 1.7.x 2019-01-27 09:37:10 +00:00
Alexey Sokolov
2ed4d1b664 ZNC 1.7.2-rc1 2019-01-12 09:08:16 +00:00
Alexey Sokolov
0ab205ccfa Merge pull request #1628 from dgw/welcome-to-2019
Welcome to 2019
2019-01-08 22:50:58 +00:00
dgw
8d5427cf9b Welcome to 2019
What are we going to do today, Brain?

The same thing we do every year, Pinky: Update all the copyright
headers!

[Skip CI]
2019-01-01 17:05:05 -06:00
Pierre Gordon
6af027c5dd Normalize methods with 'UserName' to 'Username' 2019-01-01 16:19:27 -05:00
Pierre Gordon
812b27c268 Normalize variable "sUserName" to "sUsername"
Fixes #1546
2019-01-01 12:31:33 -05:00
Alexey Sokolov
bae80fd383 Return version number to 1.7.x 2018-07-17 22:58:48 +01:00
Alexey Sokolov
9e4d89aaa4 ZNC 1.7.1-rc1 2018-07-14 07:21:12 +01:00
Alexey Sokolov
fda73d8c81 Merge branch '1.7.x' 2018-06-04 22:30:53 +01:00
Alexey Sokolov
94c5707f2e Old clang doesn't understand 2-arg deprecation 2018-06-02 01:52:11 +01:00
Alexey Sokolov
e531fe870a Replace the deprecated overload of CMessage::GetParam 2018-06-01 22:22:44 +01:00
Alexey Sokolov
5b7daac2f0 Rename one of overloads of CMessage::GetParams to GetParamsColon 2018-06-01 22:22:44 +01:00
Alexey Sokolov
34b783f1ab Revert "Make version 1.7.x again for 1.7.x branch"
This reverts commit 59cf8aabda.
2018-05-06 00:19:04 +01:00
Alexey Sokolov
59cf8aabda Make version 1.7.x again for 1.7.x branch 2018-05-05 20:49:12 +01:00
Alexey Sokolov
d16817b03a Update git master to be 1.8.x 2018-05-01 22:39:01 +01:00
Alexey Sokolov
4489b1b694 Increase the version number to ZNC 1.7.0 2018-05-01 22:15:45 +01:00
Alexey Sokolov
bfecb524e4 1.7.0-rc1 2018-04-19 23:52:45 +01:00
Alexey Sokolov
6922476fcf ZNC 1.7.0-beta1 2018-04-06 20:25:13 +01:00
Alexey Sokolov
8c60724118 Merge branch 'master' into 1.7.x 2018-04-06 20:22:37 +01:00
Alexey Sokolov
9de990715b More translateable strings (fix #1354) 2018-04-03 22:31:20 +01:00
Alexey Sokolov
1e08e5c702 Move gtest's printer for CString to a place visible to all tests 2018-04-02 12:17:14 +01:00
Alexey Sokolov
10c98e01a8 Why did I make this public? 2018-04-01 12:23:16 +01:00