Ejemplo n.º 1
0
        public ConnectTo() : base(ServerOpcodes.ConnectTo)
        {
            Payload           = new ConnectPayload();
            Payload.PanamaKey = "F41DCB2D728CF3337A4FF338FA89DB01BBBE9C3B65E9DA96268687353E48B94C".ToByteArray();
            Payload.Adler32   = 0xA0A66C10;

            Crypt = new RsaCrypt();
            Crypt.InitializeEncryption(RsaStore.P, RsaStore.Q, RsaStore.DP, RsaStore.DQ, RsaStore.InverseQ);
        }
Ejemplo n.º 2
0
        public void Packet_encodes_correct_payload_bytes()
        {
            ConnectPayload payload       = new ConnectPayload(clientID, w, auth);
            var            expectedBytes = payload.Encode().ToArray();

            for (int i = 0; i < expectedBytes.Count(); i++)
            {
                Assert.AreEqual(expectedBytes[i], cp.Payload.Encode().ToArray()[i]);
            }
        }
Ejemplo n.º 3
0
 public GuildPlayer(ConnectPayload connectPayload, string remoteEndpoint, ILogger logger)
 {
     UserId         = connectPayload.UserId;
     SessionId      = connectPayload.SessionId;
     Token          = connectPayload.Token;
     Endpoint       = connectPayload.Endpoint;
     RemoteEndpoint = remoteEndpoint;
     _logger        = logger;
     Socket         = default;
 }
Ejemplo n.º 4
0
            public void Client_ID_encoded_correctly()
            {
                EncodedString  clientID = "This is a client id";
                IByteEncodable cp       = new ConnectPayload(clientID);

                EncodedString parsedEncodedString =
                    new EncodedString(
                        new MemoryStream(cp.Encode().ToArray()));

                Assert.IsTrue(clientID == parsedEncodedString);
            }
Ejemplo n.º 5
0
            public void Password_encoded_when_provided()
            {
                EncodedString      clientID     = "ClientID";
                Authentication     auth         = new Authentication("username", "TestPassword");
                ConnectPayload     cp           = new ConnectPayload(clientID, null, auth);
                IEnumerable <byte> encodedBytes = cp.Encode();

                string password = utf8.GetString(encodedBytes.Skip(clientID.Length + 2)
                                                 .Skip(auth.Username.Length + 4)
                                                 .ToArray());

                Assert.IsTrue(auth.Password == password);
            }
Ejemplo n.º 6
0
            public void Username_encoded_when_provided()
            {
                EncodedString      username     = new EncodedString("username");
                Authentication     auth         = new Authentication(username);
                EncodedString      clientID     = "ClientID";
                IByteEncodable     cp           = new ConnectPayload(clientID, null, auth);
                IEnumerable <byte> encodedBytes = cp.Encode();

                EncodedString encodedUsername =
                    new EncodedString(
                        new MemoryStream(
                            encodedBytes.Skip(clientID.Encode().Count()).ToArray()));

                Assert.IsTrue(username == encodedUsername);
            }
Ejemplo n.º 7
0
            public void Will_msg_encoded_when_provided()
            {
                EncodedString      clientID     = new EncodedString("test 1");
                EncodedString      willTopic    = new EncodedString("Will Topic");
                EncodedDataField   willMsg      = new EncodedDataField(utf8.GetBytes("Will Message"));
                Will               w            = new Will(QoSLevel.AtMostOnce, false, willTopic, willMsg);
                IByteEncodable     cp           = new ConnectPayload(clientID, w);
                IEnumerable <byte> encodedBytes = cp.Encode();

                string encodedMsg = utf8.GetString(
                    new EncodedDataField(
                        encodedBytes.Skip(clientID.Length + 2)
                        .Skip(willTopic.Length + 4)
                        .ToArray()));

                Assert.IsTrue(utf8.GetString(willMsg.Data.ToArray()) == encodedMsg);
            }
Ejemplo n.º 8
0
            public void Will_topic_encoded_when_provided()
            {
                EncodedString willTopic = "Will Topic";
                Will          w         =
                    new Will(
                        QoSLevel.AtMostOnce,
                        false, willTopic.Value,
                        new EncodedDataField(utf8.GetBytes("Will Message")));

                EncodedString clientID = "test 1";

                IByteEncodable     cp           = new ConnectPayload(clientID, w);
                IEnumerable <byte> encodedBytes = cp.Encode();
                EncodedString      encodedTopic =
                    new EncodedString(
                        new MemoryStream(
                            encodedBytes.Skip(clientID.Encode().Count()).ToArray()));

                Assert.IsTrue(willTopic == encodedTopic);
            }
Ejemplo n.º 9
0
 public ConnectTo() : base(ServerOpcodes.ConnectTo)
 {
     Payload = new ConnectPayload();
 }