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 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 void Write(UruStream s) { s.WriteUInt(fTransID); s.WriteInt((int)fResult); s.WriteInt(fRefs.Length); foreach (VaultNodeRef r in fRefs) r.Write(s); }
public void Write(UruStream s) { s.WriteUInt(fTransID); s.WriteInt((int)fResult); if (fNodeIDs == null) fNodeIDs = new uint[0]; s.WriteInt(fNodeIDs.Length); for (int i = 0; i < fNodeIDs.Length; i++) s.WriteUInt(fNodeIDs[i]); }
public void Write(UruStream s) { s.WriteUInt(fTransID); s.WriteInt((int)fResult); s.WriteUInt(fFileSize); s.WriteUInt(fChunkPos); if (fChunkData == null) fChunkData = new byte[0]; s.WriteInt(fChunkData.Length); s.WriteBytes(fChunkData); }
public void Write(UruStream s) { s.WriteUInt(fTransID); s.WriteInt((int)fResult); }
public void Write(UruStream s) { s.WriteInt(fPingTime); }
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); s.WriteInt((int)fResult); s.WriteUInt(fAgeMcpID); s.WriteBytes(fAgeInstanceUuid.ToByteArray()); s.WriteUInt(fAgeVaultID); if (fGameServerIP == null) { s.WriteInt(0); } else { //Little Endian IP byte[] ip = fGameServerIP.GetAddressBytes(); Array.Reverse(ip); s.WriteBytes(ip); } }
public void Write(UruStream s) { s.WriteInt(fAddr); s.WriteBytes(fToken.ToByteArray()); }
public void Write(UruStream s) { s.WriteUInt(fTransID); s.WriteInt((int)fResult); s.WriteUInt(fPlayerID); s.WriteUInt(fExplorer); s.WriteUnicodeStringV16(fName, 40); s.WriteUnicodeStringV16(fModel, 64); }
public void Write(UruStream s) { s.WriteUInt(fTransID); s.WriteInt(fChallenge); s.WriteUnicodeStringV16(fAccount, 64); for (int i = 0; i < fHash.UruHash.Length; i++) s.WriteUInt(fHash.UruHash[i]); s.WriteUnicodeStringV16(fAuthToken, 64); s.WriteUnicodeStringV16(fOS, 8); }
public void Write(UruStream s) { s.WriteUInt(fTransID); s.WriteInt((int)fResult); s.WriteBytes(fAcctGuid.ToByteArray()); s.WriteUInt(fFlags); s.WriteUInt(fBillingType); if (fDroidKey == null) fDroidKey = new uint[4]; for (int i = 0; i < fDroidKey.Length; i++) s.WriteUInt(fDroidKey[i]); }
public void Write(UruStream s) { s.WriteInt((int)fReason); }
public void Write(UruStream s) { s.WriteUInt(fTransID); s.WriteInt((int)fResult); s.WriteInt(fAges.Length); foreach (NetAgeInfo nai in fAges) nai.Write(s); }
public void Write(UruStream s) { s.WriteUInt(fPingTime); s.WriteUInt(fTransID); if (fPayload == null) s.WriteInt(0); else { s.WriteInt(fPayload.Length); s.WriteBytes(fPayload); } }
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 override bool Connect() { if (!base.Connect()) return false; //Send the AuthConnectHeader 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(41)) return false; //Register the client... //Don't require the user to do this. Auth_RegisterRequest req = new Auth_RegisterRequest(); req.fBuildID = fHeader.fBuildID; fStream.BufferWriter(); fStream.WriteUShort((ushort)AuthCli2Srv.ClientRegisterRequest); req.Write(fStream); fStream.FlushWriter(); fSocket.BeginReceive(new byte[2], 0, 2, SocketFlags.Peek, new AsyncCallback(IReceive), null); fChgHack.Reset(); fChgHack.WaitOne(); return true; }
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 void Write(UruStream s) { s.WriteUInt(fTransID); s.WriteBytes(fAgeUUID.ToByteArray()); s.WriteBytes(fParentUUID.ToByteArray()); s.WriteUnicodeStringV16(fFilename, 260); s.WriteUnicodeStringV16(fInstanceName, 260); s.WriteUnicodeStringV16(fUserName, 260); s.WriteUnicodeStringV16(fDescription, 1024); s.WriteInt(fSequenceNumber); s.WriteInt(fLanguage); s.WriteUInt(fCreatorID); }
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) { s.WriteUInt(fTransID); s.WriteInt((int)fResult); if (fNodeData == null) fNodeData = new byte[0]; s.WriteInt(fNodeData.Length); s.WriteBytes(fNodeData); }
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 Write(UruStream s) { s.WriteUInt(fTransID); s.WriteInt(fNodeData.Length); s.WriteBytes(fNodeData); }
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 byte[] ToArray() { MemoryStream ms = new MemoryStream(); UruStream s = new UruStream(ms); ulong bit = 1; Fields f = NodeFields; s.WriteULong((ulong)f); while (bit != 0 && bit <= (ulong)f) { switch ((f & (Fields)bit)) { case Fields.kBlob_1: s.WriteInt(fBlob[0].Length); s.WriteBytes(fBlob[0]); break; case Fields.kBlob_2: s.WriteInt(fBlob[1].Length); s.WriteBytes(fBlob[1]); break; case Fields.kCreateAgeName: s.WriteUnicodeStringV32(fCreateAgeName); break; case Fields.kCreateAgeUuid: s.WriteBytes(fCreateAgeUuid.ToByteArray()); break; case Fields.kCreateTime: s.WriteUInt(ToUnixTime(fCreateTime)); break; case Fields.kCreatorIdx: s.WriteUInt(fCreatorIdx.Value); break; case Fields.kCreatorUuid: s.WriteBytes(fCreatorUuid.ToByteArray()); break; case Fields.kInt32_1: s.WriteInt(fInt32[0].Value); break; case Fields.kInt32_2: s.WriteInt(fInt32[1].Value); break; case Fields.kInt32_3: s.WriteInt(fInt32[2].Value); break; case Fields.kInt32_4: s.WriteInt(fInt32[3].Value); break; case Fields.kIString64_1: s.WriteUnicodeStringV32(fIString64[0]); break; case Fields.kIString64_2: s.WriteUnicodeStringV32(fIString64[1]); break; case Fields.kModifyTime: s.WriteUInt(ToUnixTime(fModifyTime)); break; case Fields.kNodeIdx: s.WriteUInt(fIdx); break; case Fields.kNodeType: s.WriteUInt((uint)fNodeType); break; case Fields.kString64_1: s.WriteUnicodeStringV32(fString64[0]); break; case Fields.kString64_2: s.WriteUnicodeStringV32(fString64[1]); break; case Fields.kString64_3: s.WriteUnicodeStringV32(fString64[2]); break; case Fields.kString64_4: s.WriteUnicodeStringV32(fString64[3]); break; case Fields.kString64_5: s.WriteUnicodeStringV32(fString64[4]); break; case Fields.kString64_6: s.WriteUnicodeStringV32(fString64[5]); break; case Fields.kText_1: s.WriteUnicodeStringV32(fText[0]); break; case Fields.kText_2: s.WriteUnicodeStringV32(fText[1]); break; case Fields.kUInt32_1: s.WriteUInt(fUInt32[0].Value); break; case Fields.kUInt32_2: s.WriteUInt(fUInt32[1].Value); break; case Fields.kUInt32_3: s.WriteUInt(fUInt32[2].Value); break; case Fields.kUInt32_4: s.WriteUInt(fUInt32[3].Value); break; case Fields.kUuid_1: s.WriteBytes(fUuid[0].ToByteArray()); break; case Fields.kUuid_2: s.WriteBytes(fUuid[1].ToByteArray()); break; case Fields.kUuid_3: s.WriteBytes(fUuid[2].ToByteArray()); break; case Fields.kUuid_4: s.WriteBytes(fUuid[3].ToByteArray()); break; } bit <<= 1; } byte[] buf = ms.ToArray(); s.Close(); ms.Close(); return buf; }