public void Write(UruStream s) { s.WriteUInt(fTransID); s.WriteUInt(fAgeMcpID); s.WriteBytes(fAcctUuid.ToByteArray()); s.WriteUInt(fPlayerID); }
public void Read(UruStream s) { fTransID = s.ReadUInt(); fAgeMcpID = s.ReadUInt(); fAcctUuid = new Guid(s.ReadBytes(16)); fPlayerID = s.ReadUInt(); }
public void Write(UruStream s) { s.WriteUInt(fParentIdx); s.WriteUInt(fChildIdx); s.WriteUInt(fSaverIdx); s.WriteByte(0); }
public void Read(UruStream s) { fParentIdx = s.ReadUInt(); fChildIdx = s.ReadUInt(); fSaverIdx = s.ReadUInt(); s.ReadByte(); //Seen }
public void Read(UruStream s) { fType = (EConnType)s.ReadByte(); fSockHeaderSize = s.ReadUShort(); fBuildID = s.ReadUInt(); fBuildType = (NetCliBuildType)s.ReadUInt(); fBranchID = s.ReadUInt(); fProductID = new Guid(s.ReadBytes(16)); }
public byte[] ToArray() { MemoryStream ms = new MemoryStream(); UruStream s = new UruStream(ms); Write(s); byte[] buf = ms.ToArray(); s.Close(); ms.Close(); return buf; }
public void Read(UruStream s) { while (true) { AuthFileEntry entry = new AuthFileEntry(); entry.fName = s.ReadUnicodeString(); if (entry.fName == String.Empty) break; entry.fSize = (long)(s.ReadUShort() << 16 | s.ReadUShort() & 0xFFFF); s.ReadUShort(); //NULL fFiles.Add(entry); } }
public void Read(UruStream s) { fTransID = s.ReadUInt(); fResult = (ENetError)s.ReadInt(); fAgeMcpID = s.ReadUInt(); fAgeInstanceUuid = new Guid(s.ReadBytes(16)); fAgeVaultID = s.ReadUInt(); byte[] game = s.ReadBytes(4); Array.Reverse(game); fGameServerIP = new IPAddress(game); }
public void Write(UruStream s) { foreach (AuthFileEntry file in fFiles) { s.WriteBytes(Encoding.Unicode.GetBytes(file.fName)); s.WriteUShort(0); s.WriteUShort((ushort)(file.fSize >> 16)); s.WriteUShort((ushort)(file.fSize & 0xFFFF)); s.WriteUShort(0); } s.WriteUShort(0); }
public override bool Connect() { if (!base.Connect()) return false; //Send the FileConnectHeader UruStream s = new UruStream(new NetworkStream(fSocket, false)); s.BufferWriter(); fHeader.Write(s); s.WriteUInt(12); //Size s.WriteUInt(0); s.WriteUInt(0); s.FlushWriter(); s.Close(); fSocket.BeginReceive(new byte[4], 0, 4, SocketFlags.Peek, new AsyncCallback(IReceive), null); return true; }
public void Ping(int time) { File_PingPong ping = new File_PingPong(); ping.fPingTime = time; ResetIdleTimer(); lock (fSocket) { MemoryStream ms = new MemoryStream(); UruStream s = new UruStream(ms); s.WriteUInt(12); s.WriteInt((int)FileCli2Srv.PingRequest); ping.Write(s); fSocket.Send(ms.ToArray()); s.Close(); ms.Close(); } }
public override bool Connect() { if (!base.Connect()) return false; //Send the GateConnectHeader UruStream s = new UruStream(new NetworkStream(fSocket, false)); s.BufferWriter(); fHeader.Write(s); s.WriteInt(20); s.WriteBytes(Guid.Empty.ToByteArray()); s.FlushWriter(); s.Close(); //Init encryption if (!base.NetCliConnect(4)) return false; fSocket.BeginReceive(new byte[2], 0, 2, SocketFlags.Peek, new AsyncCallback(IReceive), null); return true; }
public void Read(UruStream s) { while (true) { FileManifestEntry me = new FileManifestEntry(); me.fFileName = s.ReadUnicodeString(); if (me.fFileName == String.Empty) break; //The end of the manifest is an empty string me.fDownloadName = s.ReadUnicodeString(); me.fHash = s.ReadUnicodeString(); me.fCompressedHash = s.ReadUnicodeString(); me.fFileSize = (uint)(s.ReadUShort() << 16 | s.ReadUShort() & 0xFFFF); s.ReadUShort(); //NULL me.fCompressedSize = (uint)(s.ReadUShort() << 16 | s.ReadUShort() & 0xFFFF); s.ReadUShort(); //NULL me.fFlags = (uint)(s.ReadUShort() << 16 | s.ReadUShort() & 0xFFFF); s.ReadUShort(); //NULL fEntries.Add(me); } }
public void Write(UruStream s) { s.WriteByte((byte)fType); s.WriteUShort(fSockHeaderSize); s.WriteUInt(fBuildID); s.WriteUInt((uint)fBuildType); s.WriteUInt(fBranchID); s.WriteBytes(fProductID.ToByteArray()); }
public void Write(UruStream s) { s.WriteBytes(fInstanceUuid.ToByteArray()); s.WriteUnicodeStringF(fFilename, 64); s.WriteUnicodeStringF(fInstanceName, 64); s.WriteUnicodeStringF(fUserName, 64); s.WriteUnicodeStringF(fDescription, 1024); s.WriteUInt(fSequenceNumber); s.WriteInt(fLanguage); s.WriteUInt(fPopulation); s.WriteUInt(fCurrPopulation); }
public void Read(UruStream s) { fInstanceUuid = new Guid(s.ReadBytes(16)); fFilename = s.ReadUnicodeStringF(64); fInstanceName = s.ReadUnicodeStringF(64); fUserName = s.ReadUnicodeStringF(64); fDescription = s.ReadUnicodeStringF(1024); fSequenceNumber = s.ReadUInt(); fLanguage = s.ReadInt(); fPopulation = s.ReadUInt(); fCurrPopulation = s.ReadUInt(); }
public void Read(UruStream s) { fPingTime = s.ReadInt(); }
public void Read(UruStream s) { fTransID = s.ReadUInt(); fGroup = s.ReadUnicodeStringF(260); fBuildID = s.ReadUInt(); }
public void Write(UruStream s) { s.WriteUInt(fTransID); s.WriteInt((int)fResult); }
public void Read(UruStream s) { fTransID = s.ReadUInt(); fResult = (ENetError)s.ReadInt(); }
public void Write(UruStream s) { s.WriteUInt(fMsgType); if (fBuffer == null) fBuffer = new byte[0]; s.WriteInt(fBuffer.Length); s.WriteBytes(fBuffer); }
public void Write(UruStream s) { if (fData == null) fData = new byte[0]; s.WriteUInt(fTransID); s.WriteUInt((uint)fResult); s.WriteUInt(fReaderID); s.WriteUInt(fFileSize); s.WriteInt(fData.Length); s.WriteBytes(fData); }
public void Write(UruStream s) { s.WriteUInt(fTransID); }
public void Read(UruStream s) { fTransID = s.ReadUInt(); }
private void IReceive(IAsyncResult ar) { try { lock (fSocket) { fSocket.EndReceive(ar); ResetIdleTimer(); //Size byte[] buf = new byte[4]; fSocket.Receive(buf); //Message buf = new byte[BitConverter.ToInt32(buf, 0) - 4]; fSocket.Receive(buf); fStream = new UruStream(new MemoryStream(buf)); FileSrv2Cli msg = (FileSrv2Cli)fStream.ReadInt(); switch (msg) { case FileSrv2Cli.BuildIdReply: IGotBuildID(); break; case FileSrv2Cli.PingReply: IPong(); break; default: string test = Enum.GetName(typeof(FileSrv2Cli), msg); throw new NotSupportedException(msg.ToString("X") + " - " + test); } fStream.Close(); } fSocket.BeginReceive(new byte[2], 0, 2, SocketFlags.Peek, new AsyncCallback(IReceive), null); } catch (ObjectDisposedException) { } catch (SocketException) { fSocket.Close(); #if !DEBUG } catch (Exception e) { FireException(e); #endif } }
public void Write(UruStream s) { s.WriteUInt(fTransID); s.WriteUInt(fNodeID); s.WriteBytes(fRevisionID.ToByteArray()); if (fNodeData == null) fNodeData = new byte[0]; s.WriteInt(fNodeData.Length); s.WriteBytes(fNodeData); }
public void Write(UruStream s) { s.WriteInt(fPingTime); }
public void Write(UruStream s) { s.WriteUInt(fTransID); s.WriteUInt((uint)fResult); s.WriteUInt(fReaderID); s.WriteInt(fNumFiles); s.WriteInt(fData.Length / 2); //Wide char buffer... s.WriteBytes(fData); }
public uint RequestBuildID() { File_BuildIdRequest req = new File_BuildIdRequest(); req.fTransID = IGetTransID(); ResetIdleTimer(); lock (fSocket) { MemoryStream ms = new MemoryStream(); UruStream s = new UruStream(ms); s.WriteUInt(12); s.WriteInt((int)FileCli2Srv.BuildIdRequest); req.Write(s); fSocket.Send(ms.ToArray()); s.Close(); ms.Close(); } return req.fTransID; }
public void Read(UruStream s) { fMsgType = s.ReadUInt(); fBuffer = s.ReadBytes(s.ReadInt()); }