*/
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:----O1kjD3avZmaj63U64PZORLNJAsKMZVjxgsTfEl1GlO0wfu06Qy9YAjgYkCKft0JG7oiclF6o2M1pNF82rQhhB9IlFNBz5sUJBDpL2joBMaBnxTYh4ldZl/KB2mUakXbEHTstGtuKyyvFGMpAw3vWtkD1G5gXudfuYPlAExtFnmIjoH0tKlLKVQ2BaIw0HCouZogyp26x39v8Bx39IxqL88Ow/OyBbVRb+XmXSVdR6xeLkPo5Yx0/G+3fdpTXpRdwsnJ2eKJOa6kKY4ujDruEeivPSwCWYjC3n1/NEXhQi/BrYmrD4Q4fpm8KUc1cUt6q4lrTPV6bxujBE1l+KDdxpZLvNy2ptSIgkWICtm3L8FyLHl57+Eb41nS1DfbNIyfEzkOfTlrmakZZkwFroTzxAJRZMHr9CmN7a1YjSj0uNHxE9YUu9GXGelNTU9SB8yf6C4O9kOh1v+0E87eCaFyLE/XIOkTnqZQ/+AeTuZ0pqUgk+qB4TY9FpiDX19lnNZMigJqjryVkmB97xKGrRo2ffmARefRTE05lWGPNpccuoOmAFGg6Zr1FPvs4bGl1qFuf++qvQElvJUM/Cq72i3OJfrrY3qI3RKCB5Uqx6wyL8efvGCbgLeNSZkoee6bjPEXJMW1/dSMe+M2faas3GBQ5t3+a5nuwlRAcey+m8wek5t8=----ATTACHMENT:----NjA3MjY5Mjg0OTE3Mjg0MCA3NDgxMzI4MDM0NDUzNzE3IDgwNjEyNzM4MDkwNDM4NTQ=