Janek Bevendorff
e443cde452
Add a new database settings wizard
...
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-09-25 21:12:47 +02:00
Weslly
f8b997bcf4
Add support for opening file:// urls ( #2311 )
...
* Add support for opening file:// urls
* Open file urls without file:// scheme
2018-09-20 23:49:56 -04:00
Jonathan White
1dc9f10c7f
Complete refactor of TOTP integration
...
* Eliminate TOTP logic from GUI elements
* Consolidate TOTP functionality under the Totp namespace
* Eliminate guessing about state and encoders
* Increased test cases
* Add entry view column for TOTP [#2132 ]
* General code cleanup, reduction of unnecessary steps, separation of concerns
* Rename SetupTotpDialog to TotpSetupDialog for consistency
2018-09-15 12:10:26 -04:00
Jonathan White
ca27fb06d5
Merge branch 'master'
...
Conflicts:
INSTALL.md
release-tool
src/browser/BrowserOptionDialog.cpp
src/browser/BrowserService.cpp
src/browser/BrowserService.h
src/browser/NativeMessagingBase.h
src/browser/NativeMessagingHost.h
src/core/Uuid.cpp
src/gui/DatabaseTabWidget.cpp
src/gui/DatabaseWidget.cpp
src/gui/EditWidget.cpp
src/gui/MainWindow.cpp
src/gui/MainWindow.ui
src/proxy/NativeMessagingHost.h
src/sshagent/ASN1Key.cpp
2018-08-24 09:42:38 -04:00
Jonathan White
3b1e15ea1a
Disable apply button when creating new entry/group
...
* Workaround to prevent data loss if apply is hit but not OK or Cancel
* Refactor required to fix this issue
2018-08-18 10:31:40 -04:00
Toni Spets
07efabed03
SSH Agent: Show MD5 fingerprint of keys
...
Fixes #2050
2018-07-16 18:45:20 -04:00
Toni Spets
3727d37101
SSH Agent: Expect passphrases to be in UTF-8
...
The previous default was to expect passphrases to be ASCII or
rather Latin-1. It would be reasonable to expect modern keys to
use UTF-8 instead.
This is a non-breaking change if passphrases only use characters
that fall within ASCII.
Fixes #2102
2018-07-14 17:07:07 -04:00
Jonathan White
470a74ee24
Merge pull request #1770 from pasdam/feature/useQuuid
...
Replaced Uuid with QUuid
2018-07-08 20:32:54 -04:00
Jonathan White
d06819eb6c
Merge pull request #1881 from louib/disable_merge_when_locked
...
Disable merge button when db is locked.
2018-07-08 19:52:58 -04:00
pasdam
b4d806ad41
Fixed issues with initial commit
2018-07-06 22:23:52 -04:00
pasdam
ad4423d226
Replaced Uuid with QUuid
2018-07-06 22:23:49 -04:00
Toni Spets
8c70856a82
SSH Agent: Fix invalid iqmp output for RSA keys
...
This fixes loading RSA keys to Pageant.
2018-06-26 22:52:47 -04:00
Michal Kaptur
486b99b39d
Add some unit tests to Tools
...
Clean up and test 3 methods from Tools:
- humanReadableFileSize
- isHex
- isBase64
2018-05-22 09:28:54 +02:00
Jonathan White
aae6d09fd3
Merge branch 'master' into develop
...
Conflicts:
src/CMakeLists.txt
src/autotype/xcb/AutoTypeXCB.cpp
src/browser/BrowserAction.cpp
src/browser/BrowserService.cpp
src/browser/BrowserService.h
src/browser/BrowserSettings.h
src/browser/NativeMessagingHost.cpp
src/browser/NativeMessagingHost.h
src/gui/EditWidgetIcons.cpp
src/gui/EditWidgetIcons.h
src/gui/MainWindow.cpp
src/proxy/NativeMessagingHost.cpp
tests/TestOpenSSHKey.cpp
2018-05-07 23:24:30 -04:00
louib
f25c8d3d2a
Adding a GUI test.
2018-04-30 17:07:07 -04:00
Steven Noonan
c21f4b5ec2
OpenSSHKey: correctly parse aes-256-cbc/ctr keys ( #1682 )
...
AES-256 uses a 32-byte (256-bit) key size. This un-breaks the loader and
tests added for AES-256-CBC and AES-256-CTR PEM keys.
* OpenSSHKey: correctly parse encrypted PEM AES-256-CBC/AES-256-CTR keys
* OpenSSHKey: use correct key derivation for AES-256
2018-04-04 21:58:34 -04:00
Louis-Bertrand Varin
8324d03f0a
Formatting the code.
2018-03-31 16:01:30 -04:00
Louis-Bertrand Varin
3eb917055e
Add ClangFormat exceptions
2018-03-31 12:15:09 -04:00
Jonathan White
410d88bf99
Remove KeePassHttp plugin and qhttp ( #1752 )
...
Remove KeePassHttp plugin and qhttp
2018-03-31 11:36:18 -04:00
Daniel Wilches
240939ce3b
Request confirmation to discard unsaved changes
...
Solves #1181
2018-03-29 18:35:08 -07:00
Janek Bevendorff
e92d5e80ee
Merge branch 'release/2.3.2' into develop
2018-03-18 01:14:42 +01:00
Joan Bruguera
f305517724
Skip the tray restore/hide test of #1595 if there's no tray (fix CI build).
2018-03-12 21:30:25 +01:00
Joan Bruguera
8646586c1a
Add GUI test for issue #1595 (minus the minimize at startup case).
2018-03-12 21:30:25 +01:00
Thomas Luzat
46e8e3dbbc
Test speedup ( #1678 )
...
* 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-08 10:20:25 +01:00
thez3ro
10170a555e
add test case for recursive placeholders
2018-03-06 15:56:27 +01:00
thez3ro
5f9f27604b
fix autotype custom attributes
2018-03-04 23:08:58 +01:00
Janek Bevendorff
199f0932bf
Add additional KDBX4 upgrade tests for composite key integrity
2018-03-01 19:26:18 -05:00
Janek Bevendorff
e6c19fdcb1
Add MockChallengeResponseKey and additional composite key component test
2018-03-01 19:26:18 -05:00
Janek Bevendorff
0d4aff55bc
Don't upgrade to KDBX 4 when CustomData are present only in meta data section, resolves #1565
2018-03-01 17:59:01 +01:00
Janek Bevendorff
7fbdcd3fed
Add tests for newline sanitization
2018-02-26 17:27:17 +01:00
Janek Bevendorff
da52da37b3
Add additional tests for saving and reading KDBX files with custom data
2018-02-21 13:23:14 +01:00
Janek Bevendorff
5410d78bbb
Properly save custom header data
...
Ensure adding custom data upgrades to KDBX4
Implement review feedback
2018-02-21 13:23:14 +01:00
Janek Bevendorff
114f00e1e8
Add CustomData regression tests
2018-02-21 13:23:14 +01:00
Janek Bevendorff
698b44f71c
Update zxcvbn library
2018-02-21 06:18:33 -05:00
Jonathan White
397d804cdd
Add tests & minor edits
2018-02-21 09:04:46 +01:00
Nick Spain
7dfcad6f8f
Write regression test for #1447
2018-02-18 16:17:12 +01:00
thez3ro
7713a7b750
Add test case for reference resolution in cloned entries
...
Improve test suite to use smart pointers where possible
2018-02-17 18:04:29 +01:00
Toni Spets
d58e3ca34d
SSH Agent: Support old AES-128-CBC encrypted keys
2018-02-11 15:31:06 +01:00
Toni Spets
d2359df2b0
SymmetricCipher: Add support for AES-128-CBC
2018-02-11 15:31:06 +01:00
thez3ro
a76c92ed9a
change inAutotype logic, preventing multiple autotype call
2018-02-04 23:13:15 +01:00
thez3ro
a9479fd662
refactor autotype sequences and entry-point functions
2018-02-04 23:13:15 +01:00
thez3ro
065a85e05c
fix effective autotype sequence
2018-02-04 23:13:15 +01:00
Toni Spets
cbb70cdc7c
SSH Agent: Support old unencrypted DSA and RSA keys
2018-02-04 15:59:08 +02:00
Janek Bevendorff
17e3f1c21f
Create history item when setting up a TOTP seed, resolves #1445
2018-02-01 19:16:17 +01:00
Jonathan White
8c8a61ddfe
Disable auto save for GUI tests
2018-01-28 14:06:17 -05:00
Janek Bevendorff
b7c5283a66
Move duplicate attachment test to TestKeePass2Format, so it's also run for KDBX3
2018-01-25 02:27:42 +01:00
Janek Bevendorff
6a97a6dafc
Add test for catching KDBX4 attachment mapping errors
2018-01-25 01:49:19 +01:00
Janek Bevendorff
7a6850d5fe
Move useful QTest template specializations to global header file
...
Fix KDBX test linker errors on Windows
2018-01-24 13:32:37 +01:00
Janek Bevendorff
8dd6cdeb69
Fix history truncation based on max size and extend unit tests
2018-01-23 02:31:29 +01:00
Christian Kieschnick
258438f01f
Fix code-style issues
...
Fixed issues pointed out during review
2018-01-23 00:57:04 +01:00
Christian Kieschnick
943dc6cdd6
Add tests for modified, fix history for autotype
...
Added tests to ensure #1387 works
Fixed issue detected during testing - AutoTypeAssociations were not
pushed to history
2018-01-23 00:57:01 +01:00
Fonic
8c78aca69e
Code cleanup
...
Comprehensive code cleanup:
- formatting
- comments
- obsolete code
2018-01-21 15:17:05 +01:00
Fonic
9ff648177c
Update entry model test to account for additional column 'Paperclip'
...
Update comparison values of modelProxy->columnCount() to account for
additional column 'Paperclip'
2018-01-21 15:17:05 +01:00
Fonic
66291ecc38
Update GUI test to account for changed column indices
...
Update clicks within entry view referencing column indices to account
for changed column indices due to new way of showing/hiding column Entry
Model::ParentGroup. This column now has fixed index 0 wether it's shown
or hidden, thus all indices need to be shifted by +1 when not in search
mode
2018-01-21 15:17:05 +01:00
Fonic
268035ff9e
Update entry model test to account for additional columns
...
Update comparison values of modelProxy->columnCount() to account for
additional columns 'Password', 'Notes', 'Expires', 'Created', 'Modified',
'Accessed' and 'Attachments'
2018-01-21 15:17:05 +01:00
Janek Bevendorff
e20cecf7aa
Remove obsolete ToDbExporter tests
2018-01-18 01:51:41 +01:00
Janek Bevendorff
679a7b6ec2
Add test for KDBX 2 -> 3 upgrade
2018-01-18 01:51:39 +01:00
Janek Bevendorff
a595239624
Refactor and extend file format tests
2018-01-18 01:51:37 +01:00
Janek Bevendorff
cdefc7ea9b
Fix KDBX reader tests not being executed
2018-01-18 01:51:34 +01:00
Janek Bevendorff
98591c3bc0
Add tests for FileKey::Type
2018-01-14 18:26:28 -05:00
Janek Bevendorff
90380adc90
Fix test compilation errors
...
* Use legacy AES-KDF mode for KeePass1Reader
2018-01-13 14:25:02 -05:00
Janek Bevendorff
a6ddc22fb8
Refactor database readers/writers and XML handling
...
* Refactor Kdbx*Reader
* Refactor KdbxWriter
* Refactor KdbxXmlReader
* Refactor KdbxXmlWriter
2018-01-13 14:24:58 -05:00
Janek Bevendorff
72a1c65d00
Fix memory leaks in tests
2018-01-13 14:24:58 -05:00
Janek Bevendorff
ccfd7a065c
Fix coding style and GUI test
2018-01-13 14:24:57 -05:00
angelsl
564188b0d3
Report database read failure reason in tests
2018-01-13 14:24:55 -05:00
Jonathan White
bef7ba2cfe
Implements KDBX4 format with Argon2 KDF
...
* Adds KDBX4 reader/writer interfaces
* Adds KDBX4 XML reader/write interfaces
* Implements test cases for KDBX4
* Fully compatible with KeePass2
* Corrects minor issues with Argon2 KDF
2018-01-13 14:24:55 -05:00
Jonathan White
7dba788d09
Correct failure in GUI tests due to widget name
2018-01-13 14:24:54 -05:00
Jonathan White
9140893cd3
Correct Endian function use in Random tests
2018-01-13 14:23:29 -05:00
Janek Bevendorff
15648991fc
Refactor Kdf class, remove fields concept
2018-01-13 14:23:28 -05:00
angelsl
3461cbfb06
Rename KeePass2{,Xml}{R,W} to Kdbx3{,Xml}{R,W}, and add a redirection class
...
This class will in future select Kdbx4{R,W} as appropriate.
2018-01-13 14:23:26 -05:00
angelsl
6a0d05e1ef
Add support for various algorithms for kdbx4
...
* Add SHA512 support to CryptoHash
* Add ChaCha20 support
* Add HMAC support
* Add new HmacBlockStream, used in KDBX 4
* Add support for ChaCha20 protected stream
2018-01-13 14:23:26 -05:00
angelsl
4532108678
Add support for KDFs and cyphers to the db settings widget
2018-01-13 14:23:25 -05:00
angelsl
2e19af5032
Pull out KDFs into their own class hierarchy
...
In preparation for multiple KDFs in KDBX 4
2018-01-13 14:23:20 -05:00
frostasm
3720c5ef79
Add test for drag and drop database files into main window
2018-01-03 16:12:05 +02:00
thez3ro
6d046f251e
Remove minus since it's an invalid literal
2018-01-03 12:56:18 +01:00
thez3ro
e803076063
improve regex filtering
2018-01-03 12:56:18 +01:00
thez3ro
a02a49a184
add test for syntax checking
2018-01-03 12:56:18 +01:00
Janek Bevendorff
60b3037e4a
Add additional unit tests for key file generation
2017-12-27 01:21:49 +01:00
Jonathan White
d217da421f
Correct test failures in mingw
2017-12-25 11:10:30 -05:00
frostasm
ed0bda98a6
Fix failing entry model test for attachment name and size
2017-12-25 14:36:41 +02:00
Aleksa Sarai
9f8943c89b
keepassxc-cli show: resolve references in output ( #1280 )
...
* core: database: make UUID searching case-insensitive
4c4d8a5e84
("Implement search for reference placeholder based on
fields other than ID") changed the semantics of searching-by-reference
in KeePassXC. Unforuntately it contained a bug where it implicitly
became case-sensitive to UUIDs, which broke existing databases that used
references (especially since the default reference format uses a
different case to the UUID used while searching).
The tests didn't catch this because ->toHex() preserves the case that it
was provided, they have been updated to check that UUIDs are case
insensitive.
* cli: show: resolve references in output
Previously, `keepassxc-cli show` would not resolve references. This
would make it quite hard to script around its output (since there's not
interface to resolve references manually either). Fix this by using
resolveMultiplePlaceholders as with all other users of ->password() and
related entry fields.
Fixes : keepassxreboot/keepassxc#1260
* tests: entry: add tests for ref-cloned entries
This ensures that the most "intuitive" current usage of references
(through the clone feature of the GUI) remains self-consistent and
always produces the correct results. In addition, explicitly test that
case insensitivity works as expected. These should avoid similar
regressions in reference handling in the future.
* http: resolve references in AccessControlDialog
The access control dialog previously would not show the "real" username
or "real" title when asking for permission to give access to entries.
Fix this by resolving it, as we do in many other places.
Fixes : keepassxreboot/keepassxc#1269
Signed-off-by: Aleksa Sarai <cyphar@cyphar.com>
2017-12-17 10:44:12 -05:00
Jonathan White
0141fa2f1c
Correct memory leaks in TestGroup.cpp
2017-12-12 23:46:25 -05:00
Jonathan White
28ad6ed552
Merge branch 'master' into develop
2017-12-11 21:10:25 -05:00
frostasm
d99dee9c40
Small refactoring related to references placeholders
2017-11-30 20:07:16 +02:00
Martin Unzner
d4d0f4c131
Add failing test for complete entry resolution
2017-11-30 20:07:16 +02:00
frostasm
4c4d8a5e84
Implement search for reference placeholder based on fields other than ID
2017-11-30 20:07:16 +02:00
frostasm
806dd5d783
Add unit test to search for referenced entries based on fields other than ID
2017-11-30 20:07:16 +02:00
Michal Kaptur
0ff75e7a88
Fixed memory leaks in non-gui tests
...
Fixed 2 memory leaks in production code and a few in testcases. As a
result leak_check_at_exit ASAN option does not need to turned off for
non-gui tests.
Smart pointers should be used elsewhere for consistency, but the sooner
this fixes are delivered, the lesser memory leaks are introduced.
2017-11-27 23:36:09 +01:00
Janek Bevendorff
8651736e61
Merge branch 'release/2.2.3' into develop
2017-11-26 18:23:48 +01:00
Toni Spets
a0bfa710be
Add missing crypto init to OpenSSHKey test
2017-11-25 11:32:13 +02:00
Louis-Bertrand Varin
f25c23c051
Adding tests for Group::clone
2017-11-21 14:24:24 -05:00
Louis-Bertrand Varin
9603c91877
Merge : Synchronising groups.
2017-11-21 14:06:40 -05:00
Weslly
19ac36b965
Change QTotp class name to Totp
2017-11-20 22:25:09 -02:00
Joel Smith
8ca52ba8f9
Add initial Steam TOTP support
...
* Add the concept of custom TOTP encoders, each with potential for custom
code alphabet, length, step interval and code direction (i.e. reversed)
* Select custom encoder via overload of the digits field of a loaded entry
* Allow selection of custom encoders via the "TOTP Settings" field's
size, as currently done by KeeTrayTOTP for Steam. Use "S" for the
short name of the Steam custom encoder
* Allow selection of custom encoders via the "otp" field by appending
a "&encoder=<name>" field to the URL query. For example,
"&encoder=steam"
* Update TOTP set-up dialog to permit selection between (default,
steam, custom) settings.
2017-11-20 17:08:01 -07:00
Toni Spets
4840c2c64f
SSH agent support
2017-11-19 14:38:59 +02:00
Toni Spets
a81a5fa31b
SymmetricCipher: Support CTR mode
...
Includes AES-256-CTR non-stream tests
2017-11-19 14:38:59 +02:00
thez3ro
d6e8e1be6e
use QTemporaryFile when creating a database for guitest
2017-11-02 20:07:41 +01:00
thez3ro
c3c67f18b8
add test for DB creation
2017-11-02 20:07:41 +01:00
Jonathan White
4e7f2c6a4f
Fix apply button not saving new entries
2017-10-28 09:23:45 -04:00
frostasm
1f5a0c0130
Add test for resolved placeholders in window association title
2017-10-23 22:55:22 +03:00
Jonathan White
1a4303bbce
Added tests for retention of entry history after merge
2017-10-21 22:49:20 -04:00
Janek Bevendorff
b510243dd8
Merge branch 'release/2.2.2' into develop
2017-10-21 22:23:27 +02:00
Adolfo E. García
f1d99dd0ed
Improve testing of Base32
2017-10-21 13:15:02 +02:00
Adolfo E. García
24f560aaa2
Replace Optional with QVariant
2017-10-21 13:15:02 +02:00
Adolfo E. García
19eb6a8a60
Add new Base32 implementation
2017-10-21 13:15:02 +02:00
frostasm
f0fcc19915
Implement recursive resolving for placeholders
2017-10-19 22:40:26 +03:00
frostasm
5e0df62d7a
Add processing of the url placeholders
2017-10-19 22:40:26 +03:00
Janek Bevendorff
ab21f718ba
Merge branch 'release/2.2.2' into develop
2017-10-12 14:10:20 +02:00
louib
242faa138b
Add custom icons when merging. ( #1008 )
...
* Adding missing custom icons on merge.
* qDebug when adding icon
* Adding test for merge custom icons.
2017-10-07 10:40:29 -04:00
Jonathan White
5098866413
Rewrote resolveUrl function to conform to various test cases
2017-10-03 18:40:32 -04:00
Jonathan White
14e3d9d576
Merge remote-tracking branch 'origin/master' into develop
...
# Conflicts:
# src/core/Group.cpp
2017-10-01 11:10:10 -04:00
Jonathan White
611a74d74d
Added tests to confirm mismatched passwords block saving
2017-09-29 18:11:53 -04:00
Adolfo E. García
522e132200
New base32 implementation ( #984 )
...
* Add new base32 encode/decode implementation
* Remove old base32 implementation
* Updates licensing info
2017-09-24 18:00:12 -04:00
louib
8e8d9f39cb
Merge : making sure the group is populated. ( #942 )
2017-09-20 11:39:10 -04:00
louib
6e1fd0694f
CLI : basic entry manipulation commands. ( #919 )
...
* CLI : basic entry manipulation commands.
* Code review.
2017-09-06 09:14:41 -04:00
louib
1220b7d501
Feature : Update entries across groups when merging ( #807 )
...
* Feature : Update entries across groups when merging
* Styling
2017-09-05 10:28:47 -04:00
louib
b2107b5e27
Adding Locate command. ( #829 )
...
* Adding Locate command.
* Adding group searching in locate
2017-08-05 12:20:26 -04:00
louib
1d30283514
Feature : --key-file option for CLI ( #816 )
...
* removing readFromLine
* Removing gui-prompt
* execute uses an arg list.
* Testing with key-file
* Fixing the -a option in EntropyMeter.
2017-07-25 13:41:52 -04:00
Janek Bevendorff
90468e8095
Merge branch 'release/2.2.1' into develop
2017-07-20 14:15:14 +02:00
thez3ro
35c6df2535
resolve URL for correct favicon downloading, fixes #240 #238
2017-07-18 18:40:18 +02:00
louib
3b23e68540
Refactoring : Introducing Command class for CLI commands ( #778 )
2017-07-17 15:16:53 -04:00
Jonathan White
9a7e6850d6
Merge remote-tracking branch 'origin/develop' into release/2.2.0
2017-06-23 14:21:30 -04:00
louib
48ea024d7e
Adding support for listing a group. ( #652 )
...
* Adding support for listing a group.
* added findGroupByPath
* Removing useless asserts.
* Code review.
2017-06-21 17:34:49 -04:00
Weslly
719323e9c3
Add option to limit search to current group
2017-06-21 01:01:50 -03:00
thez3ro
a53b111182
Update and fix copyright headers
2017-06-14 15:54:43 +02:00
Jonathan White
6ffca842e6
Add "Apply" button to entry and group edit windows ( #624 )
2017-06-13 20:55:53 -04:00
Yen Chi Hsuan
2b6059dee3
🐛 Fix building with Qt 5.9 ( closes #528 )
2017-06-01 17:05:07 -04:00
Louis-Bertrand Varin
eeafe77614
Find entry by title.
2017-05-21 13:51:16 -04:00
louib
54ad927044
Moving print group in Group class. ( #586 )
2017-05-21 13:05:44 -04:00
louib
a2e82dc883
Feature : clip command ( #578 )
2017-05-19 14:04:11 -04:00
Jens Rutschmann
9a59a124aa
Compare window title with entry URLs during autotype matching. ( #556 )
...
* Compare window title with entry URLs during autotype matching.
* Adapted option label to reflect that both entry title and URL are used for auto-type window matching.
2017-05-13 19:02:54 -04:00
Weslly
d3ed14ebb7
Display TOTP code split in halfs
2017-05-03 21:26:08 -03:00
Weslly
4c9b8c7794
Review fixes
2017-05-03 21:04:12 -03:00
Weslly
bf57a28654
Add TOTP support
2017-05-03 20:55:14 -03:00
Vladimir Svyatski
c613f44991
Finish test cases for emptying recycle bin
2017-04-23 00:50:26 +03:00
Vladimir Svyatski
583f60a3f3
Add recycle bin test cases body
2017-04-22 19:25:52 +03:00
Vladimir Svyatski
5792bf1a85
Add skeleton for TestDatabase.cpp and test data for unit tests for the "empty recycle bin" functionality
2017-04-22 12:38:36 +03:00
Jonathan White
5696178de4
Merge pull request #373 from keepassxreboot/feature/new-password-generator
...
New Diceware passphrase generator
2017-04-09 12:36:56 -04:00
Francois Ferrand
86e88c18b0
More compact search widget
...
* Move the search icon (with popup menu) and clear icon inside the
line edit
* Move the search widget to the right-side of toolbar
2017-04-06 07:19:56 -04:00
thez3ro
be9bd16b4c
Add diceware tests
2017-03-22 00:00:23 +01:00
Janek Bevendorff
c4d6fa855c
Force event processing after adding entries to prevent test failure
2017-03-17 07:49:19 -04:00
seatedscribe
06bbd6e066
Get rid of Q_{EMIT,SLOTS,SIGNALS}
2017-03-16 21:46:53 +01:00
seatedscribe
3fcf342fbc
Merge remote-tracking branch 'upstream/develop' into feature/import-csv-format
2017-03-16 21:25:38 +01:00
thez3ro
e3602e3c75
fix regex for placeholders, fix #402 , add regression test
2017-03-16 20:32:29 +01:00
Janek Bevendorff
15dd783d2c
Merge branch 'develop' into feature/yubikey
2017-03-10 18:01:14 +01:00
Janek Bevendorff
8d487d31a4
Replace Q_EMIT, Q_SIGNALS and Q_SLOTS macros with MOC keywords
2017-03-10 16:12:02 +01:00
Janek Bevendorff
2872f1706c
Fix Qt deprecation warnings
2017-03-10 16:11:55 +01:00
seatedscribe
705b74b3ba
Merge remote-tracking branch 'upstream/develop' into feature/import-csv-format
2017-03-08 22:52:39 +01:00
Jonathan White
31494ec327
Enhance attribute entry and add protected attributes ( #220 )
...
* Allow protected attributes to be hidden
* Entry area is resizable
* Added test cases for protected attributes
2017-03-07 22:38:18 -05:00
Janek Bevendorff
3c1271b1c4
Merge branch 'develop' into feature/yubikey
2017-03-06 13:49:48 +01:00
seatedscribe
41f9c3d2a1
Better handle of parser status messages (critical/not critical)
...
Use of messageWidget for displaying parser status messages
setRootGroup assigns the right label to the root db folder
test uses portable QTemporaryFile instead of hardcoded file
2017-03-05 21:27:29 +01:00
seatedscribe
a7e358c27d
Syntax style, spaces and pretty indentation
2017-03-05 21:27:29 +01:00
seatedscribe
afdf02b4be
Implement import of databases in CSV (Comma Separated Values) format (i.e. from other password managers)
2017-03-05 21:27:29 +01:00
Ryan Matthews
97150034bc
Fix clone entry gui test
2017-03-04 19:49:33 -05:00
Janek Bevendorff
a001553c5e
Fix warnings about Crypto already having been initialized
2017-02-24 21:06:23 +01:00
Janek Bevendorff
9a94c6d85e
Remove debug output to reduce console spam when running in debug mode
2017-02-24 20:50:06 +01:00
Janek Bevendorff
37c7318097
Merge branch 'develop' into feature/yubikey
2017-02-15 00:24:28 +01:00
thez3ro
51c668a0fd
fix tests with new CustomAttribute format
2017-02-08 01:14:52 +01:00
Jonathan White
7db7747cb0
Merge remote-tracking branch 'origin/master' into develop
2017-02-06 20:29:21 -05:00
Janek Bevendorff
5652018cde
Merge branch 'develop' into meta/release-preparation
2017-01-28 23:02:57 +01:00
Janek Bevendorff
4dab30ce6f
Break instead of returning
2017-01-28 17:53:19 +01:00
Janek Bevendorff
75dc21c66d
Implement Twofish CBC encryption and decryption tests
2017-01-28 17:53:17 +01:00
Jonathan White
16ed89c471
Implement ability to clone an entry when in search mode.
...
* Cloned entries have "- Clone" appended to their name
2017-01-25 20:02:32 -05:00
Akinori MUSHA
6ccae6cc37
Pressing escape quits search
2017-01-25 19:37:53 -05:00
Janek Bevendorff
292ed892c1
Fix Windows linker and runtime errors when building against static Qt
2017-01-26 01:15:12 +01:00
Jonathan White
b6f754c29a
Changed built-in clear search button with custom one to fix pixelation
2017-01-14 22:29:16 -05:00
Kyle Manna
5a3ed27fed
tests: yk: Initialize Crypto class
...
Initialize the Crypto class before running the tests as YubiKey
detection code depends on it for random data.
2017-01-14 17:58:05 -08:00
Janek Bevendorff
e17576a6f7
Merge branch 'develop' into feature/yubikey
2017-01-15 03:20:21 +02:00
Jonathan White
36df21d823
Enhanced search ui keypress actions
...
* Pressing down arrow will always focus on entry view
* Pressing enter opens currently selected entry
* Pressing CTRL+F focuses and selects search text
* Rewrote test cases to cover the new functionality
2017-01-14 19:47:35 -05:00
Janek Bevendorff
6fd7427cae
Merge branch 'develop' into feature/updateKdbxExtract
2017-01-14 22:21:41 +02:00
Janek Bevendorff
ea9f313416
Fix GUI test
2017-01-14 20:33:27 +01:00
Louis-Bertrand Varin
798041fe11
Extract readKeyFromLine.
2017-01-14 13:25:30 -05:00
Josh Soref
40eafa8adc
spelling: associations
2017-01-14 17:31:38 +01:00
Kyle Manna
9556d8e6da
tests: Add YubiKey Tests
...
* Basic testing for YubiKey code.
Signed-off-by: Kyle Manna <kyle@kylemanna.com>
2017-01-07 23:20:27 -08:00
Jonathan White
5f1b9a17ca
Fix testgui for Windows (PR #137 )
...
Introduces TemporaryFile class to act as a proxy to fix autoreload test cases failing on windows due to the behavior of QTemporaryFile.
2017-01-03 22:27:41 -05:00
Jonathan White
534364454d
Merge branch 'feature/cmake-fix-#50-#123' into develop
...
* Fixes #50 and #123
2017-01-02 22:27:20 -05:00
thez3ro
07a41f58d7
Add autotype library linking
...
Added Autotype switch + updated Travis to always test all extension
2017-01-02 22:25:36 -05:00
thez3ro
298665e32a
Improve UI of the search edit #131
2016-12-23 18:13:08 +01:00
Akinori MUSHA
d0a3c08840
Improve UI of the search edit (resurrecting 5c7c7f54
)
...
- The copy action (Control+C) when no text is selected copies the
password of the current entry. This should be reasonable when
Control+B copies the username.
- Down at EOL moves the focus to the entry view. Enter and Tab should
do that, but it would be handy for user to be able to get to the third
entry by hitting Down three times.
2016-12-22 17:16:59 +09:00
thez3ro
65992ba6ae
Option to select extension compile-time. Fix #50 #123
2016-12-04 19:57:24 +01:00
Jonathan White
791a749c2f
Search scopes to currently selected group (and children) ( #118 )
...
* Added test cases for case sensitive and group search
2016-11-28 19:02:21 -05:00
TheZ3ro
405b82588b
Add Autotype Entry-Attributes, Fix Group default sequence ( #107 )
2016-11-25 12:26:59 -05:00
Jonathan White
3d249365c2
Merge remote-tracking branch 'origin/feature/autoreload-db' into develop
2016-11-25 12:04:44 -05:00
Jonathan White
7fb33653ad
Implemented major autoreload functionality
...
* Ignore autoreload on save / save-as
* Consolidated db save code
* Corrected bug (crash) in merge entry code due to not cloning the entry
* Enhanced known modified status of database
* Implemented test cases for autoreload
2016-11-25 12:03:36 -05:00
TheZ3ro
b2f3cc6903
Add some password-related feature ( #92 )
...
* Add Standalone Password Generator. Closes #18
* Add an entropy meter for passwords. Closes #84
* Don't require password repeat when it is visible. Fixes #27
2016-11-23 21:59:24 -05:00
Jonathan White
37aedc8b03
Cleaned up code and added spots for todo work. Fully Working!
2016-11-09 07:38:14 -05:00
Jonathan White
e25cd9ba48
Add Merge database utility function ( #47 )
...
Thank you to @TheZ3ro and @monomon for there major contributions to this PR!
2016-11-07 22:37:42 -05:00
Jonathan White
13983d0e51
Make search always visible (PR #67 )
...
* Moved search bar to toolbar and consolidated search options into dropdown list
* Updated GUI tests to be atomic and rewrote search tests
* Searches are saved between databases
* Search is cleared when all databases are closed
* Implemented global search shortcut (CTRL+F) and a notification bar when in search mode
2016-11-02 21:01:02 -04:00
Josef Vitu
ad36ec4dfd
Fix tests
2016-10-28 18:51:09 +02:00
Felix Geyer
ad834f0f58
Merge branch '2.0'
2016-10-02 21:45:55 -04:00
Felix Geyer
c78822f6e6
Merge branch '2.0'
2016-10-02 21:45:54 -04:00
Felix Geyer
878995366a
Ask the user before moving an entry to the recycle bin.
...
Closes #447
2016-09-02 12:00:12 +02:00
Felix Geyer
1635a5211f
Pass entryFlags to clone() when recursing into sub-groups.
...
Based on https://github.com/keepassx/keepassx/pull/178 by Mois Moshev <mois@monomon.me>
Closes #525
2016-09-02 11:47:22 +02:00
Florian Geyer
8d16522d39
Repair UUID of inconsistent history items.
...
Closes #130
2016-08-03 23:48:40 +02:00
Felix Geyer
18e4dca6c9
Explicitly include QFile in TestKeePass2Writer.
...
Closes #452
2016-07-31 14:44:45 +02:00
Jonathan White
a454469949
Fixed test cases not building
2016-03-14 21:17:18 -04:00
Jonathan White
7f7753a004
Fixed various Qt5 changes in the http code
2016-02-28 10:52:02 -05:00
Felix Geyer
d6d92ce90a
Merge branch '2.0'
2016-02-08 18:13:29 +01:00
Felix Geyer
235361faf4
Explicitly cast char constant to QChar.
2016-02-02 00:57:28 +01:00
Felix Geyer
208b803fbe
Fix KeePass2Repair to retain multi-byte UTF-8 chars.
...
Since char is (often) unsigned the ch < 0x20 check matched all
multi-byte encoded UTF-8 chars.
2016-02-02 00:41:16 +01:00
Felix Geyer
8a92cec03f
Keep valid surrogate pairs in stripInvalidXml10Chars().
2016-02-02 00:38:58 +01:00
Felix Geyer
71d4cb781d
Merge branch '2.0'
2016-01-29 17:22:37 +01:00
Felix Geyer
eb56bd8973
Add repair functionality to strip invalid XML chars.
...
Refs #392
2016-01-28 23:07:04 +01:00
Felix Geyer
93585aded7
Always display scaled custom icons.
...
Closes #322
2016-01-26 22:44:38 +01:00
Felix Geyer
2d741afe3e
Strip invalid XML chars when writing databases.
...
These characters are unprintable or just plain invalid.
QXmlStreamReader throws and error when reading XML documents with such chars.
Closes #392
2016-01-24 17:20:16 +01:00
Felix Geyer
ecfbf72a57
Merge branch '2.0'
2015-12-15 21:05:00 +01:00
Felix Geyer
efc4cd5969
Merge remote-tracking branch 'github/pr/74'
2015-12-06 19:21:38 +01:00
Felix Geyer
2fa531745f
Check XML key file for valid base64 before using it.
...
QByteArray::fromBase64() doesn't validate the input.
Closes #366
2015-11-01 18:32:15 +01:00
Felix Geyer
0c36c40a5d
Make TestGui work with offscreen QPA.
...
For some reason hasFocus() returns true here.
Use isVisible() instead as it's a stronger check anyway.
2015-11-01 13:37:03 +01:00
Felix Geyer
dff3fc0572
Coding style fixes.
2015-10-15 18:02:31 +02:00
Felix Geyer
dc7b6623a9
Merge branch '2.0'
2015-10-11 10:44:30 +02:00
Felix Geyer
820941fd40
Auto-Type: Only require a substring match for regex.
...
This matches the behavior of KeePass.
Refs #357
2015-10-10 17:36:08 +02:00
Felix Geyer
862941abf6
TestAutoType: Restore AutoTypeEntryTitleMatch before every test.
2015-10-10 17:23:57 +02:00
Felix Geyer
3b2a39fd38
Merge branch '2.0'
2015-09-26 11:44:27 +02:00
Felix Geyer
bcb54bc38a
Avoid dereferencing QLists.
2015-09-25 21:34:56 +02:00
Felix Geyer
c8ae31a248
Remove backported Qt5 test macros.
2015-09-23 22:21:21 +02:00
Felix Geyer
5a13402b51
Activate window in TestGui.
...
It doesn't seem to get the focus automatically when run inside Xvfb.
QTRY_VERIFY(searchEdit->hasFocus()) failed as a result of this.
2015-09-12 23:12:17 +02:00
Felix Geyer
625e9a2547
Make TestGui agnostic to added "&" in tab title.
...
Fixes tests on OS X / Qt 5.5.0.
2015-09-12 15:48:38 +02:00
Felix Geyer
7fa0eddc5f
Make C++11 mandatory.
2015-09-12 13:55:50 +02:00
Felix Geyer
ae2b27d400
Connect rowsAboutToBeMoved() and rowsMoved() again.
...
Accidentally removed in 4fcce6f98f3d481514825ebdffc024c36bd5389c
2015-09-12 13:51:49 +02:00
Felix Geyer
7c424e1b85
Merge updated modeltest from Qt 5.
2015-09-12 13:51:49 +02:00
Felix Geyer
9882f16614
Remove Tools::currentDateTimeUtc().
2015-09-12 13:51:49 +02:00
Felix Geyer
e2ac176d3c
Remove second argument of QSKIP call.
...
Has been removed in Qt 5.
2015-09-12 13:51:49 +02:00
Felix Geyer
a71e25a8ba
Fix GUI tests.
2015-09-12 13:51:49 +02:00
Felix Geyer
208b0f39e6
Adapt to QtConcurrent being a separate module now.
2015-09-12 13:51:49 +02:00
Felix Geyer
c714fc89f1
Add missing include statements.
2015-09-12 13:51:49 +02:00
Felix Geyer
5a745da07b
Remove QCOmmandLineParser.
...
It is part of Qt >= 5.2.
2015-09-12 13:51:49 +02:00
Felix Geyer
531018e58d
Remove QSaveFile and QLockFile.
...
They are part of Qt >= 5.1.
2015-09-12 13:51:49 +02:00
Felix Geyer
813c64a055
Port cmake files to Qt 5.
2015-09-12 13:51:49 +02:00
Akinori MUSHA
b773dbe645
Test if hitting the Down key moves the focus to the entry view.
2015-08-05 19:02:17 +09:00
Felix Geyer
2c17fdcff0
Correct link order of testhashedblockstream.
...
Fixes FTBFS on Windows.
2015-07-21 23:08:12 +02:00
Felix Geyer
98d9dae087
Test if reset() and close() write only one final block.
2015-07-20 21:51:32 +02:00
Felix Geyer
2033174d95
Test if we correctly detect errors when writing.
2015-07-20 21:35:48 +02:00
Felix Geyer
3d1c27ceb7
Copy the database in TestGui before opening it.
...
We don't want to create lock files in the source tree.
2015-07-19 19:33:47 +02:00
Felix Geyer
6d1ca363af
Remove support for clearing the Klipper history.
...
KDE Plasma 5 doesn't provide the DBus interface anymore and
this avoids the QtDBus dependency.
2015-07-16 20:02:10 +02:00
Felix Geyer
240919335f
Add missing EmptyUuids.xml test file.
2015-07-14 22:20:56 +02:00
Felix Geyer
ceb6a0383e
Add ability to export databases to CSV files.
...
Based on implementation by Florian Geyer <blueice@fobos.de>
Closes #57
2015-07-14 22:14:34 +02:00
Felix Geyer
c6105a08ab
KeePass2XmlReader: Don't fail wheh nreading empty UUIDs.
...
Closes #298
2015-07-13 21:01:55 +02:00
Felix Geyer
cfffdae573
Improve error reporing of layered streams.
2015-05-09 23:21:50 +02:00
Felix Geyer
f6243675c9
Warn if result of processInPlace() is unchecked.
...
Fix callers accordingly.
2015-05-09 23:21:50 +02:00
Felix Geyer
a762cef0a9
Catch and handle all errors from libgcrypt.
2015-05-09 23:21:44 +02:00
Felix Geyer
ae013c2196
Don't run gcrypt self tests.
...
Seems to be broken on some distros that enable hmac verification
of the binary but ship the signature in a separate package.
We have our own test cases for the algorithms we care about.
2015-05-09 17:32:52 +02:00
Felix Geyer
eefe844dcd
Merge remote-tracking branch 'github/pr/80'
...
https://github.com/keepassx/keepassx/pull/80
2015-05-06 20:56:57 +02:00
Felix Geyer
9e051e835b
Close databases when they are locked.
...
Previously we've only hidden access to them.
Closes #275
2015-04-05 10:38:36 +02:00
Ben Boeckel
c9d12e93c2
cmake: remove the LOCATION query
...
Newer CMake deprecates the property. It isn't necessary anyways since
add_test will recognize targets as the executable name and make the full
path automatically.
2015-02-26 00:30:06 -05:00
Felix Geyer
71d39865b3
Introduce a strict mode in KeePass2XmlReader.
...
Many errors are now ignored when not in strict mode so we can still parse
files that have been written by broken/incomplete implementations.
2014-12-01 21:52:51 +01:00
Akinori MUSHA
dd79105baa
Complete remove the toggle search action.
2014-11-19 11:46:38 +09:00
Akinori MUSHA
b1c3814972
Make Ctrl+F not toggle the search mode but always enable it.
...
Switching back from other applications, the previous behavior of Ctrl+F
would often bother you in that it would dismiss the search widget if it
was already enabled when you meant by the key you wanted to perform a
search.
Making Ctrl+F always set you in search mode should save user from having
to care about the mode which is persistent across application switching
and database locking.
2014-11-18 19:46:53 +09:00
Felix Geyer
0d6117bf4c
Do some basic self-checks when initializing the crypto backend.
2014-06-15 11:17:40 +02:00
Felix Geyer
916ab99d62
Skip TestQSaveFile::transactionalWriteErrorRenaming as user root.
...
You can't deny root access to a file.
Closes #201
2014-05-26 18:24:43 +02:00