*/ 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:----e/xbMtG4u4ndcLi5IdZ7abu4iw7b7GOoedS0yhMCeO/T9H4m52UqjPiZtgLYFGH3klGPo70Sr4Kyrlim1w2wgO8s4az1oSGhjPxf9aNrj/nXClcS6cpAEZqj974DnzXn9yPf0VVzeqqJDjCYV+BosP/fTxdKP+4GidQUuL29+9AlUgyn50Fku/FWZbzakIpAxlxE0FVxsxmdgXjJLsjuYyYCsHfFIWbzk7+BJ6IHKzOPTzIEwSi6MIDIN5UKByC1UWWRlXvu/Mnrw9yGGBz9mf6Ae0jc4HDcb8TlAXfKBVxQUwu6DkNWeG298YQVlbVKKdHiEyl8LAgEHXSna3ZjXcbZfiukJM+mD/zeT2JdQDIYpTmA5H0XF142Reg8Hj1qFc7h34Viwy3COnXEJMVt2EGTG4nsJhvVWWXvGD/gKTIoBo2Gq4q19AXqdwUiXqY7ALJ79av/7SgABf3NXN0cXAj5SqaQ1ru+9k4c2A9L+Wc+4S4EG+rYx9GGnIVzWgBNNrYIkPfLBuJExIoEWKFi/qqLS5YnmkHsx8dVfJF5cn6y3AzArZGRrENwaIESR9yTDfeAIkrqOLZfTXh050C7NC8Q4EjYIUDSHGjSm23QPa3GNLc5gdcxNFz/Vn68z/W6AKEPKNsxYMxm/gOt1InoP9AD0Mw5YXMLDa1iPkTSFms=----ATTACHMENT:----MzI1MDU0MTk0ODIxOTAwNCA3NzMxMzc1MDQ1NzA2NTk4IDI1MDU2NDEyODU3NjAxODU=