public void Receive_CrawlAck(CrawlAck ack, G2ReceivedPacket packet) { DhtContact source = new DhtContact(ack.Source, packet.Source.IP); if (!CrawlMap.ContainsKey(source.RoutingID)) { return; } CrawlNode node = CrawlMap[source.RoutingID]; node.Ack = ack; foreach (DhtContact contact in ack.ProxyServers) { if (!CrawlMap.ContainsKey(contact.RoutingID)) { CrawlMap[contact.RoutingID] = new CrawlNode(contact); } } foreach (DhtContact contact in ack.ProxyClients) { if (!CrawlMap.ContainsKey(contact.RoutingID)) { CrawlNode newNode = new CrawlNode(contact); newNode.Proxy = node; CrawlMap[contact.RoutingID] = newNode; } } }
public void Send_CrawlAck(CrawlRequest req, G2ReceivedPacket packet) { CrawlAck ack = new CrawlAck(); ack.Source = GetLocalSource(); ack.Version = DeOpsContext.CoreVersion.ToString(); ack.Uptime = (Core.TimeNow - Core.StartTime).Seconds; foreach (TcpConnect connection in TcpControl.ProxyServers) { ack.ProxyServers.Add(new DhtContact(connection, connection.RemoteIP)); } foreach (TcpConnect connection in TcpControl.ProxyClients) { ack.ProxyClients.Add(new DhtContact(connection, connection.RemoteIP)); } if (packet.ReceivedTcp) { ack.ToAddress = packet.Source; packet.Tcp.SendPacket(ack); } else { SendPacket(packet.Source, ack); } }
public void Send_CrawlAck(CrawlRequest req, G2ReceivedPacket packet) { CrawlAck ack = new CrawlAck(); ack.Source = GetLocalSource(); ack.Version = Core.Context.LocalSeqVersion.ToString(); ack.Uptime = (Core.TimeNow - Core.StartTime).Seconds; foreach (TcpConnect connection in TcpControl.ProxyServers) ack.ProxyServers.Add(new DhtContact(connection, connection.RemoteIP)); foreach (TcpConnect connection in TcpControl.ProxyClients) ack.ProxyClients.Add(new DhtContact(connection, connection.RemoteIP)); if (packet.ReceivedTcp) { ack.ToAddress = packet.Source; packet.Tcp.SendPacket(ack); } else SendPacket(packet.Source, ack); }
public void Receive_CrawlAck(CrawlAck ack, G2ReceivedPacket packet) { DhtContact source = new DhtContact(ack.Source, packet.Source.IP); if (!CrawlMap.ContainsKey(source.RoutingID)) return; CrawlNode node = CrawlMap[source.RoutingID]; node.Ack = ack; foreach(DhtContact contact in ack.ProxyServers) if (!CrawlMap.ContainsKey(contact.RoutingID)) CrawlMap[contact.RoutingID] = new CrawlNode(contact); foreach(DhtContact contact in ack.ProxyClients) if (!CrawlMap.ContainsKey(contact.RoutingID)) { CrawlNode newNode = new CrawlNode(contact); newNode.Proxy = node; CrawlMap[contact.RoutingID] = newNode; } }
public void Receive_CrawlAck(G2ReceivedPacket packet) { CrawlAck ack = CrawlAck.Decode(packet); Core.RunInGuiThread(CrawlerAck, ack, packet); }