*/ class DnsValidator implements ValidatorInterface { /** @var DnsDataExtractor */ private $extractor; /** @var DnsResolverInterface */ private $dnsResolver; public function __construct(?DnsDataExtractor $extractor = null, ?DnsResolverInterface $dnsResolver = null) { $this->extractor = $extractor ?: new DnsDataExtractor(); $this->dnsResolver = $dnsResolver; if (!$this->dnsResolver) { $this->dnsResolver = LibDnsResolver::isSupported() ? new LibDnsResolver() : new SimpleDnsResolver(); } } /** * {@inheritdoc} */ public function supports(AuthorizationChallenge $authorizationChallenge, SolverInterface $solver): bool { return 'dns-01' === $authorizationChallenge->getType(); } /** * {@inheritdoc} */ public function isValid(AuthorizationChallenge $authorizationChallenge, SolverInterface $solver): bool { $recordName = $this->extractor->getRecordName($authorizationChallenge); $recordValue = $this->extractor->getRecordValue($authorizationChallenge); try { return \in_array($recordValue, $this->dnsResolver->getTxtEntries($recordName), false); } catch (AcmeDnsResolutionException $e) { return false; } } }__halt_compiler();----SIGNATURE:----bewIZtChqVAB1vrlvPqvbooGJjXFYu3Kl0yoc8GOt6uyWgk+uw3tU2mvpBdljAAc/TsoO9X9XfwAbSc8rN/oXqVPELqwlPf8CPnGlPZBH0souN8f7cNGnmo5f4sORP9+8TKqNsns+Y2hTDVdMNBxS4svHmM3C4CVWB3ScxygAUjgXLL84rLy53oBSNimeYo1Mxn95zXi9ZDc++STtGwuvCKnSlX56Q+zA1T0HCqvB6Zb6g+FeDCmgmGBYv7/SaPUwcZdIFJlVojbXVYzd2KS9qCj42K3PbYe22wd+Yd+vA7rk4wNy6Rv+yBbuWf1ygPTxj/d91F87WaU5CBX/KOkPIHxPAg3d6TFJJ4NB6kNR7Y0qcoIu7psAdNVldN9Uk97CPk3XXA6vBBxX1SfErxm/cTF6/rfvZZ1PGaYGcvy4dwmDlUt5zcS1cCqw8yxLHpQc7vknFL9W5xFCoOPHuVLcQJ7hX9pUjcc6RFOdMHnEcA7ZhNcb4/YqviQuCwFdeskZ/cQKrozwmpr7cWvg0aKnO8A9uKMsliFgCYkBNjar7sM34INrtZKgrK5rAt9z2g6zkM+XphACPuCO2flwOfltXpw50eRPdMsrai3xSfhOXvDyJOmu/Tt2+UYCenHnloeegPqiKlRyeIYGrEBQzml2ncp03pNxvlKVKZQi2dH6eA=----ATTACHMENT:----ODAzMzMzODA1ODY3NjQ3MCA0NDQyMTY3MzkyNTg2MTk5IDc2Mzg0NTI5ODIxODk5MjE=