public static bool ScanWithNoRules(String sApplicationToScan, String sScanResultsFolder, Callbacks.dMethod_Object dProcessCompletionCallback) { var srScanResults = new O2scanresults(); srScanResults.bScanWithNoRules = true; bool bScanResult = srScanResults.scanApplication(sApplicationToScan); DebugMsg.saveLogIntoFile(Path.Combine(sScanResultsFolder, Path.GetFileNameWithoutExtension(sApplicationToScan) + " - Scan_WithNoRules.txt")); return bScanResult; }
public static bool ScanWithNoRules(String sApplicationToScan, String sScanResultsFolder, Callbacks.dMethod_Object dProcessCompletionCallback) { var srScanResults = new O2scanresults(); srScanResults.bScanWithNoRules = true; bool bScanResult = srScanResults.scanApplication(sApplicationToScan); DebugMsg.saveLogIntoFile(Path.Combine(sScanResultsFolder, Path.GetFileNameWithoutExtension(sApplicationToScan) + " - Scan_WithNoRules.txt")); return(bScanResult); }
public static void ScanWithSelectedAutomaticRuleSets(String sApplicationToScan, String sScanResultsFolder, bool bCallBacksOnControlFlowGraphs_And_ExternalSinks, bool bCallBacksOnEdges_And_ExternalSinks, bool bSourcesAndSinks, String sExtraLogNameText, Callbacks.dMethod_Object dProcessCompletionCallback, Callbacks.dMethod_String logCallback) { O2Thread.mtaThread(() => { DebugMsg.bLogCache = true; // enable LogCache (so that we can save it at the end var srScanResults = new O2scanresults(); //if (File.Exists(CalculateCirDataFileNameInResultsFolder(sApplicationToScan, sScanResultsFolder))) // srScanResults.sCirDataFile = CalculateCirDataFileNameInResultsFolder(sApplicationToScan, sScanResultsFolder); // load or create CirData file if (File.Exists(sApplicationToScan + ".CirData")) { srScanResults.sCirDataFile = sApplicationToScan + ".CirData"; } else { srScanResults.bCreateCirDataFile = true; } // set scanning options (i.e. what to scan) srScanResults.bCallBacksOnControlFlowGraphs_And_ExternalSinks = bCallBacksOnControlFlowGraphs_And_ExternalSinks; srScanResults.bCallBacksOnEdges_And_ExternalSinks = bCallBacksOnEdges_And_ExternalSinks; srScanResults.bSourcesAndSinks = bSourcesAndSinks; srScanResults.dProcessCompletionCallback = dProcessCompletionCallback; srScanResults.logCallback = logCallback; // trigger scan bool bScanResult = srScanResults.scanApplication(sApplicationToScan); // SaveCirDataFile(srScanResults, sScanResultsFolder); //SaveAssessmentFiles(srScanResults, sScanResultsFolder); DebugMsg.saveLogIntoFile(Path.Combine(sScanResultsFolder, Path.GetFileNameWithoutExtension( sApplicationToScan) + " - " + sExtraLogNameText + ".txt")); DebugMsg.bLogCache = false; }); }
public static void ScanWithSelectedAutomaticRuleSets(String sApplicationToScan, String sScanResultsFolder, bool bCallBacksOnControlFlowGraphs_And_ExternalSinks, bool bCallBacksOnEdges_And_ExternalSinks, bool bSourcesAndSinks, String sExtraLogNameText, Callbacks.dMethod_Object dProcessCompletionCallback, Callbacks.dMethod_String logCallback) { O2Thread.mtaThread(() => { DebugMsg.bLogCache = true; // enable LogCache (so that we can save it at the end var srScanResults = new O2scanresults(); //if (File.Exists(CalculateCirDataFileNameInResultsFolder(sApplicationToScan, sScanResultsFolder))) // srScanResults.sCirDataFile = CalculateCirDataFileNameInResultsFolder(sApplicationToScan, sScanResultsFolder); // load or create CirData file if (File.Exists(sApplicationToScan + ".CirData")) srScanResults.sCirDataFile = sApplicationToScan + ".CirData"; else srScanResults.bCreateCirDataFile = true; // set scanning options (i.e. what to scan) srScanResults.bCallBacksOnControlFlowGraphs_And_ExternalSinks = bCallBacksOnControlFlowGraphs_And_ExternalSinks; srScanResults.bCallBacksOnEdges_And_ExternalSinks = bCallBacksOnEdges_And_ExternalSinks; srScanResults.bSourcesAndSinks = bSourcesAndSinks; srScanResults.dProcessCompletionCallback = dProcessCompletionCallback; srScanResults.logCallback = logCallback; // trigger scan bool bScanResult = srScanResults.scanApplication(sApplicationToScan); // SaveCirDataFile(srScanResults, sScanResultsFolder); //SaveAssessmentFiles(srScanResults, sScanResultsFolder); DebugMsg.saveLogIntoFile(Path.Combine(sScanResultsFolder, Path.GetFileNameWithoutExtension( sApplicationToScan) + " - " + sExtraLogNameText + ".txt")); DebugMsg.bLogCache = false; }); }
/* public static void CreateCirDataFile(O2scanresults srScanResults, String sScanResultsFolder, Callbacks.dMethod_Object dProcessCompletionCallback) * { * String sTargetCirFile = CalculateCirDataFileNameInResultsFolder(srScanResults.sApplicationToScan, sScanResultsFolder); * if (File.Exists(srScanResults.sCirDataFile) && srScanResults.sCirDataFile != sTargetCirFile) * { * //tring sZipFileName = Path.Combine(sScanResultsFolder, Path.GetFileName(sTargetCirFile) + ".zip"); * File.Copy(srScanResults.sCirDataFile, sTargetCirFile,true); * //zipUtils.zipFile(srScanResults.sCirDataFile, sZipFileName); * //File.Move(srScanResults.sCirDataFile, sTargetCirFile); * } * }*/ public static void SaveAssessmentFiles(O2scanresults srScanResults, String sScanResultsFolder) { if (File.Exists(srScanResults.sAssessmentFile_ScanWithExistingRules)) { //Files.MoveFile(srScanResults.sAssessmentFile_ScanWithExistingRules, Path.Combine(sScanResultsFolder, Path.GetFileNameWithoutExtension(srScanResults.sApplicationToScan) + "_ScanWithExistingRules.ozasmt")); Files.MoveFile(srScanResults.sAssessmentFile_ScanWithExistingRules, Path.Combine(sScanResultsFolder, "ScanWithExistingRules.ozasmt")); } if (File.Exists(srScanResults.sAssessmentFile_CallBacksOnControlFlowGraphs_And_ExternalSinks)) { //Files.MoveFile(srScanResults.sAssessmentFile_CallBacksOnControlFlowGraphs_And_ExternalSinks, Path.Combine(sScanResultsFolder, Path.GetFileNameWithoutExtension(srScanResults.sApplicationToScan) + "_CallBacksOnControlFlowGraphs_And_ExternalSinks.ozasmt")); Files.MoveFile(srScanResults.sAssessmentFile_CallBacksOnControlFlowGraphs_And_ExternalSinks, Path.Combine(sScanResultsFolder, "CallBacksOnControlFlowGraphs_And_ExternalSinks.ozasmt")); } if (File.Exists(srScanResults.sAssessmentFile_CallBacksOnEdges_And_ExternalSinks)) { //Files.MoveFile(srScanResults.sAssessmentFile_CallBacksOnEdges_And_ExternalSinks, Path.Combine(sScanResultsFolder, Path.GetFileNameWithoutExtension(srScanResults.sApplicationToScan) + "_CallBacksOnEdges_And_ExternalSinks.ozasmt")); Files.MoveFile(srScanResults.sAssessmentFile_CallBacksOnEdges_And_ExternalSinks, Path.Combine(sScanResultsFolder, "CallBacksOnEdges_And_ExternalSinks.ozasmt")); } if (File.Exists(srScanResults.sAssessmentFile_SourcesAndSinks)) { //Files.MoveFile(srScanResults.sAssessmentFile_SourcesAndSinks, Path.Combine(sScanResultsFolder, Path.GetFileNameWithoutExtension(srScanResults.sApplicationToScan) + "_SourcesAndSinks.ozasmt")); Files.MoveFile(srScanResults.sAssessmentFile_SourcesAndSinks, Path.Combine(sScanResultsFolder, "SourcesAndSinks.ozasmt")); } }
public static bool createCirDump(String sApplicationToScan, String sScanResultsFolder, Callbacks.dMethod_Object dProcessCompletionCallback, Callbacks.dMethod_String _logCallback, bool bDeleteAllRulesFromDbBeforeScan, bool bStoreControlFlowBlockRawDataInsideCirDataFile) { var srScanResults = new O2scanresults { bDeleteAllRulesForCirCreation = bDeleteAllRulesFromDbBeforeScan, dProcessCompletionCallback = dProcessCompletionCallback, logCallback = _logCallback, bCreateCirDataFile = true, bStoreControlFlowBlockRawDataInsideCirDataFile = bStoreControlFlowBlockRawDataInsideCirDataFile, bDeleteCreatedAssessmentFile = true }; // srScanResults.sPathToCirDumpFiles = sScanResultsFolder; // o2.rules.scan.CalculateCirDataFileNameInResultsFolder(sApplicationToScan, sScanResultsFolder); bool bScanResult = srScanResults.scanApplication(sApplicationToScan); //o2.rules.scan.SaveCirDataFile(srScanResults, sScanResultsFolder); DebugMsg.saveLogIntoFile(Path.Combine(sScanResultsFolder, Path.GetFileNameWithoutExtension(sApplicationToScan) + " - CreateConsolidatedCirDump.txt")); return bScanResult; }
/* public static void CreateCirDataFile(O2scanresults srScanResults, String sScanResultsFolder, Callbacks.dMethod_Object dProcessCompletionCallback) { String sTargetCirFile = CalculateCirDataFileNameInResultsFolder(srScanResults.sApplicationToScan, sScanResultsFolder); if (File.Exists(srScanResults.sCirDataFile) && srScanResults.sCirDataFile != sTargetCirFile) { //tring sZipFileName = Path.Combine(sScanResultsFolder, Path.GetFileName(sTargetCirFile) + ".zip"); File.Copy(srScanResults.sCirDataFile, sTargetCirFile,true); //zipUtils.zipFile(srScanResults.sCirDataFile, sZipFileName); //File.Move(srScanResults.sCirDataFile, sTargetCirFile); } }*/ public static void SaveAssessmentFiles(O2scanresults srScanResults, String sScanResultsFolder) { if (File.Exists(srScanResults.sAssessmentFile_ScanWithExistingRules)) //Files.MoveFile(srScanResults.sAssessmentFile_ScanWithExistingRules, Path.Combine(sScanResultsFolder, Path.GetFileNameWithoutExtension(srScanResults.sApplicationToScan) + "_ScanWithExistingRules.ozasmt")); Files.MoveFile(srScanResults.sAssessmentFile_ScanWithExistingRules, Path.Combine(sScanResultsFolder, "ScanWithExistingRules.ozasmt")); if (File.Exists(srScanResults.sAssessmentFile_CallBacksOnControlFlowGraphs_And_ExternalSinks)) //Files.MoveFile(srScanResults.sAssessmentFile_CallBacksOnControlFlowGraphs_And_ExternalSinks, Path.Combine(sScanResultsFolder, Path.GetFileNameWithoutExtension(srScanResults.sApplicationToScan) + "_CallBacksOnControlFlowGraphs_And_ExternalSinks.ozasmt")); Files.MoveFile(srScanResults.sAssessmentFile_CallBacksOnControlFlowGraphs_And_ExternalSinks, Path.Combine(sScanResultsFolder, "CallBacksOnControlFlowGraphs_And_ExternalSinks.ozasmt")); if (File.Exists(srScanResults.sAssessmentFile_CallBacksOnEdges_And_ExternalSinks)) //Files.MoveFile(srScanResults.sAssessmentFile_CallBacksOnEdges_And_ExternalSinks, Path.Combine(sScanResultsFolder, Path.GetFileNameWithoutExtension(srScanResults.sApplicationToScan) + "_CallBacksOnEdges_And_ExternalSinks.ozasmt")); Files.MoveFile(srScanResults.sAssessmentFile_CallBacksOnEdges_And_ExternalSinks, Path.Combine(sScanResultsFolder, "CallBacksOnEdges_And_ExternalSinks.ozasmt")); if (File.Exists(srScanResults.sAssessmentFile_SourcesAndSinks)) //Files.MoveFile(srScanResults.sAssessmentFile_SourcesAndSinks, Path.Combine(sScanResultsFolder, Path.GetFileNameWithoutExtension(srScanResults.sApplicationToScan) + "_SourcesAndSinks.ozasmt")); Files.MoveFile(srScanResults.sAssessmentFile_SourcesAndSinks, Path.Combine(sScanResultsFolder, "SourcesAndSinks.ozasmt")); }