Server IP : 213.176.29.180 / Your IP : 18.118.144.50 Web Server : Apache System : Linux 213.176.29.180.hostiran.name 4.18.0-553.22.1.el8_10.x86_64 #1 SMP Tue Sep 24 05:16:59 EDT 2024 x86_64 User : webtaragh ( 1001) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON Directory (0755) : /home/webtaragh/public_html/whmcs/vendor/psr/../smarty/../aws/aws-sdk-php/src/ |
[ Home ] | [ C0mmand ] | [ Upload File ] |
---|
<?php namespace Aws; use GuzzleHttp\Psr7\StreamDecoratorTrait; use Psr\Http\Message\StreamInterface; /** * Stream decorator that calculates a rolling hash of the stream as it is read. */ class HashingStream implements StreamInterface { use StreamDecoratorTrait; /** @var HashInterface */ private $hash; /** @var callable|null */ private $callback; /** * @param StreamInterface $stream Stream that is being read. * @param HashInterface $hash Hash used to calculate checksum. * @param callable $onComplete Optional function invoked when the * hash calculation is completed. */ public function __construct( StreamInterface $stream, HashInterface $hash, callable $onComplete = null ) { $this->stream = $stream; $this->hash = $hash; $this->callback = $onComplete; } public function read($length) { $data = $this->stream->read($length); $this->hash->update($data); if ($this->eof()) { $result = $this->hash->complete(); if ($this->callback) { call_user_func($this->callback, $result); } } return $data; } public function seek($offset, $whence = SEEK_SET) { if ($offset === 0) { $this->hash->reset(); return $this->stream->seek($offset); } // Seeking arbitrarily is not supported. return false; } }