public MultiplexConnectionOutputPump(BufferRead bufferRead, BufferWrite bufferWrite, int connectionId) { this.bufferRead = bufferRead; this.bufferWrite = bufferWrite; inputBuffer = new byte[65536]; this.connectionId = connectionId; }
private bool ProcessControlMessage(ENetCommand cmd, BufferRead buf) { if (cmd == ENetCommand.NetNop) { return(true); } if (cmd == ENetCommand.NetDisconnect) { var reason = buf.ReadString(); _messageHandler.ConnectionClosing(reason); return(false); } if (cmd == ENetCommand.NetFile) { var transferId = buf.ReadUInt(); var fileName = buf.ReadString(); if (buf.ReadByte() != 0 && IsSafeFileToDownload(fileName)) { _messageHandler.FileRequested(fileName, transferId); } else { _messageHandler.FileDenied(fileName, transferId); } return(true); } Console.WriteLine("NetChannel: Received bad control command type {0} from {1}.", (ushort)cmd, _remoteAddress); return(false); }
public MultiplexConnectionOutputPump(BufferRead bufferRead, BufferWrite bufferWrite, int connectionId) { this.bufferRead = bufferRead; this.bufferWrite = bufferWrite; this.inputBuffer = new byte[65536]; this.connectionId = connectionId; }
public override bool ReadFromBuffer(BufferRead buffer) { Tick = buffer.ReadInt(); HostFrameTime = buffer.ReadULong() / Networking.NetTickScaleUp; HostFrameTimeStdDeviation = buffer.ReadULong() / Networking.NetTickScaleUp; return(true); }
public FramingOutputPump(BufferRead bufferRead, BufferWrite bufferWrite, int pingFrequency, EventTraceActivity activity, Uri uri) { this.bufferRead = bufferRead; this.bufferWrite = bufferWrite; this.inputBuffer = new byte[65536]; this.pingFrequency = pingFrequency; this.activity = activity; this.uri = uri; }
public MultiplexConnectionInputPump(BufferRead bufferRead, MultiplexConnectionFactoryHandler connectionFactory, object callbackState) { this.callbackState = callbackState; this.bufferRead = bufferRead; this.connectionFactory = connectionFactory; this.connections = new Dictionary<int, MultiplexedConnection>(); this.inputBuffer = new byte[65536]; this.preambleBuffer = new byte[sizeof(int) + sizeof(ushort)]; this.stopInput = new ManualResetEvent(false); }
public FramingInputPump(BufferRead bufferRead, BufferWrite bufferWrite, Action bufferDone, EventTraceActivity activity, Uri uri) { this.bufferRead = bufferRead; this.bufferWrite = bufferWrite; this.bufferDone = bufferDone; this.inputBuffer = new byte[65536]; this.preambleBuffer = new byte[2]; this.Activity = activity; this.uri = uri; }
public MultiplexConnectionInputPump(BufferRead bufferRead, MultiplexConnectionFactoryHandler connectionFactory, object callbackState) { this.callbackState = callbackState; this.bufferRead = bufferRead; this.connectionFactory = connectionFactory; connections = new Dictionary <int, MultiplexedConnection>(); inputBuffer = new byte[65536]; preambleBuffer = new byte[sizeof(int) + sizeof(ushort)]; stopInput = new ManualResetEvent(false); }
public MultiplexConnectionInputPump(BufferRead bufferRead, MultiplexConnectionFactoryHandler connectionFactory, object callbackState) { this.callbackState = callbackState; this.bufferRead = bufferRead; this.connectionFactory = connectionFactory; connections = new Dictionary <int, MultiplexedConnection>(); inputBuffer = new byte[65536]; // Each frame is prefixed with a 32-bit connectionId and a 16-bit length value. preambleBuffer = new byte[sizeof(int) + sizeof(ushort)]; stopInput = new ManualResetEvent(false); }
public bool ProcessMessages(BufferRead buf) { while (true) { if (buf.GetNumBitsLeft() <= 0) { break; } var cmd = buf.ReadUShort(); if (cmd <= (ushort)ENetCommand.NetFile) { if (!ProcessControlMessage((ENetCommand)cmd, buf)) { return(false); } continue; } var netMsg = FindMessage(cmd); if (netMsg != null) { var msgName = netMsg.GetName(); if (!netMsg.ReadFromBuffer(buf)) { Console.WriteLine("NetChannel: Failed reading message {0} from {1}", msgName, _remoteAddress); return(false); } var ret = netMsg.Process(); if (!ret) { Console.WriteLine("NetChannel: Failed processing message {0}.", msgName); return(false); } } else { Console.WriteLine("NetChannel: Unknown net message ({0}) from {1}", cmd, _remoteAddress); return(false); } } return(true); }
public BufferPump(BufferRead bufferRead, BufferWrite bufferWrite, int bufferSize) { this.bufferRead = bufferRead; this.bufferWrite = bufferWrite; this.inputBuffer = new byte[bufferSize]; }
public BufferPump(BufferRead bufferRead, BufferWrite bufferWrite) : this(bufferRead, bufferWrite, 65536) { }
public void Assign(EndPoint from, int len, byte[] data) { From = from; Message = new BufferRead(data, len); }
public BufferPump(BufferRead bufferRead, BufferWrite bufferWrite, int bufferSize) { this.bufferRead = bufferRead; this.bufferWrite = bufferWrite; inputBuffer = new byte[bufferSize]; }
public override bool ReadFromBuffer(BufferRead buffer) { _state = (ESignonState)buffer.ReadByte(); return(true); }
public abstract bool ReadFromBuffer(BufferRead buffer);
public NetPacket() { From = new IPEndPoint(IPAddress.Any, 0); Message = null; }