private Task <IPDetails> NMapProcessThread(IPDetails _ipDetails) { var _task = Task.Factory.StartNew(() => { _ipDetails.NMapRun = new DotNMap.Runner().Scan(_ipDetails.IP); return(_ipDetails); }); return(_task); }
private void DisplaySystemDetails(Adapter selectedAdapter, IPDetails selectedIPDetails) { lblIPAddressValue.Text = selectedIPDetails.IP; lblMacAddressValue.Text = selectedIPDetails.MacAddress; lblHostNameValue.Text = selectedIPDetails.HostName; lblSubnetMaskValue.Text = selectedAdapter.SubNetMask; lblNetworkAdapterValue.Text = selectedAdapter.Name; lblGatewayAddressValue.Text = selectedAdapter.GatewayAddress.FirstOrDefault(); var _host = (DotNMap.host)selectedIPDetails.NMapRun.Items.ToList().Find(p => p.GetType().Name.ToString().Equals("host")); if (_host != null && _host.status.state == DotNMap.statusState.up) { //Bind OS Details var _os = (DotNMap.os)_host.Details.ToList().Find(p => p.GetType().Name.ToString().Equals("os")); if (_os != null && _os.osmatch != null) { var _osMatch = new List <OSMatch>(); _os.osmatch.ToList().ForEach(p => { _osMatch.Add(new OSMatch() { OSName = p.name, Accuracy = p.accuracy, DeviceType = p.osclass.Count() > 0 ? p.osclass[0].type : string.Empty }); }); gvOSPossibilities.DataSource = _osMatch; } //Bind Port Details var _ports = (DotNMap.ports)_host.Details.ToList().Find(p => p.GetType().Name.ToString().Equals("ports")); if (_ports != null && _ports.port != null && _ports.port.Count() > 0) { var _portDetails = new List <Port>(); _ports.port.ToList().ForEach(p => { _portDetails.Add(new Port() { PortID = p.portid, Protocol = p.protocol.ToString(), ServiceName = p.service.name, State = p.state.state1 }); }); gvOpenPorts.DataSource = _portDetails; } } }