diff --git a/lib/pki_temp.cpp b/lib/pki_temp.cpp index 329cd58b..08a6de61 100644 --- a/lib/pki_temp.cpp +++ b/lib/pki_temp.cpp @@ -47,13 +47,14 @@ pki_temp::pki_temp(const pki_temp *pk) validMidn=pk->validMidn; keyUse=pk->keyUse; eKeyUse=pk->eKeyUse; + adv_ext=pk->adv_ext; } pki_temp::pki_temp(const QString d) :pki_base(d) { class_name = "pki_temp"; - dataVersion=2; + dataVersion=3; pkiType=tmpl; cols=2; @@ -82,6 +83,7 @@ pki_temp::pki_temp(const QString d) validM=0; keyUse=0; eKeyUse=0; + adv_ext=""; } @@ -94,7 +96,7 @@ void pki_temp::fromData(const unsigned char *p, db_header_t *head ) fromData(p, size, version); } -void pki_temp::fromData(const unsigned char *p, int size, int) +void pki_temp::fromData(const unsigned char *p, int size, int version) { const unsigned char *p1 = p; @@ -125,7 +127,8 @@ void pki_temp::fromData(const unsigned char *p, int size, int) authInfAcc=db::stringFromData(&p1); certPol=db::stringFromData(&p1); validMidn=db::boolFromData(&p1); - + if (version>2) + adv_ext=db::stringFromData(&p1); if (p1-p != size) { my_error(tr("Wrong Size of template: ") + getIntName()); } @@ -166,6 +169,7 @@ unsigned char *pki_temp::toData(int *size) db::stringToData(&p1, authInfAcc); db::stringToData(&p1, certPol); db::boolToData(&p1, validMidn); + db::stringToData(&p1, adv_ext); *size = p1-p; return p; @@ -250,9 +254,8 @@ pki_temp::~pki_temp() int pki_temp::dataSize() { - int s = 9 * sizeof(int) + - 8 * sizeof(char) + - xname.derSize() + ( + int s = 9 * sizeof(int) + 8 * sizeof(char) + + xname.derSize() + ( subAltName.length() + issAltName.length() + crlDist.length() + @@ -265,7 +268,8 @@ int pki_temp::dataSize() nsRenewalUrl.length() + nsCaPolicyUrl.length() + nsSslServerName.length() + - 12 ) * sizeof(char); + adv_ext.length() + + 13 ) * sizeof(char); return s; } diff --git a/lib/pki_temp.h b/lib/pki_temp.h index 9b586414..c608095a 100644 --- a/lib/pki_temp.h +++ b/lib/pki_temp.h @@ -15,14 +15,14 @@ class pki_temp: public pki_base { protected: - int version; int dataSize(); public: static QPixmap *icon; x509name xname; QString subAltName, issAltName, crlDist, authInfAcc, certPol; QString nsComment, nsBaseUrl, nsRevocationUrl, nsCARevocationUrl, - nsRenewalUrl, nsCaPolicyUrl, nsSslServerName, destination; + nsRenewalUrl, nsCaPolicyUrl, nsSslServerName, destination, + adv_ext; bool bcCrit, keyUseCrit, eKeyUseCrit, subKey, authKey, validMidn; int nsCertType, pathLen, keyUse, eKeyUse, ca; int validN, validM; @@ -33,7 +33,6 @@ class pki_temp: public pki_base pki_temp(const QString d = QString()); void fload(const QString fname); void writeDefault(const QString fname); - /* destructor */ ~pki_temp(); void fromData(const unsigned char *p, int size, int version); void fromData(const unsigned char *p, db_header_t *head ); diff --git a/misc/xca.desktop b/misc/xca.desktop index 1159fcd3..37a47cbf 100644 --- a/misc/xca.desktop +++ b/misc/xca.desktop @@ -1,6 +1,6 @@ [Desktop Entry] Encoding=UTF-8 -Name=X-CA +Name=XCA Type=Application Comment=A graphical user interface for handling and issuing X.509 compliant Certificates Comment[de]=Eine graphische Oberfläche zur Erstellung von X.509 konformen Zertifikaten diff --git a/widgets/MW_help.cpp b/widgets/MW_help.cpp index dcbfd017..1270d45b 100644 --- a/widgets/MW_help.cpp +++ b/widgets/MW_help.cpp @@ -56,8 +56,11 @@ void MainWindow::about() "Wolfgang Glas<wolfgang.glas@ev-i.at>" "SPKAC support and Testing" "
General support
" - "

Mark Foster <mark@foster.cc>
" - "Thorsten Weiss <weiss2@gmx.de>", + "

" + "" + "" + "" + "
Mark Foster<mark@foster.cc>
Thorsten Weiss<weiss2@gmx.de>
Oobj<www.oobj.com.br>
", OPENSSL_VERSION_TEXT, QT_VERSION_STR ); about->setWindowTitle(tr(XCA_TITLE)); diff --git a/widgets/NewX509.cpp b/widgets/NewX509.cpp index e55b84f3..ad7fabcf 100644 --- a/widgets/NewX509.cpp +++ b/widgets/NewX509.cpp @@ -299,6 +299,7 @@ void NewX509::fromTemplate(pki_temp *temp) if (temp->pathLen) { basicPath->setText(QString::number(temp->pathLen)); } + nconf_data->document()->setPlainText(temp->adv_ext); notBefore->setNow(); on_applyTime_clicked(); } @@ -331,6 +332,7 @@ void NewX509::toTemplate(pki_temp *temp) temp->validM = validRange->currentIndex(); temp->pathLen = basicPath->text().toInt(); temp->validMidn = midnightCB->isChecked(); + temp->adv_ext = nconf_data->toPlainText(); } void NewX509::on_fromReqCB_clicked()