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 Hohnstaedt
7e72d8c02c
Commandline: Add "--list-items" to print a list of database items
2021-05-11 12:07:40 +02:00
Christian Hohnstaedt
ef24c00c22
Minor fixes
2020-06-26 14:21:32 +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
b2ab7570b8
Minor fixxes and constifies
2020-04-30 18:47:28 +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
ea453d4336
Encapsulate all BIOs in the BioByteArray class
...
If we have a QByteArray (ba) and must provide it to
a BIO* expecting OpenSSL function, the following
construct provides it: BioByteArray(ba).ro()
directly providing the QByteArray buffer as BIO
It also supports mixed writes:
BIO_write(bba, buf, size)
bba += QByteArray
2020-04-06 22:07:57 +02:00
Christian Hohnstaedt
4d95912d51
Add console_write() to print also on CMD
2020-04-05 22:45:11 +02:00
Christian Hohnstaedt
c528c37986
Merge branch 'master' into develop
2020-04-05 10:58:47 +02:00
Christian Hohnstaedt
4314b0ead9
constify slotid
2020-04-05 09:16:12 +02:00
Christian Hohnstaedt
5543ec2fb8
Merge branch 'master' into develop
2020-04-02 07:35:18 +02:00
Christian Hohnstaedt
b41d322069
Refactor native separators / and \ on windows.
...
Always only use forward slash /
Drop all "QDir::separator()" and "nativeSeparator()"
functions. Only use it where filenames are displayed for the user.
2020-04-02 06:12:47 +02:00
Christian Hohnstaedt
096e57ec8c
Close #70 : cant open ics file in ical on macos mojave
...
Fixed syntax errors in the ICS file.
Verified by http://ical-validator.herokuapp.com/validate/
Thanks for the service.
2020-04-01 12:29:55 +02:00
Christian Hohnstaedt
7babd609be
Drop unneeded pki_base::insert()
...
Insert / append does not matter,
because the rows are sorted by columns anyway.
2020-03-17 05:13:35 +01:00
Christian Hohnstaedt
1278ef9379
Add self-accounting of items for debugging
2020-03-13 12:13:27 +01:00
Christian Hohnstaedt
55d1693015
Improve printing of cmdline items
...
Unify --print by collecting all properties
Add --pem to print the item in PEM format
2020-03-13 12:13:27 +01:00
Christian Hohnstaedt
1544065133
Extend --print and --text functionality
2020-03-13 12:13:27 +01:00
Christian Hohnstaedt
7d0ab9d787
Add pki_XXX(const pki_XXX*) constructor
...
pki_XXX(const QString) -> (const QString &)
2020-03-11 07:19:56 +01:00
Christian Hohnstaedt
b2a69f3586
Several fixes of previous commit
...
Passwd::cleanse() also resets the password size
db_base::flushLookup() now deletes all items
and pki_base does not anymore.
Drop TRACE
Colorize pki_base::print()
Set and inherit filename of loaded items
Add print() method to pki_pkcs12
and constify its methods
2020-03-11 07:19:56 +01:00
Christian Hohnstaedt
a90d7b5b0d
Improve password input handling
...
Unify password results
Retry on password verification error
Honor the users wish to exit
2020-03-11 07:19:56 +01:00
Christian Hohnstaedt
9da73073c8
Create CRL by providing a crljob, describing the parameters
...
The GUI will prepare such a job and the cmdline can do so, too.
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
2fbadfc9f0
Update Copyright Years to 2020
2020-01-13 07:26:46 +01:00
Christian Hohnstaedt
1ea45c8da4
Constify fload() fromPEM_BIO() fromPEMbyteArray()
...
Use "BIO_from_QByteArray()" instead of "BIO_new_mem_buf()"
Replace qSort() by std::sort()
Replace QString::null by QString()
2020-01-06 21:30:29 +01:00
Christian Hohnstaedt
8726c8b96d
Improve item loading. Inspired by #153
...
If Loading the item results in an openssl error,
even if the item is not empty, discard it.
Otherwise loading it from the database later on will fail.
Improve "autoIntName()"
2020-01-06 19:35:11 +01:00
Christian Hohnstaedt
9aa2525fab
Remove fopen_error() and its last user.
2019-12-19 07:17:03 +01:00
Christian Hohnstaedt
7f833a591f
Close #144 : Database export has issues with wildcards in internal names
...
Escape more characters when using internal name
as file name according to:
https://docs.microsoft.com/de-de/windows/win32/fileio/naming-a-file
Append a "_" after "CON, PRN, AUX, NUL, COM1-9, LPT1-9" as filename.
2019-12-05 14:56:39 +01:00
Christian Hohnstaedt
b9a8bb1a04
Cleanup: remove unused properties and declarations
2019-03-27 05:58:25 +01:00
Christian Hohnstaedt
f43e7520db
Support concurrent database access.
...
If a database is modified by another instance of XCA the passive
instance reloads and displays the changed parts.
2019-03-25 06:47:25 +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
f55c7feee7
Constify some functions
2019-03-14 06:35:25 +01:00
Christian Hohnstaedt
1bc340a0ef
Close #104 : Also show sha256 digests of public keys
...
Print digest of public keys in the key details in different formats:
Print SHA256 SSH digest as used to by SSH users:
ssh-keygen -l -f ~/.ssh/id_rsa.pub
Print SHA1 X509 key digest as shown in the
Subject key identifier of a certificate
Print SHA256 digest as in:
openssl pkey -pubout -outform DER < key.pem | sha256sum
as requested by this issue.
Refactored digesting functionality by a generic Digest()
function working with QByteArrays.
The function formatHash() now also expects a QByteArray input.
2019-03-14 06:35:24 +01:00
Christian Hohnstaedt
c41bbf9b23
Close #82 : Renew CA ROOT Cert
...
Enable renewal option in the context menu
for self-signed CA certificates
2019-03-12 22:11:52 +01:00
Christian Hohnstaedt
340b53f4fd
Close #55 : Add Certificate counter row for requests.
...
(XCA 2.x - Relationship CSR <-> issued Certificate broken)
This counter is dynamic and not stored in the DB.
In comparison to the signed flag, which is stored and
remains set in the DB, even if all certificates
issued by signing this request are deleted.
2018-08-17 06:00:40 +02:00
Christian Hohnstaedt
bdfa10d4d5
Close #45 : Unable to view Public Key
...
Allow displaying the public key of a certificate
or request without importing it.
When importing certificates or CRLs,
display the issuer if it exists in the database.
2018-07-01 14:58:23 +02:00
Christian Hohnstaedt
dc5199205c
Make all dates in columns fancy, still sorting correctly by age
...
ToolTip shows the pretty formatted local date with time.
2018-06-27 08:56:07 +02:00
Christian Hohnstaedt
96d8c5cf37
Generalize handling of DateTime columns
2018-06-26 23:32:40 +02:00
Christian Hohnstaedt
b10b4f7a53
Inspired by #42 : display insertion date relative
...
Easy to find the most recent entry, because it says
"3 seconds ago"
2018-06-25 21:20:25 +02:00
Christian Hohnstaedt
0c8df14b7e
Close #27 : Configurable certificate expiry warning threshold
...
Add configuration values in the Options dialog to
control the time when certificates get marked yellow and
the expiration alarm time in calendar entries.
2018-05-11 09:19:12 +02:00
Christian Hohnstaedt
dc36728df8
Generate calender (.ics) files for certificate and CRL expiries
...
Also support consolidated calendar entries for a CA,
containing the CA, all issued certificates and the CRL expiry dates.
2018-05-10 12:49:59 +02:00
Christian Hohnstaedt
b362ae3593
Const-ify dbheader in column_data() and getIcon()
2018-04-25 09:34:45 +02:00
Christian Hohnstaedt
b74642fa09
Const-ify QSqlRecord of restoreSql()
2018-04-24 09:34:34 +02:00
Christian Hohnstaedt
331b79bd9d
Close #23 : Improve limiting to pattern in certificate tree view
...
CA certificates that don't match the search pattern, but have
matching childs are shown disabled with internal name.
2018-04-22 07:06:31 +02:00
Christian Hohnstaedt
6f85548c07
Drop getClassName()
2018-03-30 14:38:09 +02:00
Christian Hohnstaedt
2c20bd109a
Constify and Pure-Virtual pki_base and derived classes
2018-03-30 14:38:09 +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
4867cfb8ab
Improve "Dump database" filename
2018-03-07 05:49:46 +01:00
Christian Hohnstaedt
545c955616
Add "Primary key" column to show the items internal id
...
Especially helpful if you want to lookup the item
in the database manually.
2018-03-05 07:46:11 +01:00