Skip to content

Commit 23922e8

Browse files
authored
Merge pull request #1065 from HoundThe/signer_cert
Move signing certificate to a separate object
2 parents 2b37500 + b7b8010 commit 23922e8

File tree

1 file changed

+19
-6
lines changed

1 file changed

+19
-6
lines changed

src/fileinfo/file_presentation/json_presentation.cpp

Lines changed: 19 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -389,11 +389,8 @@ void JsonPresentation::presentLoaderInfo(Writer& writer) const
389389
writer.EndObject();
390390
}
391391

392-
void WriteCertificateChain(JsonPresentation::Writer& writer, const std::vector<Certificate>& certificates)
392+
void WriteCertificate(JsonPresentation::Writer& writer, const Certificate& cert)
393393
{
394-
writer.StartArray();
395-
for (auto&& cert : certificates)
396-
{
397394
writer.StartObject();
398395
serializeString(writer, "subject", cert.getRawSubject());
399396
serializeString(writer, "issuer", cert.getRawIssuer());
@@ -452,6 +449,14 @@ void WriteCertificateChain(JsonPresentation::Writer& writer, const std::vector<C
452449
writer.EndObject();
453450

454451
writer.EndObject();
452+
}
453+
454+
void WriteCertificateChain(JsonPresentation::Writer& writer, const std::vector<Certificate>& certificates)
455+
{
456+
writer.StartArray();
457+
for (auto&& cert: certificates)
458+
{
459+
WriteCertificate(writer, cert);
455460
}
456461
writer.EndArray();
457462
}
@@ -461,7 +466,8 @@ void WriteSigner(JsonPresentation::Writer& writer, const Signer& signer)
461466
writer.StartObject();
462467
writer.String("warnings");
463468
writer.StartArray();
464-
for (auto&& warn : signer.warnings) {
469+
for (auto&& warn: signer.warnings)
470+
{
465471
writer.String(warn);
466472
}
467473
writer.EndArray();
@@ -472,12 +478,19 @@ void WriteSigner(JsonPresentation::Writer& writer, const Signer& signer)
472478

473479
serializeString(writer, "digestAlgorithm", signer.digestAlgorithm);
474480

481+
if (!signer.chain.empty())
482+
{
483+
writer.String("certificate");
484+
WriteCertificate(writer, signer.chain[0]);
485+
}
486+
475487
writer.String("chain");
476488
WriteCertificateChain(writer, signer.chain);
477489

478490
writer.String("counterSigners");
479491
writer.StartArray();
480-
for (auto&& csigner : signer.counterSigners) {
492+
for (auto&& csigner: signer.counterSigners)
493+
{
481494
WriteSigner(writer, csigner);
482495
}
483496
writer.EndArray();

0 commit comments

Comments
 (0)