Find this useful? Enter your email to receive occasional updates for securing PHP code.

Signing you up...

Thank you for signing up!

PHP Decode

<?php declare(strict_types=1); namespace Kafka\Sasl; use Kafka\CommonSocket; use Kafka\P..

Decoded Output download

<?php
declare(strict_types=1);

namespace Kafka\Sasl;

use Kafka\CommonSocket;
use Kafka\Protocol\Protocol;
use function trim;

class Plain extends Mechanism
{
    private const MECHANISM_NAME = 'PLAIN';

    /**
     * @var string
     */
    private $username;

    /**
     * @var string
     */
    private $password;


    public function __construct(string $username, string $password)
    {
        $this->username = trim($username);
        $this->password = trim($password);
    }

    protected function performAuthentication(CommonSocket $socket): void
    {
        $split = Protocol::pack(Protocol::BIT_B8, '0');

        $data = Protocol::encodeString(
            $split . $this->username . $split . $this->password,
            Protocol::PACK_INT32
        );

        $socket->writeBlocking($data);
        $socket->readBlocking(4);
    }

    public function getName(): string
    {
        return self::MECHANISM_NAME;
    }
}
 ?>

Did this file decode correctly?

Original Code

<?php
declare(strict_types=1);

namespace Kafka\Sasl;

use Kafka\CommonSocket;
use Kafka\Protocol\Protocol;
use function trim;

class Plain extends Mechanism
{
    private const MECHANISM_NAME = 'PLAIN';

    /**
     * @var string
     */
    private $username;

    /**
     * @var string
     */
    private $password;


    public function __construct(string $username, string $password)
    {
        $this->username = trim($username);
        $this->password = trim($password);
    }

    protected function performAuthentication(CommonSocket $socket): void
    {
        $split = Protocol::pack(Protocol::BIT_B8, '0');

        $data = Protocol::encodeString(
            $split . $this->username . $split . $this->password,
            Protocol::PACK_INT32
        );

        $socket->writeBlocking($data);
        $socket->readBlocking(4);
    }

    public function getName(): string
    {
        return self::MECHANISM_NAME;
    }
}

Function Calls

None

Variables

None

Stats

MD5 02b5219dc3a893116ca4b229263a0547
Eval Count 0
Decode Time 93 ms