Christian Hohnstädt
6ea01e80f6
Refactor item export: separate GUI and database
...
Collect all export formats in pki_export.
Each export format has assigned acouple of flags, indicating,
whether they are text, concatenateable, encrypted, usable for
multiple selections or only for a single item.
2021-11-13 14:49:02 +01:00
Christian Hohnstaedt
f2fe9be3f3
Move file loading GUI element out of non-gui container class (db_*)
...
into GUI View widgets/*TreeView.cpp
2021-10-30 11:51:35 +02:00
Christian Hohnstädt
be1a44d0a8
Consolidate export types and format in pki_export class
...
Move the descriptons from the ExportDialog into the
new pki_export class.
Also translate the exportType::etype to F_* flags
2021-10-30 11:51:35 +02:00
Christian Hohnstaedt
f8915fbc98
PwDialog: Split into cmdline-core and GUI
...
Another step to split core and GUI components
2021-06-01 17:48:37 +02:00
Christian Hohnstaedt
0c5603ec20
XcaWarning: Split into Core and GUI element
...
one more step to split core and GUI components
2021-06-01 17:48:37 +02:00
Christian Hohnstädt
1500e636c8
Drop OpenSSL backward compatibility hacks < 1.1.0
...
OpenSSL < 1.1.1 is out of support anyway
2021-05-09 12:25:32 +02:00
Christian Hohnstädt
703d9c0ba7
sql: better handle SQL errors during insert
...
Don't pop-up a success message, but delete the item,
if an SQL error occures during insert.
2021-05-05 19:39:28 +02:00
Christian Hohnstaedt
ff7704ff0b
Add context sensitive documentation
...
All dialogs get the "Qt::WindowModal" modality to
operate the Help window in parallel
while also blocking the dialog parent windows.
The manageRevocations() moved from model to view
The Details dialogs become more self-sufficient.
There is a statc start method that shows the dialog and
updates name and comment after accept().
This allows recursive starts of certificate details and
independence of mainwin.
It is necessary to set the current toplevel widget as parent
for the next dialog to not block the application.
2021-04-23 15:50:13 +02:00
Christian Hohnstaedt
7ace0db0d5
Add ED25519 support for commandline key generation
...
Enable the key-job class to parse ED25519 key description
without size and EC-Group correctly.
Don't check the size parameter of ED25519 keys.
2021-04-09 17:36:03 +02:00
Christian Hohnstaedt
0bdd964443
Use .priv as SSH private key extension
2021-04-01 17:25:27 +02:00
Christian Hohnstädt
45de747461
Add support for SSH2 ED25519 private key export
...
Encrypting the SSH2 private keys is not supported, yet.
2021-04-01 12:24:01 +02:00
Christian Hohnstädt
24009b13c7
Fix warnings
2020-10-14 19:48:17 +02:00
Christian Hohnstaedt
17b621ccef
Encapsulate all index.internalPointer() in fromIndex(index)
2020-05-10 09:09:31 +02:00
Christian Hohnstaedt
45f834a6e4
Move tree-handling from db_x509 class to the base class
...
This is a preparation for possibly inserting
structuring folder elements later.
2020-05-08 17:37:40 +02:00
Christian Hohnstaedt
af79214121
Use fromIndex(index) convenience function
...
for certificates create a function returning
a dynamically casted pki_x509 pointer
Add NULL check of dynamically casted pointer,
because it could be a folder...
2020-05-08 17:37:40 +02:00
Christian Hohnstaedt
7c65a786ea
Revamp database management
...
The global variable "Database" of class xca_db
can be used by any other class to access. No need
to provide it.
The "xca_db" class managed the "database_model" pointer.
Accessing the name of the current database has been unified.
2020-05-08 07:47:15 +02:00
Christian Hohnstaedt
03633d7a8a
Provide db class name through constructor
2020-04-30 18:44:36 +02:00
Christian Hohnstaedt
a3344100e3
Drop FOR_ALL_pki() makro and use a foreach() loop
...
The foreach loop iterates over all items of a type.
The iterate method is now superflous
2020-04-30 18:40:49 +02:00
Christian Hohnstaedt
5a64725556
Move item store from db_base into separate class "pki_lookup"
...
Since also pki_base and other classes need to access them.
2020-04-30 18:37:25 +02:00
Christian Hohnstaedt
9c55caf82f
Merge branch 'master' into develop
2020-03-23 06:53:06 +01:00
Christian Hohnstaedt
92846d6b38
Close #174 : Microsoft's PVK RSA private key format
...
Support Import and export private and public PVK keys.
2020-03-22 08:12:38 +01:00
Christian Hohnstaedt
928ff6458c
Improve and fix qDeleteAll()
...
qDeleteAll() does not clear the QList.
Add it, if necessary.
Use dynamic_cast where appropriate
2020-03-20 16:29:42 +01:00
Christian Hohnstaedt
ef9b3aff3d
Drop superflous includes from header files
2020-03-13 12:13:27 +01:00
Christian Hohnstaedt
2f917237bc
Close #157 Generate and export CRLs from commandline
...
Enable key generation and CRL generation on the commandline
2020-03-13 12:13:27 +01:00
Christian Hohnstaedt
a48ea10e3d
Split key generation and data-collection-UI
...
Use the key job to transfer the information
2020-03-13 12:13:27 +01:00
Christian Hohnstaedt
3dd34a61bc
Move "showPki()" from the model class to the view
...
The displaying function requires UI.
2020-03-13 12:13:27 +01:00
Christian Hohnstaedt
d0d387b03e
Directly display the error instead of signaling others
...
The XCA_ERROR() is console-compatible and can be used
without GUI
2020-03-13 12:13:27 +01:00
Christian Hohnstaedt
10857e3e0c
Support item import from the commandline
2020-03-13 12:13:27 +01:00
Christian Hohnstaedt
19eafe1739
Improve and fix qDeleteAll()
...
qDeleteAll() does not clear the QList.
Add it, if necessary.
Use dynamic_cast where appropriate
2020-03-13 12:13:27 +01:00
Christian Hohnstaedt
c5208f1cd7
Consolidate headers, unguard delete operator
2020-03-11 07:19:56 +01:00
Christian Hohnstaedt
e4d0ab8f8e
Refactor Image and icon ressources
2020-03-11 07:19:56 +01:00
Christian Hohnstaedt
113a201d39
Separate database from Mainwin for better cmdline support
...
New classes:
- database_model: Manage the database tables (keys, req, cert, crl, templ)
extracted from widgets/MW_database.cpp
- arguments: parse commandline, dynamically create help text
2020-03-11 07:19:56 +01:00
Christian Hohnstaedt
026d8f8e6d
Extend PEM files by human readable information about the item
...
This can be enabled or disabled during export.
Move from FILE* to QFile
2019-03-18 06:25:20 +01:00
Christian Hohnstaedt
a78d953338
Support ecdsa SSH public keys
2019-03-14 06:35:25 +01:00
Christian Hohnstaedt
96d8c5cf37
Generalize handling of DateTime columns
2018-06-26 23:32:40 +02:00
Christian Hohnstaedt
8d64db6be3
Const-ify remFromCont()
2018-04-24 23:10:46 +02:00
Christian Hohnstaedt
94c3835ca5
Issue #19 Replace 3DES encryption by AES-256
2018-04-17 12:12:16 +02:00
Christian Hohnstaedt
31ab5595d1
Reject 0 key length when generating RSA/DSA keys (related to issue #18 )
2018-04-10 06:02:16 +02:00
Christian Hohnstaedt
c43051df12
Improve Use counter acquirement by one SQL statement for all keys
2018-04-09 06:09:55 +02:00
Christian Hohnstaedt
6e432238e7
Generalize, simplify and unify settings management
...
Add settings class to access the settings table in the database
Cache values and improve database writes.
Options dialog simplified
Replace getSetting / storeSetting
Unpack option flags to rows in the settings
2018-03-10 09:04:54 +01:00
Christian Hohnstaedt
4288aafe92
Improve automatic commenting actions
2018-03-07 20:51:46 +01:00
Christian Hohnstaedt
5ef451ee91
Document in the comment if a public key has been completed by an imported private one
2018-03-06 16:42:28 +01:00
Christian Hohnstaedt
64d64d5130
Allow editing key name and comment in the key details
2018-03-05 07:46:11 +01:00
Christian Hohnstaedt
d079dbde09
Collect affected items
2018-03-05 07:46:10 +01:00
Christian Hohnstaedt
24d1f85a26
Make use of C++ templates for more type-safety
2018-03-05 07:46:10 +01:00
Christian Hohnstaedt
dc75fa0171
Add token as item source, minor fixes
...
Use dynamic cast for sqlSELECTpki()
Fix Double-click links in cert details
2018-03-05 07:46:10 +01:00
Christian Hohnstaedt
a3900b1473
Several fixes for templates, key encryption etc.
2018-03-05 07:46:10 +01:00
Christian Hohnstaedt
3f016c62e7
Fix minor problems during db open and key import
2018-03-05 07:46:10 +01:00
Christian Hohnstaedt
431076c90e
Change private key encryption in the database to PKCS#8
2018-03-05 07:46:10 +01:00
Christian Hohnstaedt
fc7fc357ac
Support opening remote databases MySQL and PostgreSQL
2018-03-05 07:46:10 +01:00