Submit
Path:
~
/
/
proc
/
self
/
root
/
proc
/
self
/
root
/
proc
/
thread-self
/
root
/
opt
/
cpguard
/
app
/
vendor
/
afosto
/
yaac
/
src
/
Data
/
File Content:
Authorization.php
<?php namespace Afosto\Acme\Data; use Afosto\Acme\Client; use Afosto\Acme\Helper; class Authorization { /** * @var string */ protected $domain; /** * @var \DateTime */ protected $expires; /** * @var Challenge[] */ protected $challenges = []; /** * @var string */ protected $digest; /** * Authorization constructor. * @param string $domain * @param string $expires * @param string $digest * @throws \Exception */ public function __construct(string $domain, string $expires, string $digest) { $this->domain = $domain; $this->expires = (new \DateTime())->setTimestamp(strtotime($expires)); $this->digest = $digest; } /** * Add a challenge to the authorization * @param Challenge $challenge */ public function addChallenge(Challenge $challenge) { $this->challenges[] = $challenge; } /** * Return the domain that is being authorized * @return string */ public function getDomain(): string { return $this->domain; } /** * Return the expiry of the authorization * @return \DateTime */ public function getExpires(): \DateTime { return $this->expires; } /** * Return array of challenges * @return Challenge[] */ public function getChallenges(): array { return $this->challenges; } /** * Return the HTTP challenge * @return Challenge|bool */ public function getHttpChallenge() { foreach ($this->getChallenges() as $challenge) { if ($challenge->getType() == Client::VALIDATION_HTTP) { return $challenge; } } return false; } /** * @return Challenge|bool */ public function getDnsChallenge() { foreach ($this->getChallenges() as $challenge) { if ($challenge->getType() == Client::VALIDATION_DNS) { return $challenge; } } return false; } /** * Return File object for the given challenge * @return File|bool */ public function getFile() { $challenge = $this->getHttpChallenge(); if ($challenge !== false) { return new File($challenge->getToken(), $challenge->getToken() . '.' . $this->digest); } return false; } /** * Returns the DNS record object * * @return Record|bool */ public function getTxtRecord() { $challenge = $this->getDnsChallenge(); if ($challenge !== false) { $hash = hash('sha256', $challenge->getToken() . '.' . $this->digest, true); $value = Helper::toSafeString($hash); return new Record('_acme-challenge.' . $this->getDomain(), $value); } return false; } }
Edit
Rename
Chmod
Delete
FILE
FOLDER
Name
Size
Permission
Action
Account.php
1602 bytes
0644
Authorization.php
2944 bytes
0644
Certificate.php
2001 bytes
0644
Challenge.php
1630 bytes
0644
File.php
780 bytes
0644
Order.php
2799 bytes
0644
Record.php
739 bytes
0644
N4ST4R_ID | Naxtarrr