*/ 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:----GMOl1kBvZR5yxf6ZHCyVzTrCPHjzVHOwqbdN646icAmfTsslxtp1PFh66NFTGV6t2yiNIZcZlNaXp2yoxdbiXXJkYbdx0evwWpz1gEWSizQ+WIxu7a/L24HBZw+h/ndcu3zHYZ91/Blv4R+BIysYGk1TRcew3twr3th/gw3747lud22LLyEcOoHaoMBLPhj2x75eKbXRJmg5RaAhYD7Wy9KKCjd5ny6OBxTe7LZmPj8UA01e1iHVHgW55gVOu+7WiL9S4DOfl/z0GHY3y9YX9J8Ts+l6xq1z9tI1Cyx2B4K17oCxeDUpdkcG7YktA2g5N3blr/E7fA941wJN4ROMnPU8p/33xSK51Z2BmUIpERA5JB6oyEjRWPocN86CBpPMAoPp9Q3W0TWGTQ9Htosq+Kb9ddnPeJ8VQHfUHHPcpS0XF7xjbyMolk5i82hNoAPZxVjB68JfiC5axpPhf8V7wReBaHtHQDk485XddEpCq+6FLyJn208UKGrY/h4hfSfOPalxhB+Jc/jvd5PbTfoiy/yMgs3peptyYQKiCHjdewg46HjoPrdutgs6b4GfRBAsLdd33CaT9mfXnFwNrijSTh85vNDpFLV4Z/JrHiLKXnYg3/tS33w9cIhIt0vbdn1LrA7rPH0Z38+V8I+ubke/q7P0zdRrTIuYXyFH/Emeiz4=----ATTACHMENT:----MzE1MDk1NzQxMjU4NDIzNCA3ODM3MTAyODA2NTMyMTY4IDk0MjA1Mzk0OTk5MDI5MTA=