summaryrefslogtreecommitdiffstats
path: root/src/main.lib/Plugins/ValidationPlugins/Dns/DnsValidation.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/main.lib/Plugins/ValidationPlugins/Dns/DnsValidation.cs')
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Dns/DnsValidation.cs30
1 files changed, 11 insertions, 19 deletions
diff --git a/src/main.lib/Plugins/ValidationPlugins/Dns/DnsValidation.cs b/src/main.lib/Plugins/ValidationPlugins/Dns/DnsValidation.cs
index 72d0f01..845bb0e 100644
--- a/src/main.lib/Plugins/ValidationPlugins/Dns/DnsValidation.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Dns/DnsValidation.cs
@@ -66,32 +66,24 @@ namespace PKISharp.WACS.Plugins.ValidationPlugins
try
{
var dnsClients = await _dnsClientProvider.GetClients(Challenge.DnsRecordName, attempt);
-
- _log.Debug("Preliminary validation will now check name servers: {address}",
- string.Join(", ", dnsClients.Select(x => x.IpAddress)));
-
- // Parallel queries
- var answers = await Task.WhenAll(dnsClients.Select(client => client.GetTextRecordValues(Challenge.DnsRecordName, attempt)));
-
- // Loop through results
- for (var i = 0; i < dnsClients.Count(); i++)
+ foreach (var client in dnsClients)
{
- var currentClient = dnsClients[i];
- var currentResult = answers[i];
- if (!currentResult.Any())
+ _log.Debug("Preliminary validation will now check name server {ip}", client.IpAddress);
+ var answers = await client.GetTextRecordValues(Challenge.DnsRecordName, attempt);
+ if (!answers.Any())
{
- _log.Warning("Preliminary validation at {address} failed: no TXT records found", currentClient.IpAddress);
+ _log.Warning("Preliminary validation at {address} failed: no TXT records found", client.IpAddress);
return false;
}
- if (!currentResult.Contains(Challenge.DnsRecordValue))
+ if (!answers.Contains(Challenge.DnsRecordValue))
{
- _log.Warning("Preliminary validation at {address} failed: {ExpectedTxtRecord} not found in {TxtRecords}",
- currentClient.IpAddress,
- Challenge.DnsRecordValue,
- string.Join(", ", currentResult));
+ _log.Warning("Preliminary validation at {address} failed: {ExpectedTxtRecord} not found in {TxtRecords}",
+ client.IpAddress,
+ Challenge.DnsRecordValue,
+ string.Join(", ", answers));
return false;
}
- _log.Debug("Preliminary validation at {address} looks good!", currentClient.IpAddress);
+ _log.Debug("Preliminary validation at {address} looks good!", client.IpAddress);
}
}
catch (Exception ex)