private void ChannelOpenPortRequestReceived(object sender, OpenPortRequestEventArgs e) { var rule = Bootstrapper.Configuration.GetRuleFromTcpPort(e.Request.PortToOpen); if (rule == null) { Log.Error("Received message from unknown port {port} - Check firewall because it should be closed received from ip {ip}", e.Request.PortToOpen, e.Request.IpAddress); return; } Log.Information("Checking udp message in port {port} bound to rule for tcp port {tcpport} received from ip {ip}", e.Request.PortToOpen, rule.TcpPort, e.Request.IpAddress); if (rule.TcpPort != e.Request.PortToOpen) { Log.Error("Received wrong requesto to open port {port} bound to rule for tcp port {tcpport} received from ip {ip}", e.Request.PortToOpen, rule.TcpPort, e.Request.IpAddress); return; } Log.Information("CORRECT! udp message in port {port} bound to rule for tcp port {tcpport} received from ip {ip}", e.Request.PortToOpen, rule.TcpPort, e.Request.IpAddress); Sealer.OpenPortWithTimeout(rule.TcpPort, IPEndPoint.Parse(e.Request.IpAddress), new DateTime(Math.Min(e.Request.EndOpeningDate.Ticks, DateTime.Now.AddHours(4).Ticks))); }
private void DataReceived(object sender, OpenPortRequestEventArgs e) { ReceivedRequest = e.Request; }