HashrateCalculator.NodeConnection.PH_Version C# (CSharp) Method

PH_Version() public method

public PH_Version ( byte payload ) : void
payload byte
return void
        void PH_Version(byte[] payload)
        {
            MemoryStream stream = new MemoryStream(payload);
            BinaryReader br = new BinaryReader(stream);

            mRemoteVersion = br.ReadUInt32();
            mRemoteServices = br.ReadUInt64();
            mRemoteTimestamp = br.ReadUInt64();

            {
                //uint addrA_time = br.ReadUInt32();
                ulong addrA_services = br.ReadUInt64();
                byte[] addrA_ip = br.ReadBytes(16);
                ushort addrA_port = br.ReadUInt16();
            }

            {
                //uint addrB_time = br.ReadUInt32();
                ulong addrB_services = br.ReadUInt64();
                byte[] addrB_ip = br.ReadBytes(16);
                ushort addrB_port = br.ReadUInt16();
            }
            mRemoteNodeNOnce = br.ReadUInt64();

            ulong nameLen = Program.ReadVarInt(br);
            char[] clientName = br.ReadChars((int)nameLen);
            mRemoteUserAgent = new string(clientName);

            mRemoteHeight = br.ReadUInt32();
            br.Close();

            // Send verack
            byte[] verackData = new byte[0];
            SendPacket("verack", verackData);

            mOwner.VersionRecieved(this);
            Console.WriteLine("Remote Version: " + mRemoteVersion);
        }