After dropping Qt4 support, the Qt5 QStandardPaths class
can be used to replace my implementation of directory discovery.
QStandardPaths follows the XDG specification.
Always only use forward slash /
Drop all "QDir::separator()" and "nativeSeparator()"
functions. Only use it where filenames are displayed for the user.
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
The case-insensitive object search adds all short and long names
to a lookup table mapping the lowercase name to the corrersponding nid.
The array of nids contains 7 undefined nids. Resolving them
raises the error.
This fix deletes those errors after the map has been built.
- Remove all aia.txt from the Code, Documentation and ToolTip
- Add an Operating system dependent help hint
- Replace unix LF by DOS CR-LF for windows installation
Depending on the OpenSSL version some OIDs are known, some are not.
When reading "oids.txt" file and adding the new OID definitions:
- Silently skip definitions that are 100% identical to the OpenSSL values.
- Give a hint to change identifiers that are used for a different OID
- Give a hint about definitions that differ to remove them from the file.
Also accept them as Alias when reading dn.txt and eku.txt
This patchset adds:
- configure.mac now looks for qmake, backs up xcode project, uses xca.pro to generate a new one, generates a different local.h
- mac-package.sh generates a standalone .app bundle for distribution using deployqt from trolltech labs, packages up manual, COPYRIGHT, etc into a .dmg
- mac packaging niceties in the qmake project
- mac icon file
- usability fixes for OS X:
- look for user configured oids and such in ~/Library/Preferences/xca if it exists
- look for original ones in app bundle/Contents/Resources (it tried to do this before...)
- more robust code for getting bundle location (less likely to be broken by Apple in OS revisions)
- start browsing for files in ~/Documents
- fix wildcards on mac so files without extensions will be opened
- fix save behavior for .xdb files so that it's hard to get one that doesn't end in .xdb, as this causes difficulty w/Qt
Notes:
- one of the compilation fixes was in the new revocation data function that replaced the old macros... I didn't have time to verify that my fix doesn't break when used with 0.9.8.
- QStringToAsn1() is clearly incorrect but I haven't yet determined what callers expect, so I just called it out in a comment and did not yet fix it
- I added some code that I haven't tested on Windows because I thought it might be a nice function to have there too. I have not added anything to call that function, however, since I don't currently have a machine I can test on :). The code is clearly marked in comments.
additional (private) oids can be registered in oids.txt
OIDs for extended key usage and Distinguished name are
now read from eku.txt and dn.txt respectively.
XCA does not open DB when viewing items from CMD line