diff --git a/ui/NewX509.ui b/ui/NewX509.ui index a11acb59..02bd7239 100644 --- a/ui/NewX509.ui +++ b/ui/NewX509.ui @@ -732,14 +732,14 @@ - + DNS: IP: URI: email: RID: - + Edit @@ -749,14 +749,14 @@ - + DNS: IP: URI: email: RID: - + Edit @@ -782,14 +782,14 @@ - + URI: - + Edit @@ -819,16 +819,13 @@ - - - DNS: IP: URI: email: RID: - + Edit @@ -1288,7 +1285,6 @@ editIssAlt crlDist editCrlDist - aiaOid authInfAcc editAuthInfAcc kuCritical diff --git a/widgets/NewX509.cpp b/widgets/NewX509.cpp index 26fe91f4..5e18f8ae 100644 --- a/widgets/NewX509.cpp +++ b/widgets/NewX509.cpp @@ -106,7 +106,6 @@ NewX509::NewX509(QWidget *parent) { int i; - aia_nid << OBJ_sn2nid("OCSP") << OBJ_sn2nid("caIssuers"); attr_nid << NID_pkcs9_unstructuredName << NID_pkcs9_challengePassword; QStringList keys; @@ -174,10 +173,6 @@ NewX509::NewX509(QWidget *parent) foreach(int nid, extkeyuse_nid) ekeyUsage->addItem(OBJ_nid2ln(nid)); - // setup Authority Info Access - foreach(int nid, aia_nid) - aiaOid->addItem(OBJ_nid2ln(nid)); - // init the X509 v3 context X509V3_set_ctx(&ext_ctx, NULL , NULL, NULL, NULL, 0); X509V3_set_ctx_nodb(&ext_ctx); @@ -260,6 +255,7 @@ NewX509::NewX509(QWidget *parent) MAP_LE(subAltName); MAP_LE(issAltName); MAP_LE(crlDist); + MAP_LE(authInfAcc); MAP_LE(nsComment); MAP_LE(nsBaseUrl); MAP_LE(nsRevocationUrl); @@ -527,7 +523,6 @@ void NewX509::extensionsFromTemplate(pki_temp *temp) QString2lb(ekeyUsage, temp->getSetting("eKeyUse")); validRange->setCurrentIndex(temp->getSettingInt("validM")); nconf_data->document()->setPlainText(temp->getSetting("adv_ext")); - setAuthInfAcc_string(temp->getSetting("authInfAcc")); on_applyTime_clicked(); } @@ -554,7 +549,6 @@ void NewX509::toTemplate(pki_temp *temp) temp->setSetting(i.key(), i.value()->isChecked()); } - temp->setSetting("authInfAcc", getAuthInfAcc_string()); temp->setSetting("nsCertType", lb2int(nsCertType)); temp->setSetting("ca", basicCA->currentIndex()); temp->setSetting("keyUse", lb2int(keyUsage)); @@ -881,14 +875,7 @@ void NewX509::editV3ext(QLineEdit *le, QString types, int n) dlg = new v3ext(this); setupTmpCtx(); - if (n == NID_info_access) { - int nid, idx = aiaOid->currentIndex(); - if (idx >= 0 && idx < aia_nid.size()) { - nid = aia_nid[idx]; - dlg->setPrefix(QString(OBJ_nid2sn(nid)) + ";"); - } - } - dlg->addInfo(le, types.split(',' ), n, &ext_ctx); + dlg->addInfo(le, types.split(','), n, &ext_ctx); dlg->exec(); delete(dlg); } @@ -1073,7 +1060,14 @@ void NewX509::on_editCrlDist_clicked() void NewX509::on_editAuthInfAcc_clicked() { - editV3ext(authInfAcc, "URI,email,RID,DNS,IP", NID_info_access); + QStringList permut, groups { "OCSP", "caIssuers" }, + types{ "URI", "email", "RID", "DNS", "IP" }; + foreach(QString group, groups) { + foreach(QString type, types) { + permut << QString("%1;%2").arg(group).arg(type); + } + } + editV3ext(authInfAcc, permut.join(","), NID_info_access); } void NewX509::on_tabWidget_currentChanged(int tab) diff --git a/widgets/NewX509.h b/widgets/NewX509.h index d6f03347..e67eac4d 100644 --- a/widgets/NewX509.h +++ b/widgets/NewX509.h @@ -88,8 +88,6 @@ class NewX509: public QDialog, public Ui::NewX509 pki_x509req *getSelectedReq(); x509name getX509name(int _throw = 0); void setX509name(const x509name &n); - void setAuthInfAcc_string(QString aia_txt); - QString getAuthInfAcc_string(); x509v3ext getBasicConstraints(); x509v3ext getSubKeyIdent(); x509v3ext getAuthKeyIdent(); diff --git a/widgets/NewX509_ext.cpp b/widgets/NewX509_ext.cpp index 227fc752..4304039c 100644 --- a/widgets/NewX509_ext.cpp +++ b/widgets/NewX509_ext.cpp @@ -141,45 +141,11 @@ x509v3ext NewX509::getCrlDist() return ext; } -QString NewX509::getAuthInfAcc_string() -{ - QString rval=""; - QString aia_txt = authInfAcc->text(); - aia_txt = aia_txt.trimmed(); - - if (!aia_txt.isEmpty()) { - rval = OBJ_nid2sn(aia_nid[aiaOid->currentIndex()]); - rval += ";" + aia_txt; - } - openssl_error(); - return rval; -} - -void NewX509::setAuthInfAcc_string(QString aia_txt) -{ - int nid, idx; - - idx = aia_txt.indexOf(';'); - if (idx == -1) - return; - - nid = OBJ_txt2nid(CCHAR(aia_txt.left(idx))); - - for (int i=0; i < aia_nid.count(); i++) { - if (aia_nid[i] == nid) { - aiaOid->setCurrentIndex(i); - } - } - authInfAcc->setText(aia_txt.mid(idx +1)); -} - x509v3ext NewX509::getAuthInfAcc() { x509v3ext ext; - QString aia_txt = getAuthInfAcc_string(); - - if (!aia_txt.isEmpty()) { - ext.create(NID_info_access, aia_txt, &ext_ctx); + if (!authInfAcc->text().isEmpty()) { + ext.create(NID_info_access, authInfAcc->text(), &ext_ctx); } return ext; }