Commit Graph

33 Commits

Author SHA1 Message Date
Christian Hohnstaedt
6777f7c853 Close #401: Write PEM data to a file especially for crlgen
The new option --pem-file=<filename> behaves like --pem, just that it
writes the PEM data (and nothing else) to the given file name
2024-08-30 22:17:58 +02:00
Christian Hohnstaedt
63b54f938c Add cmdline option to disable native dialogs
--no-native-dialogs disables QTs feature to display
OS specific dialogs for message-boxes and file-open dialogs.

This is currently necessary for flatpak, but may be helpful in other
occasions, too.
2024-08-24 15:09:00 +02:00
Christian Hohnstaedt
ec7efed657 Documentation: add information about password format 2024-02-18 23:20:12 +01:00
Christian Hohnstaedt
993da2d474 Use C++11 initializers for all non-static class members
When XCA started in 2002, there were no C++ initializers.
Drop explicit initializers from the constructors.

 - Fix indentations of section declarators.
 - Replace NULL by nullptr when feasible.
 - Sort private section: properties first, then methods.
2023-10-08 22:19:18 +02:00
Christian Hohnstaedt
e39be9b4e9 Close #423: parameter --name is not respected when running with CLI
Evaluate --name argument when generating the CRL.
Add --import-names option. This allows to name the imported items
individually, even if one PEM file contains multiple items.
2023-09-24 00:34:46 +02:00
Christian Hohnstaedt
1176a35fa7 Debugging: allow to select/deselect debug messages
Inspired by the Linux kernels dynamic debugging.
2023-05-28 15:31:33 +02:00
Boris-Chengbiao Zhou
eb66836583 Fix command line parsing
Expected CLI option arguments weren't passed to the QCommandLineOption
constructor.
2023-01-08 00:54:35 +01:00
Christian Hohnstaedt
bd61f44e02 Refactor source file inclusion
No libraries needed. Just put all files as source to xca
and those needed for xcadoc to the xcadoc target.
Github Action: create deployments for each matrix result
2022-09-07 20:01:25 +02:00
Christian Hohnstaedt
ded935b033 Prepare for Qt6: QRegExp -> QRegularExpression
QRegExp is deprecated and needs special library
in Qt6: core5compat

Replace by QRegularExpression which has been introduced by Qt5
2022-08-31 00:01:06 +02:00
Christian Hohnstaedt
ee842feb5e Improve windows compatibility 2022-08-31 00:01:06 +02:00
Melg Eight
3eeb33cb07
Fix new/delete mismatch 2022-02-09 05:37:04 +03:00
Christian Hohnstaedt
0e5af2e452 Replace check_oom() by Q_CHECK_PTR()
Qt offers the functionality. No need to invent it ourselves.
2021-06-01 17:48:37 +02:00
Christian Hohnstaedt
9c49c9949f Consolidate and document used environment variables
Rename XCA_SPECIAL to XCA_ARGUMENTS, which is less generic.

and change %1_OPTIONS to XCA_%1_OPTIONS to prefix all
XCA related environment variables with "XCA_".
2021-06-01 17:48:37 +02:00
Christian Hohnstaedt
f1c0e96435 Cmdline: no-gui autodetect: also detect --crlgen=xxx as nogui 2021-06-01 17:48:37 +02:00
Christian Hohnstaedt
03769bef56 Add commandline option "select" to 'print', 'pem' or 'text'
can be used to export or display items.
2021-05-24 22:22:51 +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
dea42e8d1f Minor documentation update 2021-05-07 22:08:34 +02:00
Christian Hohnstädt
ca0fdcd5c9 Bash completion 2021-04-23 15:57:32 +02:00
Christian Hohnstaedt
d53d64d23d Transform XCA documentation from SGML to sphinx
linuxdoc is pretty outdated, while sphinx is really cool:

 - Sphinx is modern with a broad user base
 - The generated documentation is themeable
 - The sphinx-source is much more readable than the
   SGML-tag scattered linuxdoc.
 - The different topics can be splitted into different files
 - It can be converted to qt-context sensitive help
 - It supports syntax highlighting for the SQL database documentation
 - It is supported on MacOSX,because it is python-based.

Drop code2html perl-script, which was used to colorize the SQL schema.
Generate "doc/arguments.rst" with XCA_MAN="rst" ./xca
2021-04-09 17:36:03 +02:00
Christian Hohnstädt
497e4a6120 Extend Password input by filedescriptor number and automatic man page
Also extend the documentation about the password.
Automatically generate the man page from the options.

Call xca as "XCA_MAN=1 ./xca" to print the current man-page options
2020-10-14 19:48:18 +02:00
Christian Hohnstädt
673df16dcf Finish struct option with zeros 2020-10-12 13:04:03 +02:00
Christian Hohnstaedt
ef24c00c22 Minor fixes 2020-06-26 14:21:32 +02:00
Christian Hohnstaedt
9b201566e2 Improve on cmdline, console, unicode and windows CMD
Improve Windows registry functions

Use *A postfix function explicit becaus e we don't expect
unicode characters.
Also simplify "console_write()"
2020-05-06 18:32:27 +02:00
Christian Hohnstaedt
ee7739baa6 Improve detection of commands enforcing no-gui
provided cmdline parameter are handled as abbreviated
parameter.
2020-03-18 05:26:16 +01:00
Christian Hohnstaedt
7a5936eb9f Replace malloc/free by new/delete 2020-03-18 05:26:16 +01:00
Christian Hohnstaedt
31088b608c cmdline help move the asterisk to the front
indicating the requirement for a database when using this option.
2020-03-18 05:26:16 +01:00
Christian Hohnstaedt
00bf676f0a Fix building for Windows
No ioctl() on windows.

Avoid initialisation race of static arrays
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
10857e3e0c Support item import from the commandline 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
64ef856546 Add flag to option list, declaring whether a database is required 2020-03-11 07:19:56 +01:00
Christian Hohnstaedt
c1ea126efe linewrap in help 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