protected override IcmpDatagram GetDatagramToSend(SendEchoInfo info) { var icmpDatagram = new IcmpEchoRequestDatagram(); icmpDatagram.Data = Encoding.ASCII.GetBytes(info.Data); icmpDatagram.Identifier = info.Identifier; icmpDatagram.Sequence = info.Sequence; return(icmpDatagram); }
protected override Socket GetHost(SendEchoInfo info) { var tracertInfo = info as SendTracertInfo; if (Host == null) { Host = base.GetHost(info); } Host.SetSocketOption(SocketOptionLevel.IP, SocketOptionName.IpTimeToLive, tracertInfo.Ttl); return(Host); }
protected override Socket GetHost(SendEchoInfo info) { var tracertInfo = info as SendTracertInfo; if (Host == null) { Host = base.GetHost(info); } Host.SetSocketOption(SocketOptionLevel.IP, SocketOptionName.IpTimeToLive, tracertInfo.Ttl); return Host; }
public void Send(IPAddress ipAddress, Action <SendResult <IcmpEchoResponseDatagram> > finished) { var info = new SendEchoInfo(ipAddress, 3000, 1, 1, "test datagram"); Send(info, finished); }
public void Send(SendEchoInfo info, Action <SendResult <IcmpEchoResponseDatagram> > finished) { SendToHost(info, finished); }