Changeset View
Changeset View
Standalone View
Standalone View
isoimagewriter/isoverifier.cpp
Show First 20 Lines • Show All 147 Lines • ▼ Show 20 Line(s) | 126 | { | |||
---|---|---|---|---|---|
148 | 148 | | |||
149 | std::vector<char> isoData; | 149 | std::vector<char> isoData; | ||
150 | isoFile.read(isoData.data(),1024); | 150 | isoFile.read(isoData.data(),1024); | ||
151 | 151 | | |||
152 | QGpgME::VerifyDetachedJob *job = QGpgME::openpgp()->verifyDetachedJob(); | 152 | QGpgME::VerifyDetachedJob *job = QGpgME::openpgp()->verifyDetachedJob(); | ||
153 | GpgME::VerificationResult result = job->exec(signatureData, isoData.data()); | 153 | GpgME::VerificationResult result = job->exec(signatureData, isoData.data()); | ||
154 | GpgME::Signature signature = result.signature(0); | 154 | GpgME::Signature signature = result.signature(0); | ||
155 | 155 | | |||
156 | if (signature.summary() == GpgME::Signature::None | 156 | for (const auto &signature: result.signatures()) { | ||
157 | && signature.fingerprint() == keyFingerprint) { | 157 | qDebug() << "signature summary" << signature.summary() << "status err code" << signature.status() << signature.status().asString() | ||
158 | << "validity" << signature.validity() << "fingerprint" << signature.fingerprint(); | ||||
159 | | ||||
160 | if (signature.summary() == GpgME::Signature::None && signature.summary() == GpgME::Signature::None) { | ||||
158 | m_isIsoValid = true; | 161 | m_isIsoValid = true; | ||
159 | } else if (signature.summary() & GpgME::Signature::Valid) { | 162 | } | ||
163 | else if (signature.summary() & GpgME::Signature::Valid) { | ||||
164 | | ||||
160 | m_isIsoValid = true; | 165 | m_isIsoValid = true; | ||
166 | | ||||
161 | } else if (signature.summary() & GpgME::Signature::KeyRevoked) { | 167 | } else if (signature.summary() & GpgME::Signature::KeyRevoked) { | ||
162 | m_error = i18n("Key is revoked."); | 168 | m_error = i18n("Key is revoked."); | ||
163 | } else { | 169 | } else { | ||
170 | switch (signature.validity()) { | ||||
171 | case GpgME::Signature::Full: | ||||
172 | case GpgME::Signature::Ultimate: | ||||
173 | case GpgME::Signature::Never: | ||||
164 | m_error = i18n("Uses wrong signature."); | 174 | m_error = i18n("Uses wrong signature."); | ||
165 | } | 175 | break; | ||
176 | case GpgME::Signature::Unknown: | ||||
177 | case GpgME::Signature::Undefined: | ||||
166 | 178 | | |||
179 | m_isIsoValid = true; | ||||
180 | } | ||||
181 | } | ||||
182 | } | ||||
167 | emit finished(m_isIsoValid, m_error); | 183 | emit finished(m_isIsoValid, m_error); | ||
168 | } | 184 | } | ||
169 | 185 | | |||
170 | void IsoVerifier::verifyWithSha256SumsFile(const QString &keyFingerprint) | 186 | void IsoVerifier::verifyWithSha256SumsFile(const QString &keyFingerprint) | ||
171 | { | 187 | { | ||
172 | QFileInfo fileInfo(m_filePath); | 188 | QFileInfo fileInfo(m_filePath); | ||
173 | QFile checksumsFile(fileInfo.absolutePath() + "/SHA256SUMS"); | 189 | QFile checksumsFile(fileInfo.absolutePath() + "/SHA256SUMS"); | ||
174 | if (!checksumsFile.open(QIODevice::ReadOnly | QIODevice::Text)) { | 190 | if (!checksumsFile.open(QIODevice::ReadOnly | QIODevice::Text)) { | ||
▲ Show 20 Lines • Show All 89 Lines • Show Last 20 Lines |