public IActionResult ScanTCPOrUDP([FromQuery] NMapTcpOrUdpOptionModel model) { string fileName = OnkeiUtil.GenerateTimeStamp(); var check = OnkeiUtil.CheckIpOrHost(model.Host); if (check == null) { return(BadRequest( BaseResponseModel.PrepareDataFail("Model is not correct") )); } if (!model.Tcp && !model.Udp) { return(BadRequest( BaseResponseModel.PrepareDataFail("Model is not correct") )); } var result = _nMapService.ScanTcpOrUdp(model); if (result == null) { return(BadRequest( BaseResponseModel.PrepareDataFail("Model is not correct") )); } string link = ""; if (result.Trim() != "") { link = "http://" + HttpContext.Request.Host.Value + "/file/download/" + OnkeiUtil.SaveFile(fileName, result); } return(Ok(BaseResponseModel.PrepareDataSuccess(result, "Success", link))); }
public string ScanTcpOrUdp(NMapTcpOrUdpOptionModel model) { var argument = $""; if (model.Tcp) { argument += "-sT "; } if (model.Udp) { argument += "-sU "; } argument += " " + model.Host; processStartInfo.Arguments = argument; using (Process process = Process.Start(processStartInfo)) { using (StreamReader reader = process.StandardOutput) { string result = reader.ReadToEnd(); return(result); } } }