Commit Graph

24 Commits

Author SHA1 Message Date
Marius Kittler af5d9147b4 Improve exception constructors 2018-12-21 17:31:24 +01:00
Martchus 2c856e3976 Add statistics 2018-12-21 01:12:53 +01:00
Martchus 448c5b1a37 Improve reading/writing overall file
* Allow to hash password N times using SHA-256
* Use flags instead of bool parameter
* Expose extended header
* Fix bugs when reading/writing extended headers
* Store password as std::string

Reading files written with previous versions is still
possible. If new features are not used it is also possible
to read new files with previous versions.
2018-12-18 23:17:19 +01:00
Martchus d9edcc4083 Apply clang-format 2018-12-08 19:09:17 +01:00
Martchus ff76846e8b Don't use pubsetbuf() when using libc++
Otherwise the eof bit is set on attempt to read
2018-12-03 00:28:24 +01:00
Martchus 60d8972dcb Improve error handling when loading file
* Handle IO errors when reading internal buffer
* Throw an error when the decompressed or decrypted buffer
  is empty
2018-12-03 00:26:11 +01:00
Martchus 7fd253f895 Read directly from the vector's buffer 2018-09-08 19:50:28 +02:00
Martchus 51442d0b68 Improve coding style in PasswordFile 2018-09-08 19:50:28 +02:00
Martchus e6f66ce932 Fix warnings, improve coding style 2018-09-07 01:14:21 +02:00
Martchus 30a95e2ffc Add a separate write() method to handle file opening manually
Opening the file manually can be useful, eg. when dealing with
Androids storage access framework.
2018-09-07 00:58:40 +02:00
Martchus e265bbe733 Allow to access underlying file stream directly 2018-09-05 00:33:01 +02:00
Martchus 4c6a271eb8 Improve c'tors and d'tors
* Provide move c'tor
* Actually copy the entries and header info
* Remove useless close() in d'tor (should be called anyways)
2018-09-05 00:32:32 +02:00
Martchus 968e597c24 Support "file://" protocol 2018-06-12 21:47:38 +02:00
Martchus 7c619b6d62 Fix error message for compression 2018-06-09 18:35:05 +02:00
Martchus d80cb7233a Apply clang-format 2018-03-20 20:11:31 +01:00
Martchus 29220159fa Apply clang-format 2017-05-01 03:25:30 +02:00
Martchus 0b9a0fe326 Fix decoration for static builds 2016-08-29 15:42:07 +02:00
Martchus 5ffe22a3a9 Use workaround for GCC Bug 66145 2016-06-14 22:56:41 +02:00
Martchus dcfadcc5d8 Add API doc 2016-06-10 23:25:21 +02:00
Martchus 76b5abb5ba check whether the current file is empty before creating backup 2016-02-27 23:21:44 +01:00
Martchus bcefbb66e8 fixed includes 2015-09-06 20:33:27 +02:00
Martchus d39fd6a598 added support for reading/writing an extended header which might be
useful later
2015-06-21 21:44:07 +02:00
Martchus b860d01b1e - added global extended header (introducing global file format version
4)
- unknown extended headers will not be just ignored anymore, they will
be read and written again when saving the file
2015-06-07 00:14:00 +02:00
Martchus c848fbc5eb First commit 2015-04-22 19:06:29 +02:00