Устранены пропущенные уязвимости в некоторых проходах
v++
This commit is contained in:
2025-02-22 16:10:21 +03:00
parent f7973e0991
commit c83cfd9eff
9 changed files with 24 additions and 23 deletions

17
.idea/workspace.xml generated
View File

@@ -9,16 +9,13 @@
<list default="true" id="e42177c3-2328-4b27-8a01-35779b2beb99" name="Default Changelist" comment=""> <list default="true" id="e42177c3-2328-4b27-8a01-35779b2beb99" name="Default Changelist" comment="">
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/properties" beforeDir="false" afterPath="$PROJECT_DIR$/properties" afterDir="false" /> <change beforePath="$PROJECT_DIR$/properties" beforeDir="false" afterPath="$PROJECT_DIR$/properties" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/Common/Database/Objects/riDBObject.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/Database/Objects/riDBObject.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/Common/Database/Database.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/Database/Database.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/Common/Visual/DataSetControlForm.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/Visual/DataSetControlForm.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/_VisualDVM/Constants.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Constants.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/CreateTestFromDirectory.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/CreateTestFromDirectory.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/_VisualDVM/MainModule.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/MainModule.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/CreateTestFromProject.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/CreateTestFromProject.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/CheckAccount.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/CheckAccount.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/CreateTestsFromFiles.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/CreateTestsFromFiles.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/ReplaceTestsFromFiles.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/ReplaceTestsFromFiles.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/DetectSelectedTestsMinMaDim.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/DetectSelectedTestsMinMaDim.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/Testing/AbortTestingPackage.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/Testing/AbortTestingPackage.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/ReplaceTestProject.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/ReplaceTestProject.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/_VisualDVM/Visual/Windows/CallbackForm.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Visual/Windows/CallbackForm.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/Testing/SaveCurrentConfiguration.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/Testing/SaveCurrentConfiguration.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/Common/Group/GroupsDBTable.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/Common/Group/GroupsDBTable.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/Common/Group/UI/GroupsForm.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/Common/Group/UI/GroupsForm.java" afterDir="false" />
</list> </list>
<option name="SHOW_DIALOG" value="false" /> <option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" /> <option name="HIGHLIGHT_CONFLICTS" value="true" />

View File

@@ -1,9 +1,9 @@
{ {
"Email": "nataliku2@yandex.ru", "Email": "vmk-post@yandex.ru",
"Name": "Test", "Name": "M",
"ServerUserPassword": "mprit_2011", "ServerUserPassword": "mprit_2011",
"Workspace": "E:\\Tests", "Workspace": "E:\\Tests",
"ProjectsSearchDirectory": "E:\\Tests\\Downloads", "ProjectsSearchDirectory": "E:\\Tests\\Downloads\\236",
"VisualiserPath": "C:\\Users\\misha\\Downloads", "VisualiserPath": "C:\\Users\\misha\\Downloads",
"Sapfor_FPath": "E:\\_sapfor_x64\\Components\\Sapfor_F", "Sapfor_FPath": "E:\\_sapfor_x64\\Components\\Sapfor_F",
"Visualizer_2Path": "C:\\Users\\misha\\Documents", "Visualizer_2Path": "C:\\Users\\misha\\Documents",

View File

@@ -300,6 +300,14 @@ public abstract class Database {
} }
return log.isEmpty(); return log.isEmpty();
} }
public boolean canModifyCurrent(TextLog log, Class... tablesClasses) {
for (Class tableClass : tablesClasses) {
DBTable table = getTable(tableClass);
if (table.getUI() != null)
table.getUI().canModifyCurrent(log);
}
return log.isEmpty();
}
public abstract PassCode_ getSynchronizePassCode(); //если бд есть на сервере. public abstract PassCode_ getSynchronizePassCode(); //если бд есть на сервере.
//-- //--
public void ReplaceFileAndReconnect(File file_in) throws Exception{ public void ReplaceFileAndReconnect(File file_in) throws Exception{

View File

@@ -3,7 +3,7 @@ import Common.Utils.Vector_;
import java.util.Vector; import java.util.Vector;
public class Constants { public class Constants {
public static final int version = 1181; public static final int version = 1182;
public static final int planner_version = 10; public static final int planner_version = 10;
public static final int testingMaxKernels = 64; //вообще говоря, это параметр машины. public static final int testingMaxKernels = 64; //вообще говоря, это параметр машины.
//-- //--

View File

@@ -33,7 +33,8 @@ public class MainModule extends MainModule_<GlobalDatabase, MainUI> {
PassCode.StartTestingServer, PassCode.StartTestingServer,
PassCode.PublishTestingServer, PassCode.PublishTestingServer,
PassCode.CreateTestsGroupFromSelectedVersions, PassCode.CreateTestsGroupFromSelectedVersions,
PassCode.RefreshDVMPackageResults PassCode.RefreshDVMPackageResults,
PassCode.ConvertCorrectnessTests
); );
public MainModule() throws Exception { public MainModule() throws Exception {
super(GlobalDatabase.class, MainUI.class); super(GlobalDatabase.class, MainUI.class);

View File

@@ -40,14 +40,11 @@ public class CheckAccount extends ComponentsServerPass {
if (keyFile.exists()) { if (keyFile.exists()) {
//ключ есть. проверить его актуальность. //ключ есть. проверить его актуальность.
String key = FileUtils.readFileToString(keyFile); String key = FileUtils.readFileToString(keyFile);
System.out.println("ключ найден.");
if (SendRequest(ServerCode.GetUserAccountByKey,key)){ if (SendRequest(ServerCode.GetUserAccountByKey,key)){
if (request.server_response.object!=null){ if (request.server_response.object!=null){
//ключ актуальный. //ключ актуальный.
System.out.println("ключ совпал");
Global.mainModule.setAccount((UserAccount) request.server_response.object); Global.mainModule.setAccount((UserAccount) request.server_response.object);
}else { }else {
System.out.println("ключ не совпал!");
//ключ неактуальный. регистрируемся по новой. //ключ неактуальный. регистрируемся по новой.
UI.Error("Текущий ключ неверен. Он будет удален."); UI.Error("Текущий ключ неверен. Он будет удален.");
Utils_.forceDeleteWithCheck(keyFile); Utils_.forceDeleteWithCheck(keyFile);
@@ -55,7 +52,6 @@ public class CheckAccount extends ComponentsServerPass {
} }
} }
}else { }else {
System.out.println("ключ не найден!");
confirmEmail(); confirmEmail();
} }
return !Global.mainModule.getAccount().role.equals(AccountRole.Undefined); return !Global.mainModule.getAccount().role.equals(AccountRole.Undefined);

View File

@@ -36,10 +36,10 @@ public class ReplaceTestsFromFiles extends TestingServerPass<Vector<Test>> {
//--->>> //--->>>
Utils.RestoreSelectedDirectory(fileChooser); Utils.RestoreSelectedDirectory(fileChooser);
Vector<File> files = fileChooser.ShowMultiDialog(); Vector<File> files = fileChooser.ShowMultiDialog();
//--------------------------------------------------------------- //----------------ROLE is-----------------------------------------------
//-- //--
File dir = fileChooser.getCurrentDirectory(); File dir = fileChooser.getCurrentDirectory();
Global.mainModule.getPass(PassCode.UpdateProperty).Do("ProjectsSearchDirectory", dir); Global.mainModule.getPass(PassCode.UpdateProperty).Do("ProjectsSearchDirectory", dir.getAbsolutePath());
//--------------- //---------------
if (dir.getName().equals(Constants.data)) { if (dir.getName().equals(Constants.data)) {
Log.Writeln_(Utils_.Brackets(dir) + "\nявляется служебной папкой визуализатора!"); Log.Writeln_(Utils_.Brackets(dir) + "\nявляется служебной папкой визуализатора!");

View File

@@ -14,7 +14,7 @@ public abstract class AbortTestingPackage extends TestingServerPass<TestingPacka
@Override @Override
protected boolean canStart(Object... args) throws Exception { protected boolean canStart(Object... args) throws Exception {
packageToKill = null; packageToKill = null;
if (getServer().db.CheckCurrent(Log, currentClass())) { if (getServer().db.canModifyCurrent(Log, currentClass())) {
target = (TestingPackage) getServer().db.getTable(currentClass()).getUI().getCurrent(); target = (TestingPackage) getServer().db.getTable(currentClass()).getUI().getCurrent();
switch (target.state) { switch (target.state) {
case Done: case Done:

View File

@@ -407,7 +407,6 @@ public class CallbackForm implements FormWithSplitters, CallbackWindow {
lAccountName.setText(Utils_.Brackets(Global.mainModule.getAccount().name)); lAccountName.setText(Utils_.Brackets(Global.mainModule.getAccount().name));
lAccountMail.setText(Utils_.Brackets(Global.mainModule.getAccount().email)); lAccountMail.setText(Utils_.Brackets(Global.mainModule.getAccount().email));
lAccountRole.setText(Utils_.Brackets(Global.mainModule.getAccount().role.getDescription())); lAccountRole.setText(Utils_.Brackets(Global.mainModule.getAccount().role.getDescription()));
System.out.println("ROLE IS "+Global.mainModule.getAccount().role.getDescription());
switch (Global.mainModule.getAccount().role) { switch (Global.mainModule.getAccount().role) {
case Undefined: case Undefined:
setUdefinedRights(); setUdefinedRights();