Skip to content

Commit

Permalink
Small refactor to BuildElement to address NRT changes
Browse files Browse the repository at this point in the history
  • Loading branch information
GrabYourPitchforks committed Sep 26, 2023
1 parent 6119823 commit 0b32a91
Showing 1 changed file with 7 additions and 9 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -348,16 +348,14 @@ private void BuildAndSetProperties((X509Certificate2, int)[] elementTuples)

for (int i = 0; i < elementTuples.Length; i++)
{
(X509Certificate2, int) tuple = elementTuples[i];
(X509Certificate2 cert, int chainStatus) = elementTuples[i];

elements[i] = BuildElement(tuple.Item1, tuple.Item2);
allStatus |= tuple.Item2;
elements[i] = new X509ChainElement(cert, BuildChainElementStatuses(cert, chainStatus), "");
allStatus |= chainStatus;
}

ChainElements = elements;

X509ChainElement rollupElement = BuildElement(null!, allStatus);
ChainStatus = rollupElement.ChainElementStatus;
ChainStatus = BuildChainElementStatuses(null, allStatus);
}

private static void FixupRevocationStatus(
Expand Down Expand Up @@ -457,11 +455,11 @@ private static X509ChainStatusFlags FindUntrustedRootReason(X509Certificate2 cer
return X509ChainStatusFlags.UntrustedRoot;
}

private X509ChainElement BuildElement(X509Certificate2 cert, int dwStatus)
private X509ChainStatus[] BuildChainElementStatuses(X509Certificate2? cert, int dwStatus)
{
if (dwStatus == 0)
{
return new X509ChainElement(cert, Array.Empty<X509ChainStatus>(), "");
return Array.Empty<X509ChainStatus>();
}

List<X509ChainStatus> statuses = new List<X509ChainStatus>();
Expand Down Expand Up @@ -499,7 +497,7 @@ private X509ChainElement BuildElement(X509Certificate2 cert, int dwStatus)
}
}

return new X509ChainElement(cert, statuses.ToArray(), "");
return statuses.ToArray();
}

private readonly struct X509ChainErrorMapping
Expand Down

0 comments on commit 0b32a91

Please sign in to comment.