internal static NetworkPacket ReadPacket(Socket socket) { using (var stream = new NetworkStream(socket)) using (var reader = new BinaryReader(stream)) { NetworkPacket packet = InstanciatePacket(reader); packet.ReadFrom(reader); return(packet); } }