diff options
author | Edward Welbourne <edward.welbourne@qt.io> | 2017-08-07 12:49:59 +0200 |
---|---|---|
committer | Timur Pocheptsov <timur.pocheptsov@qt.io> | 2017-08-17 06:43:49 +0000 |
commit | b9557296cb988c6007ed17f182a03c8205d5dffc (patch) | |
tree | 203b7122e931afcda46e4a057be1c4896b403e11 /util/integrity | |
parent | d7db2b43596b9a51017546eb1c6e2c4e30a0041e (diff) |
Fix crash when reading a PKCS12 file with no private key
The only reason our code wants PKCS12 files is for a private key, but
a valid file needn't contain one; and reading a file without lead to a
crash in QSslKeyPrivate::fromEVP_PKEY(). So check for missing key and
fail the load, since the file is useless to us. Also ensure the
caller's pkey is initialized, as we aren't promised that
PKCS12_parse() will set it when there is no private key.
Add a test for this case (it crashes without the fix) and update the
instructions for how to generate test data to cover it also.
(Corrected the wording there, too; at the interactive prompt,
"providing no password" really provides an empty password.)
Task-number: QTBUG-62335
Change-Id: I617508b903f6d9dee40d539b7136b0be8bc2c747
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Diffstat (limited to 'util/integrity')
0 files changed, 0 insertions, 0 deletions