Old SafeTimer is not safe. QTimer dies when it changes thread. New
SafeTimer uses old-level timers which also sensetive for thread
change events. To handle this is here special trick which ressurect
timer in new thread.
Since Qt 4.5 or 4.6 registerTimer with id argument is wrong. In really
registerTimer always generates new id. And version of the function
with id argument must be protected.
I didn't tested this fix. build.ko will do this for me.
Ignore KEYEXPIRED which will be thrown for any expired subkey regardless
of being related to the current operation. Instead, use EXPKEYSIG,
REVKEYSIG, EXPSIG and INV_RECP accordingly.
Add new errors QCA::SecureMessage::{ErrorSignerRevoked,
ErrorSignatureExpired,
ErrorEncryptRevoked}.
Due to GnuPG bug #1650 <https://bugs.g10code.com/gnupg/issue1650>
encrypting to an expired or revoked key will omit the reason for failing,
resulting in the error code QCA::SecureMessage::ErrorEncryptInvalid.
REVIEW: 118567
After the latest commit cmake is trying to use relative paths.
But in pc file can be used only absolutes. So it is need to
generate this file before relative paths will be calculated.
This reverts commit 38e0665127650b3db5676c1dd5f0ffeb8cdb176f.
This change is incorrect, as Qt/QCA does not look within $pluginDir/qca/crypto when loading it's plugins.
Instead, it expects to find them within the $pluginDir/crypto/ subdirectory which no longer exists with this change.
While the use of lib/qca/ is non-standard for plugins, existing code within the CI scripts is able to handle this abnormality.
Normal Qt libraries which use plugins also function normally on the CI system.
The change as it stands does not work with Qt 4 and breaks all tests which are reliant upon QCA on the CI system.
As it appears a decision needs to be made on where QCA plugins should live and how they should be loaded i'm reverting this change to allow the tests to pass again.
CCMAIL: aleixpol@kde.org
CCMAIL: drizt@land.ru
CCMAIL: stephane@mankowski.fr
CCMAIL: kde-core-devel@kde.org
CCMAIL: kde-frameworks-devel@kde.org
On Windows when compiling with Visual Studio will be produced special
.pdb files for debuggins purposes. It must be put next to target
runtime (.dll or .exe) file.
Do not try to guess the result size. It rely with particular
algo and some other factors and so can be any. Just use
Pipe::remaining() for this purpose.
Qt/Mac frameworks has two include dirs.
One is the framework include for which CMake will add a -F flag
and the other is an include dir for non-framework Qt modules.
QT_INCLUDE_DIR contains both.
QT_HEADER_DIR is for non-framework Qt modules.
DEVELOPER_MODE is designed for various developer issues. Now this mode
forced to use plugins only from build tree. To avoid excess plugins
from system QCA. Also now not need to set QT_PLUGIN_PATH to use plugins
from QCA build tree.
Overloaded "makeKey" in QCA::KeyDerivationFunction + botan/gcrypt/ossl plugins
to allow deriving a master password depending on a time factor in addition to
only giving an arbitrary iteration count.
Deriving with a time delays exhaustive research on master passwords by
increasing the time needed to try each password (the derivation time)
Added corresponding unittests.
REVIEW: 114503
openssl very configurable. There is no any guarantee that this
or another cipher suite will be in current building. So I just
took that Fedora cipher suites is minimal default list and
I believe that it will be true in every case.