Commit Graph

49 Commits

Author SHA1 Message Date
Felix Geyer
9d8e276950 Set uuids for entries. 2012-05-10 21:35:26 +02:00
Felix Geyer
cf4e574c50 Support Twofish encrypted KeePass 1 databases.
Refs #2
2012-05-10 21:06:33 +02:00
Felix Geyer
c02b5abc6e Fix composite keys in KeePass1Reader. 2012-05-10 19:33:49 +02:00
Felix Geyer
7fd8154ea8 Add support for parsing KeePass 1 keyfiles.
Refs #2
2012-05-10 19:33:16 +02:00
Felix Geyer
65f2790170 Parse KeePass 1 database meta streams.
Refs #2
2012-05-10 11:44:25 +02:00
Felix Geyer
79b15e2ac6 Implement support for parsing groups and entries from KeePass 1 databases.
Still missing:
- Key files.
- Twofish encryption.

Refs #2
2012-05-09 23:16:32 +02:00
Felix Geyer
ebce183925 Start implementing support for reading KeePass 1 databases.
For now only decrypting the database works.

Still missing:
- Actually parsing the database.
- Key files.

Refs #1
2012-05-08 22:06:12 +02:00
Felix Geyer
739f4d97a6 Coding style fixes. 2012-05-02 17:04:03 +02:00
Felix Geyer
f89ffa10e6 Add Tools::readAllFromDevice().
Make KeePass2XmlReader::readCompressedBinary() use the new function.
2012-05-02 11:06:24 +02:00
Felix Geyer
3df2ad35cb Constification and some style fixes. 2012-04-23 21:09:01 +02:00
Felix Geyer
f28f868671 Coding style fixes. 2012-04-23 17:02:09 +02:00
Felix Geyer
67bf8e7b2a Write history only for entries that are not history items. 2012-04-22 22:33:14 +02:00
Felix Geyer
baed7d76cf Use QHash for temporary entry/group containers.
Closes #11
2012-04-22 12:30:38 +02:00
Felix Geyer
8acd6f74d8 Support KeePass format 3.00 (used by KeePass2 >= 2.15).
Closes #6

Attachments are now stored in a pool under Metadata instead of in entries.
The protected flag of attachments isn't supported anymore.
New metadata attributes: color, historyMaxItems and historyMaxSize.
Dropped metadata attribute: autoEnableVisualHiding.
2012-04-21 16:45:46 +02:00
Felix Geyer
2e011d5362 Improve code style. 2012-04-18 22:08:22 +02:00
Florian Geyer
e1632e8087 Disable timeinfo update for history entries on database parsing. 2012-04-18 17:03:57 +02:00
Felix Geyer
d4a94a8996 Move attributes and attachments handking from Entry into own classes. 2012-04-14 15:38:20 +02:00
Florian Geyer
674909f635 Add modified signals for entries. 2012-04-11 21:50:20 +02:00
Florian Geyer
8b62365f8e Add modified signals for groups. 2012-04-11 21:50:20 +02:00
Florian Geyer
3c0efd6809 Fix missing write of group notes. 2012-04-11 21:50:20 +02:00
Florian Geyer
c80be1dd84 Add modified signals for metadata. 2012-04-11 21:50:20 +02:00
Felix Geyer
2f58b854ed Print warning about invalid entry references. 2012-04-11 18:46:23 +02:00
Felix Geyer
d527e63f1f Change the Entry attributes/attachment API to provide a stable key order. 2012-04-06 19:33:29 +02:00
Felix Geyer
279585fff4 Mark some constructor as explicit. 2012-01-11 19:18:35 +01:00
Felix Geyer
e397080d79 Rename addAttribute() to setAttribute() and addAttachment() to setAttachment(). 2012-01-07 16:22:11 +01:00
Felix Geyer
007a901dba Proper error handling for reading databases. 2012-01-06 20:03:13 +01:00
Felix Geyer
00aafa69f5 Store database icons as QImage instead of QIcon.
This has the advantage that they can be used without a running X server.
Add methods to retrieve QPixmaps that are converted from the stored QImages
and cached by QPixmapCache.
2012-01-01 21:52:54 +01:00
Felix Geyer
bce46c5ece Enforce that group/entry uuid is set when writing a database. 2011-12-27 15:47:06 +01:00
Felix Geyer
9ffa5232f5 Remove some unneeded includes. 2011-11-12 12:20:08 +01:00
Felix Geyer
027362be76 Notify entry/group parent on deletion.
Also make the root group pseudo static, i.e. it shouldn't be changed
after the database has been fully constructed.
2011-07-09 21:54:01 +02:00
Felix Geyer
d4f02a78a7 Coding style fixes. 2011-07-08 14:51:14 +02:00
Felix Geyer
4dbdc4d847 Make some Group methods private. 2011-07-08 13:57:02 +02:00
Felix Geyer
afb285a476 Use a special enum for inherit/enable/disable variables. 2011-07-07 12:45:14 +02:00
Felix Geyer
a299dd9715 Integrate KeePass2RandomStream into KeePass2 reader and writer classes.
This hopefully completes support for reading/writing kdbx <= 2.14 files.

Also fix a bug in KeePass2XmlWriter so it sets Protected="True" in the Value
tag instead of Key.
2011-07-07 00:15:52 +02:00
Felix Geyer
58e048be96 Add KeePass2RandomStream class.
It's responsible for processing protected strings in kdbx files.
2011-07-07 00:08:37 +02:00
Felix Geyer
ef8935431c Add ability to grab the raw xml string of kdbx databases. 2011-07-06 20:21:40 +02:00
Felix Geyer
c548c7f4b4 Add initial support for writing protected strings. 2011-06-29 16:43:14 +02:00
Felix Geyer
6afda908bc Move key transform() call into Database. 2011-06-29 16:39:39 +02:00
Felix Geyer
fd9685037b Support writing empty color. 2011-06-29 16:33:23 +02:00
Felix Geyer
cfb55828b6 Add initial support for encrypted database fields. 2011-01-13 22:31:17 +01:00
Felix Geyer
e3da80fcc6 Add KeePass2Writer.
Support attributes MasterKeyChanged, MasterKeyChangeRec, MasterKeyChangeForce and Tags.
Close streams in the dtor.
2010-09-25 12:41:00 +02:00
Felix Geyer
b8dfb9cc4d Add support for gzip compressed databases. 2010-09-23 22:27:59 +02:00
Felix Geyer
f0e711ac23 Warn about unsupported icon ids. 2010-09-23 00:21:36 +02:00
Felix Geyer
537ffafefd Add unit test TestKeePass2Reader. 2010-09-20 00:16:30 +02:00
Felix Geyer
567dd92d4c Add built-in icons. 2010-09-19 21:22:24 +02:00
Felix Geyer
9f282928e8 Implement reading encrypted kdbx files. 2010-09-13 23:24:36 +02:00
Felix Geyer
f5dd24fdbe Use upper case names for constants. 2010-09-05 11:46:36 +02:00
Felix Geyer
1cfc34361a Add interface for database reader/writer. 2010-08-31 16:18:45 +02:00
Felix Geyer
ee4c2c3dd4 Move core/Parser to format/KeePass2XmlReader and core/Writer to format/KeePass2XmlWriter. 2010-08-31 14:39:35 +02:00