Commit Graph

4514 Commits

Author SHA1 Message Date
Cork a3c6684d49 Add a Disablechan to match the Enablechan command 2013-05-02 18:16:50 +02:00
Kyle Fuller f73d766c8a Merge pull request #334 from grawity/route-whois
route_replies: Add some WHOIS numerics
2013-04-28 03:43:59 -07:00
Mantas Mikulėnas 72c9513f6e route_replies: Add some WHOIS numerics
Charybdis can return all these.
2013-04-28 03:16:57 +03:00
Kyle Fuller 78be38d802 Allow block_motd to be loaded per-network and globally
Closes #326
2013-04-21 12:31:30 +01:00
Uli Schlachter 1dbdc4f37d sasl: Add missing length check
This could otherwise lead to an integer underflow on specially crafted input.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2013-04-20 21:31:35 +02:00
Kyle Fuller b42f57e1e0 Merge pull request #324 from Elizacat/master
Fix minor memory leak
2013-04-18 06:31:13 -07:00
Elizabeth Myers f161ac6182 Fix memory leak. Oops :(.
Found by KindOne on IRC. Thanks!
2013-04-16 17:19:52 -05:00
Kyle Fuller ca2878614f Merge pull request #321 from Elizacat/master
Implement DH-AES password encryption scheme.
2013-04-16 04:14:22 -07:00
Elizabeth Myers f578bf9424 Implement DH-AES encrypted password scheme.
This is superior to DH-BLOWFISH as Blowfish may suffer from certain
classes of weak keys, which is difficult to mitigate against without
regenerating DH parameters repeatedly. AES also has faced far more
scrutiny and is believed to be more secure.

Reference implementation (services-side):
https://github.com/atheme/atheme/blob/master/modules/saslserv/dh-aes.c
2013-04-16 05:39:10 -05:00
Alexey Sokolov f2e8738ffc Fix #313 2013-04-05 08:38:21 +07:00
Alexey Sokolov 636ca24088 A bit more beatiful way to build modules 2013-04-05 08:38:00 +07:00
Alexey Sokolov bbde9ab464 Fix git version in nightlies 2013-04-01 21:05:01 +07:00
Alexey Sokolov 10b4890827 Fix #275, close #297 2013-04-01 20:30:35 +07:00
Uli Schlachter 3a7dc7aa73 Don't ever try to overwrite /usr/bin/git
Previously, version.sh got the path to git as its first and only argument. Since
the previous commit, this is not the path to src/version.cpp and the second
argument is the path to git.

However, let's assume someone does "git pull && make". They still have the old
Makefile laying around, which will pass the path to git as the first argument to
version.sh. Thus, this will overwrite /usr/bin/git with some generated source
code. Whoops.

Thanks to KindOne for reporting this problem!

Signed-off-by: Uli Schlachter <psychon@znc.in>
2013-03-31 20:38:51 +02:00
Uli Schlachter 58a34fa5ad Improve the way that VERSION_EXTRA is calculated
Instead of doing magic with the result from version.sh so that we can add a
preprocessor macro, the script now just writes src/version.cpp with the expected
content. This should fix all the various issues that we have with quoting the
arguments and things that go wrong when not building znc from a git clone.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2013-03-31 19:32:44 +02:00
Alexey Sokolov 8fdb530ee3 Fix use-after-free which may happen during shutdown
If a module, e.g. keepnick, tries to remove a timer in
OnIRCDisconnected.

Thanks to KindOne for the report.
2013-03-31 23:40:19 +07:00
Jim Hull 20c5c7d8be updated email addr for Jim Hull 2013-03-28 20:23:33 -07:00
Alexey Sokolov 81599fb8a4 I wonder why Heiko was removed from AUTHORS years ago... 2013-03-28 21:06:39 +07:00
Allan Odgaard e13fdf2a54 crypt: Use ASCII for nick prefix and make it configurable
The previously hardcoded value of ‘\244’ is causing problems for clients which expect valid UTF-8 from the server/bouncer. This commit fixes #228.

The prefix is stored using a key of ‘[nick-prefix]’ in the general key/value store for the crypt module, which previously was only used for encryption keys.

This is not the best design, but the least intrusive one.
2013-03-22 14:07:13 +01:00
Allan Odgaard faf1dd9b7e crypt: Add time stamp to buffered messages
This is relevant when replaying the buffer on connect and brings the crypt module in sync with the normal logging functionality (which it bypasses).
2013-03-22 14:05:48 +01:00
Alexey Sokolov ae7bcaf87d Use " " instead of ":" in awaystore's buffer internal format. Fix #267 2013-03-17 01:11:59 +07:00
Alexey Sokolov 9f4f2817d1 Fix #293
In GetAvailableMods() modules paths were returned like "moddir//module.pm",
but when they are loaded, they use path "moddir/module.pm".

Because of that our hack of cleaning %INC when the module is unloaded,
which enables UpdateMod, removed wrong record from %INC, left right
record in it, and erased the module's namespace.

When the module was loaded again, the namespace was not restored,
because "require" didn't load the module, because it was still in %INC.

So, when we call a function of that module, the function does not exist
anymore.
2013-03-16 23:35:19 +07:00
Uli Schlachter 53c579b296 CJob: Add a way to do stuff on the main thread
This just moves the pipe from the socket code to the thread pool. However, now
all CJobs can use this and there is a single place for them to get deleted.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2013-03-15 11:58:27 +01:00
Uli Schlachter 75f2e3fa41 Add a generic threads abstraction
This should make it easier to work with threads. It provides classes for mutexes
and condition variables. Additionally, there is a special CMutexGuard that
automatically unlocks the mutex on destruction and a CThreadPool class.

This thread pool is used to replace the thread pool in the sockets code.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2013-03-15 11:58:22 +01:00
Ingmar Runge b0101a6df1 Get rid of empty CHTTPSock::WriteFileGzipped method if there's no zlib. It's still in the header, but this does not have any negative side effects. 2013-03-10 00:28:19 +01:00
Ingmar Runge ea94795646 HTTPSock: Gzip compression for static files (text/* mime types + files
with .js extension) and dynamic HTML responses (if gzip is available and
the compression method is supported by the requesting HTTP client).
2013-03-08 09:49:45 +01:00
KindOne 2db7307ac3 Remove unneeded headers. 2013-03-08 01:47:57 +07:00
KindOne c9ac8f5e5e Explain that altering znc.conf by hand is a bad idea. Fixed a typo. 2013-03-08 01:46:44 +07:00
Alexey Sokolov ea5406f334 Fix issue introduced in previous commit. 2013-02-28 09:58:50 +07:00
Alexey Sokolov 58a8781b02 Merge commit 'refs/pull/304/head' of github.com:znc/znc 2013-02-28 09:33:32 +07:00
baines 82a708d6a1 Cleaned up more warnings. 2013-02-27 20:53:14 -05:00
Alexey Sokolov 5021d09519 Merge commit 'refs/pull/303/head' of github.com:znc/znc 2013-02-27 22:19:15 +07:00
baines c256116d81 Catch as references 2013-02-26 22:03:15 -05:00
Alexey Sokolov d085b1dfd0 Merge commit 'refs/pull/295/head' of github.com:znc/znc 2013-02-26 09:46:44 +07:00
md_5 9f4d2ffa1f Fix PartyLine so that forced channels may not be left at all - users will be rejoined at once. 2013-02-23 18:31:10 +11:00
Thomas Ward 7496704f3e controlpanel.cpp: Fixed a Fail to Compile error introduced in prior commit. 2013-02-01 15:51:36 -05:00
Alexey Sokolov f32db92e6d Merge branch 'master' of github.com:znc/znc 2013-02-01 00:32:58 +07:00
Alexey Sokolov 538a41cbae Show password in --makepass in new format 2013-02-01 00:17:18 +07:00
TheLordOfTime e559bc6677 controlpanel.cpp: Standardize error wordings
When a network cannot be found for a user, and where a command will output an error under such circumstances, use similar wording in each message.
2013-01-30 22:58:32 -05:00
The Lord of Time e6414e3c98 controlpanel.cpp: Increases general verbosity of command results. 2013-01-30 18:05:55 +00:00
Alexey Sokolov fd52d27caf Merge pull request #294 from TheLordOfTime/master
controlpanel.cpp BugFix: Empty 'disconnect' command returns 'reconnect' syntax help
2013-01-30 07:45:12 -08:00
Alexey Sokolov ad06b170d6 A bit more consistency bewteen Del* and Rem*
Thanks to Kult for reporting this
2013-01-29 20:52:20 +07:00
TheLordOfTime fd813c01af controlpanel.cpp: Fix bug for "Disconnect" help
This fixes a bug in which providing empty data for the 'disconnect' command for controlpanel will return the 'reconnect' command's syntax help, which can confuse users.
2013-01-29 04:46:55 -05:00
Alexey Sokolov 0491e55926 Fix one more case of dlerror(), if it returns NULL after error. 2013-01-27 01:48:27 +07:00
Alexey Sokolov 7312a36629 Don't lose dlerror() message.
Some weird systems seem to use dl functions while doing std::string
concatenation...

Thanks to Hoss for reporting it
2013-01-27 01:26:52 +07:00
Alexey Sokolov 183a261e69 Really disable charset module if iconv is not found.
On some systems CHARSET variable is set...

Thanks to Hoss for reporting it
2013-01-27 01:19:45 +07:00
Alexey Sokolov f661f2a002 Use CModule::ExpandString 2013-01-20 10:39:50 +07:00
Alexey Sokolov 42cb0d7de7 It's 2013 now (few modules were forgotten :P) 2013-01-19 09:19:41 +07:00
Alexey Sokolov 142142d7c7 Merge pull request #281 from TheLordOfTime/master
Modify modules/sasl.cpp to have a DH-BLOWFISH mechanism description
2013-01-11 19:57:10 -08:00
TheLordOfTime 29d2ff001a modules/sasl.cpp: Description line for DH-BLOWFISH
Added a description to the output for DH-BLOWFISH SASL mechanism.
2013-01-11 21:39:51 -05:00