diff options
Diffstat (limited to 'OpenSim/Region/ClientStack/UDPServer.cs')
-rw-r--r-- | OpenSim/Region/ClientStack/UDPServer.cs | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/OpenSim/Region/ClientStack/UDPServer.cs b/OpenSim/Region/ClientStack/UDPServer.cs index 3d1512f..7a4cc97 100644 --- a/OpenSim/Region/ClientStack/UDPServer.cs +++ b/OpenSim/Region/ClientStack/UDPServer.cs | |||
@@ -295,6 +295,17 @@ namespace OpenSim.Region.ClientStack | |||
295 | // new client | 295 | // new client |
296 | m_log.Debug("[UDPSERVER]: Adding New Client"); | 296 | m_log.Debug("[UDPSERVER]: Adding New Client"); |
297 | AddNewClient(packet); | 297 | AddNewClient(packet); |
298 | |||
299 | UseCircuitCodePacket p = (UseCircuitCodePacket)packet; | ||
300 | |||
301 | // Ack the first UseCircuitCode packet | ||
302 | PacketAckPacket ack_it = (PacketAckPacket)PacketPool.Instance.GetPacket(PacketType.PacketAck); | ||
303 | // TODO: don't create new blocks if recycling an old packet | ||
304 | ack_it.Packets = new PacketAckPacket.PacketsBlock[1]; | ||
305 | ack_it.Packets[0] = new PacketAckPacket.PacketsBlock(); | ||
306 | ack_it.Packets[0].ID = packet.Header.Sequence; | ||
307 | ack_it.Header.Reliable = false; | ||
308 | SendPacketTo(ack_it.ToBytes(),ack_it.ToBytes().Length,SocketFlags.None,p.CircuitCode.Code); | ||
298 | } | 309 | } |
299 | else | 310 | else |
300 | { | 311 | { |