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
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.
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.
Normally, when the Makefile calls swig, the resulting files end up in the build
directory. However, when the files are pre-generated (e.g. as in the znc 1.0
tarball) and an out of tree build is used, they are in the source directory and
installation fails.
Thanks to Kinji for reporting this.
Signed-off-by: Uli Schlachter <psychon@znc.in>
The symptoms looked like this:
Packing man page znc-buildmod.1.gz...
Generating ZNC API for Perl...
Generating ZNC API for Perl...
Generating ZNC API for Perl...
Linking znc...
The reason was that the old rule was executed multiple times in parallel. See
the following commit for more information:
commit 84ec49780e
Author: Uli Schlachter <psychon@znc.in>
Date: Sun Sep 23 12:03:22 2012 +0200
Get rid of the modpythin jobhack
Signed-off-by: Uli Schlachter <psychon@znc.in>
This exists to fix a problem where the python swig API was generated multiple
times in parallel with "make -j3". This problems turns out to be due to the
multiple target rule that this commit removes. Such a rule doesn't mean "this
commands generate multiple files at once" but means "you can use this command
for each of these targets".
Fix this by including Makefile.gen instead of calling it in its own make
process. That way we don't need this "meta rule" which just calls another
Makefile but can use the "real" rules immediately.
Signed-off-by: Uli Schlachter <psychon@znc.in>
Make was always rebuilding modperl/ZNC.so because the Makefile was actually
describing a file modperl/ZNC."so". Fix this by getting rid of the unnecessary
pair of quotes.
Signed-off-by: Uli Schlachter <psychon@znc.in>