Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/keepassxreboot/keepassxc.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-12-04Add Argon2id KDF (backport of #5726)Janek Bevendorff
2020-01-11Ensure challenge-response key buffer is properly cleared.Janek Bevendorff
The challenge-response key buffer is explicitly cleared before the key transformation if no such key is configured to ensure one is never injected into the hash even if the database had a challenge-response key previously. This patch also adds extensive tests for verifying that a key change will not add any expired key material to the hash. Fixes #4146
2019-05-02Support Database Custom Data Merging (#3002)Sami Vänttinen
* Introduce _LAST_MODIFIED custom data entry that stores the last modified datetime of the database's custom data entries * Merge custom data from source database to target * Modify tests to be aware of _LAST_MODIFIED entry
2018-11-29Restore correct formattingGianluca Recchia
Many lines were not conformant with the project's formatting rules. This patch should fix all formatting and whitespace issues in the code base. A clang-format directive was put around the connect() calls containing SIGNALs and SLOTs whose signatures would be denormalized because of the formatting rules.
2018-11-22Refactor Database and Database widgets (#2491)Janek Bevendorff
The Database, DatabaseWidget, and DatabaseTabWidget classes share many responsibilities in inconsistent ways resulting in impenetrable and unmaintainable code and a diverse set of bugs and architecture restrictions. This patch reworks the architecture, responsibilities of, and dependencies between these classes. The core changes are: * Move loading and saving logic from widgets into the Database class * Get rid of the DatabaseManagerStruct and move all the information contained in it into the Database * Let database objects keep track of modifications and dirty/clean state instead of handing this to external widgets * Move GUI interactions for loading and saving from the DatabaseTabWidget into the DatabaseWidget (resolves #2494 as a side-effect) * Heavily clean up DatabaseTabWidget and degrade it to a slightly glorified QTabWidget * Use QSharedPointers for all Database objects * Remove the modifiedImmediate signal and replace it with a markAsModified() method * Implement proper tabName() method instead of reading back titles from GUI widgets (resolves #1389 and its duplicates #2146 #855) * Fix unwanted AES-KDF downgrade if database uses Argon2 and has CustomData * Improve code This patch is also the first major step towards solving issues #476 and #2322.
2018-10-19Add CLI tests and improve coding style and i18nJanek Bevendorff
The CLI module was lacking unit test coverage and showed some severe coding style violations, which this patch addresses. In addition, all uses of qCritical() with untranslatble raw char* sequences were removed in favor of proper locale strings. These are written to STDERR through QTextStreams and support output redirection for testing purposes. With this change, error messages don't depend on the global Qt logging settings and targets anymore and go directly to the terminal or into a file if needed. This patch also fixes a bug discovered during unit test development, where the extract command would just dump the raw XML contents without decrypting embedded Salsa20-protected values first, making the XML export mostly useless, since passwords are scrambled. Lastly, all CLI commands received a dedicated -h/--help option.
2018-09-25Add a new database settings wizardJanek Bevendorff
This patch implements a new database wizard to guide users through the process of setting up a new database and choosing sane encryption settings. It also reimplements the master key settings to be more user-friendly. Users can now add, change, or remove individual composite key components instead of having to set all components at once. This avoids confusion about a password being reset if the user only wants to add a key file. With these changes comes a major refactor of how database composite keys and key components are handled. Copying of keys is prohibited and each key exists only once in memory and is referenced via shared pointers. GUI components for changing individual keys are encapsulated into separate classes to be more reusable. The password edit and generator widgets have also been refactored to be more reusable.
2018-07-07Replaced Uuid with QUuidpasdam
2018-03-31Formatting the code.Louis-Bertrand Varin
2018-03-31Add ClangFormat exceptionsLouis-Bertrand Varin
2018-03-08Test speedup (#1678)Thomas Luzat
* Tests: Speed up AutoType testing Decrease default autotype delay to 1 to improve test suite speed by seconds. This shaves multiple seconds off the whole test suite. In some cases, the largest part. Also, initialize config just creating the test instance, just in case that it ever depends on the configuration values at that point already. * Tests: Speed up Kdbx4 testing This speeds up the Kdbx4 tests by using parameters optimized for speed for the key derivation functions. On an i7-6700K the tests run close to 50% faster with this change (about 1.5s vs. 3s).
2018-03-02Add additional KDBX4 upgrade tests for composite key integrityJanek Bevendorff
2018-03-01Don't upgrade to KDBX 4 when CustomData are present only in meta data ↵Janek Bevendorff
section, resolves #1565
2018-02-21Add additional tests for saving and reading KDBX files with custom dataJanek Bevendorff
2018-02-21Properly save custom header dataJanek Bevendorff
Ensure adding custom data upgrades to KDBX4 Implement review feedback
2018-01-25Move duplicate attachment test to TestKeePass2Format, so it's also run for KDBX3Janek Bevendorff
2018-01-25Add test for catching KDBX4 attachment mapping errorsJanek Bevendorff
2018-01-24Move useful QTest template specializations to global header fileJanek Bevendorff
Fix KDBX test linker errors on Windows
2018-01-18Refactor and extend file format testsJanek Bevendorff
2018-01-18Fix KDBX reader tests not being executedJanek Bevendorff