OXIESEC PANEL
- Current Dir:
/
/
var
/
www
/
reader
/
oauth
/
vendor
/
guzzlehttp
/
psr7
/
src
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
09/30/2021 11:53:24 AM
rwxr-xr-x
📄
AppendStream.php
5.77 KB
09/30/2021 11:53:19 AM
rw-r--r--
📄
BufferStream.php
3.1 KB
09/30/2021 11:53:16 AM
rw-r--r--
📄
CachingStream.php
4.31 KB
09/30/2021 11:53:11 AM
rw-r--r--
📄
DroppingStream.php
1.12 KB
09/30/2021 11:53:15 AM
rw-r--r--
📄
FnStream.php
4.31 KB
09/30/2021 11:53:09 AM
rw-r--r--
📄
Header.php
2.04 KB
09/30/2021 11:53:15 AM
rw-r--r--
📄
HttpFactory.php
3.02 KB
09/30/2021 11:53:16 AM
rw-r--r--
📄
InflateStream.php
1.3 KB
09/30/2021 11:53:13 AM
rw-r--r--
📄
LazyOpenStream.php
899 bytes
09/30/2021 11:53:15 AM
rw-r--r--
📄
LimitStream.php
4.14 KB
09/30/2021 11:53:20 AM
rw-r--r--
📄
Message.php
8.01 KB
09/30/2021 11:53:21 AM
rw-r--r--
📄
MessageTrait.php
6.46 KB
09/30/2021 11:53:10 AM
rw-r--r--
📄
MimeType.php
4.2 KB
09/30/2021 11:53:11 AM
rw-r--r--
📄
MultipartStream.php
4.67 KB
09/30/2021 11:53:21 AM
rw-r--r--
📄
NoSeekStream.php
470 bytes
09/30/2021 11:53:12 AM
rw-r--r--
📄
PumpStream.php
4.43 KB
09/30/2021 11:53:11 AM
rw-r--r--
📄
Query.php
3.55 KB
09/30/2021 11:53:18 AM
rw-r--r--
📄
Request.php
3.81 KB
09/30/2021 11:53:14 AM
rw-r--r--
📄
Response.php
4.79 KB
09/30/2021 11:53:12 AM
rw-r--r--
📄
Rfc7230.php
665 bytes
09/30/2021 11:53:22 AM
rw-r--r--
📄
ServerRequest.php
9.23 KB
09/30/2021 11:53:20 AM
rw-r--r--
📄
Stream.php
7.05 KB
09/30/2021 11:53:14 AM
rw-r--r--
📄
StreamDecoratorTrait.php
3.22 KB
09/30/2021 11:53:17 AM
rw-r--r--
📄
StreamWrapper.php
4.01 KB
09/30/2021 11:53:13 AM
rw-r--r--
📄
UploadedFile.php
4.75 KB
09/30/2021 11:53:18 AM
rw-r--r--
📄
Uri.php
21.3 KB
09/30/2021 11:53:17 AM
rw-r--r--
📄
UriNormalizer.php
8.22 KB
09/30/2021 11:53:10 AM
rw-r--r--
📄
UriResolver.php
8.36 KB
09/30/2021 11:53:19 AM
rw-r--r--
📄
Utils.php
13.9 KB
09/30/2021 11:53:18 AM
rw-r--r--
Editing: MessageTrait.php
Close
<?php declare(strict_types=1); namespace GuzzleHttp\Psr7; use Psr\Http\Message\MessageInterface; use Psr\Http\Message\StreamInterface; /** * Trait implementing functionality common to requests and responses. */ trait MessageTrait { /** @var array<string, string[]> Map of all registered headers, as original name => array of values */ private $headers = []; /** @var array<string, string> Map of lowercase header name => original name at registration */ private $headerNames = []; /** @var string */ private $protocol = '1.1'; /** @var StreamInterface|null */ private $stream; public function getProtocolVersion(): string { return $this->protocol; } public function withProtocolVersion($version): MessageInterface { if ($this->protocol === $version) { return $this; } $new = clone $this; $new->protocol = $version; return $new; } public function getHeaders(): array { return $this->headers; } public function hasHeader($header): bool { return isset($this->headerNames[strtolower($header)]); } public function getHeader($header): array { $header = strtolower($header); if (!isset($this->headerNames[$header])) { return []; } $header = $this->headerNames[$header]; return $this->headers[$header]; } public function getHeaderLine($header): string { return implode(', ', $this->getHeader($header)); } public function withHeader($header, $value): MessageInterface { $this->assertHeader($header); $value = $this->normalizeHeaderValue($value); $normalized = strtolower($header); $new = clone $this; if (isset($new->headerNames[$normalized])) { unset($new->headers[$new->headerNames[$normalized]]); } $new->headerNames[$normalized] = $header; $new->headers[$header] = $value; return $new; } public function withAddedHeader($header, $value): MessageInterface { $this->assertHeader($header); $value = $this->normalizeHeaderValue($value); $normalized = strtolower($header); $new = clone $this; if (isset($new->headerNames[$normalized])) { $header = $this->headerNames[$normalized]; $new->headers[$header] = array_merge($this->headers[$header], $value); } else { $new->headerNames[$normalized] = $header; $new->headers[$header] = $value; } return $new; } public function withoutHeader($header): MessageInterface { $normalized = strtolower($header); if (!isset($this->headerNames[$normalized])) { return $this; } $header = $this->headerNames[$normalized]; $new = clone $this; unset($new->headers[$header], $new->headerNames[$normalized]); return $new; } public function getBody(): StreamInterface { if (!$this->stream) { $this->stream = Utils::streamFor(''); } return $this->stream; } public function withBody(StreamInterface $body): MessageInterface { if ($body === $this->stream) { return $this; } $new = clone $this; $new->stream = $body; return $new; } /** * @param array<string|int, string|string[]> $headers */ private function setHeaders(array $headers): void { $this->headerNames = $this->headers = []; foreach ($headers as $header => $value) { if (is_int($header)) { // Numeric array keys are converted to int by PHP but having a header name '123' is not forbidden by the spec // and also allowed in withHeader(). So we need to cast it to string again for the following assertion to pass. $header = (string) $header; } $this->assertHeader($header); $value = $this->normalizeHeaderValue($value); $normalized = strtolower($header); if (isset($this->headerNames[$normalized])) { $header = $this->headerNames[$normalized]; $this->headers[$header] = array_merge($this->headers[$header], $value); } else { $this->headerNames[$normalized] = $header; $this->headers[$header] = $value; } } } /** * @param mixed $value * * @return string[] */ private function normalizeHeaderValue($value): array { if (!is_array($value)) { return $this->trimHeaderValues([$value]); } if (count($value) === 0) { throw new \InvalidArgumentException('Header value can not be an empty array.'); } return $this->trimHeaderValues($value); } /** * Trims whitespace from the header values. * * Spaces and tabs ought to be excluded by parsers when extracting the field value from a header field. * * header-field = field-name ":" OWS field-value OWS * OWS = *( SP / HTAB ) * * @param mixed[] $values Header values * * @return string[] Trimmed header values * * @see https://tools.ietf.org/html/rfc7230#section-3.2.4 */ private function trimHeaderValues(array $values): array { return array_map(function ($value) { if (!is_scalar($value) && null !== $value) { throw new \InvalidArgumentException(sprintf( 'Header value must be scalar or null but %s provided.', is_object($value) ? get_class($value) : gettype($value) )); } return trim((string) $value, " \t"); }, array_values($values)); } /** * @see https://tools.ietf.org/html/rfc7230#section-3.2 * * @param mixed $header */ private function assertHeader($header): void { if (!is_string($header)) { throw new \InvalidArgumentException(sprintf( 'Header name must be a string but %s provided.', is_object($header) ? get_class($header) : gettype($header) )); } if (! preg_match('/^[a-zA-Z0-9\'`#$%&*+.^_|~!-]+$/', $header)) { throw new \InvalidArgumentException( sprintf( '"%s" is not valid header name', $header ) ); } } }