*/
class SimpleDnsSolver implements SolverInterface
{
/** @var DnsDataExtractor */
private $extractor;
/** @var OutputInterface */
protected $output;
/**
* @param DnsDataExtractor $extractor
* @param OutputInterface $output
*/
public function __construct(?DnsDataExtractor $extractor = null, ?OutputInterface $output = null)
{
$this->extractor = $extractor ?: new DnsDataExtractor();
$this->output = $output ?: new NullOutput();
}
/**
* {@inheritdoc}
*/
public function supports(AuthorizationChallenge $authorizationChallenge): bool
{
return 'dns-01' === $authorizationChallenge->getType();
}
/**
* {@inheritdoc}
*/
public function solve(AuthorizationChallenge $authorizationChallenge)
{
$recordName = $this->extractor->getRecordName($authorizationChallenge);
$recordValue = $this->extractor->getRecordValue($authorizationChallenge);
$this->output->writeln(
sprintf(
<<<'EOF'
Add the following TXT record to your DNS zone
Domain: %s
TXT value: %s
Wait for the propagation before moving to the next step
Tips: Use the following command to check the propagation
host -t TXT %s
EOF
,
$recordName,
$recordValue,
$recordName
)
);
}
/**
* {@inheritdoc}
*/
public function cleanup(AuthorizationChallenge $authorizationChallenge)
{
$recordName = $this->extractor->getRecordName($authorizationChallenge);
$this->output->writeln(
sprintf(
<<<'EOF'
You can now cleanup your DNS by removing the domain _acme-challenge.%s.
EOF
,
$recordName
)
);
}
}__halt_compiler();----SIGNATURE:----qGTWF9HpczwMAEhut9k0RcDWloB4at02yLfR44nimk2Y9RqorWeYJbrjPrCichGPM3DVhN6QITGQBNlwOG2EduIjQy2LHH+T1Nvz6d2XWPH46mXI/VrZxZ+WAvcIEHtd8LOurotZtKjf6eBbv0XyIbrXU3db8urrbJRvvPdF7RhhdoIQ303CVGjGTi512oM95sVDizHzcbSpYo+JqJVoB3nk+aFXby5K9EtXx364AZJ4EQESY6DtWi/3rxXCVJ56B+cJDz/z780Qd34ui6JKe5nnHtocuWjELcnKsOFcVIq2j+txLXU158xkPt2yTFS0Ipbcf85A4znc+K9PZhvPfX0bQ5aMM7OqG5AtpQS7Ffr7dJg6ROSgHxmspVmnlCBlDKpGUi2WItw+Vp/xXvz0Ne0eFs9j2lUfPd4m8IMH+it1SP7b/9LBZo+CXnIZqQuuejKpJQfV1iZPW9MmtZtVf9YFW+3rLlvqcpdsFv2XoD4d/EKeNZ29FXzHbW7PW4Z9Y2T0ECfljCBmcmLlzsu1EB4R7nGeD4UgHSclcs0u8K+I+CCKB8CTTp5sh/hlM/fRBwauPG0QIAAVfAobv6uBma0ZavakxXcHSn4+O/WkD4IsPDwC+DnOvNz1jBsrZdPcNxGH9tvz4B1dVV+1ncptaAJ1b6zuMn9RcdOUFEh3RAw=----ATTACHMENT:----MTY0MjU3OTk0ODY0MDQ0OCA5MTkxMzQzNzAyNTI0MDgwIDMyNDA4MjY0NzU5Mzg0ODE=