mirror of
https://github.com/SELinuxProject/setools
synced 2025-03-25 04:26:28 +00:00
apol: Tabs raise exceptions if trying to save while there are errors.
Closes #97 Closes #98
This commit is contained in:
parent
5fd724b300
commit
ddca4536ee
@ -28,6 +28,7 @@ from ..logtosignal import LogHandlerToSignal
|
||||
from ..models import SEToolsListModel, invert_list_selection
|
||||
from ..boolmodel import BooleanTableModel, boolean_detail
|
||||
from .analysistab import AnalysisTab
|
||||
from .exception import TabFieldError
|
||||
from .queryupdater import QueryResultsUpdater
|
||||
from .workspace import load_checkboxes, load_lineedits, load_textedits, \
|
||||
save_checkboxes, save_lineedits, save_textedits
|
||||
@ -139,6 +140,10 @@ class BoolQueryTab(AnalysisTab):
|
||||
#
|
||||
def save(self):
|
||||
"""Return a dictionary of settings."""
|
||||
if self.errors:
|
||||
raise TabFieldError("Field(s) are in error: {0}".
|
||||
format(" ".join(o.objectName() for o in self.errors)))
|
||||
|
||||
settings = {}
|
||||
save_checkboxes(self, settings, ["criteria_expander", "notes_expander",
|
||||
"default_any", "default_true", "default_false",
|
||||
|
@ -28,6 +28,7 @@ from ..logtosignal import LogHandlerToSignal
|
||||
from ..models import SEToolsListModel, invert_list_selection
|
||||
from ..boundsmodel import BoundsTableModel
|
||||
from .analysistab import AnalysisTab
|
||||
from .exception import TabFieldError
|
||||
from .queryupdater import QueryResultsUpdater
|
||||
from .workspace import load_checkboxes, load_lineedits, load_textedits, \
|
||||
save_checkboxes, save_lineedits, save_textedits
|
||||
@ -144,6 +145,10 @@ class BoundsQueryTab(AnalysisTab):
|
||||
#
|
||||
def save(self):
|
||||
"""Return a dictionary of settings."""
|
||||
if self.errors:
|
||||
raise TabFieldError("Field(s) are in error: {0}".
|
||||
format(" ".join(o.objectName() for o in self.errors)))
|
||||
|
||||
settings = {}
|
||||
save_checkboxes(self, settings, ["criteria_expander", "notes_expander",
|
||||
"typebounds",
|
||||
|
@ -28,6 +28,7 @@ from ..logtosignal import LogHandlerToSignal
|
||||
from ..models import SEToolsListModel, invert_list_selection
|
||||
from ..mlsmodel import MLSComponentTableModel, category_detail
|
||||
from .analysistab import AnalysisTab
|
||||
from .exception import TabFieldError
|
||||
from .queryupdater import QueryResultsUpdater
|
||||
from .workspace import load_checkboxes, load_lineedits, load_textedits, \
|
||||
save_checkboxes, save_lineedits, save_textedits
|
||||
@ -139,6 +140,10 @@ class CategoryQueryTab(AnalysisTab):
|
||||
#
|
||||
def save(self):
|
||||
"""Return a dictionary of settings."""
|
||||
if self.errors:
|
||||
raise TabFieldError("Field(s) are in error: {0}".
|
||||
format(" ".join(o.objectName() for o in self.errors)))
|
||||
|
||||
settings = {}
|
||||
save_checkboxes(self, settings, ["criteria_expander", "notes_expander", "name_regex"])
|
||||
save_lineedits(self, settings, ["name"])
|
||||
|
@ -28,6 +28,7 @@ from ..logtosignal import LogHandlerToSignal
|
||||
from ..models import SEToolsListModel, invert_list_selection
|
||||
from ..commonmodel import CommonTableModel, common_detail
|
||||
from .analysistab import AnalysisTab
|
||||
from .exception import TabFieldError
|
||||
from .queryupdater import QueryResultsUpdater
|
||||
from .workspace import load_checkboxes, load_lineedits, load_listviews, load_textedits, \
|
||||
save_checkboxes, save_lineedits, save_listviews, save_textedits
|
||||
@ -163,6 +164,10 @@ class CommonQueryTab(AnalysisTab):
|
||||
#
|
||||
def save(self):
|
||||
"""Return a dictionary of settings."""
|
||||
if self.errors:
|
||||
raise TabFieldError("Field(s) are in error: {0}".
|
||||
format(" ".join(o.objectName() for o in self.errors)))
|
||||
|
||||
settings = {}
|
||||
save_checkboxes(self, settings, ["criteria_expander", "notes_expander", "name_regex",
|
||||
"perms_equal"])
|
||||
|
@ -28,6 +28,7 @@ from ..logtosignal import LogHandlerToSignal
|
||||
from ..models import PermListModel, SEToolsListModel, invert_list_selection
|
||||
from ..constraintmodel import ConstraintTableModel
|
||||
from .analysistab import AnalysisTab
|
||||
from .exception import TabFieldError
|
||||
from .queryupdater import QueryResultsUpdater
|
||||
from .workspace import load_checkboxes, load_lineedits, load_listviews, load_textedits, \
|
||||
save_checkboxes, save_lineedits, save_listviews, save_textedits
|
||||
@ -264,6 +265,10 @@ class ConstraintQueryTab(AnalysisTab):
|
||||
#
|
||||
def save(self):
|
||||
"""Return a dictionary of settings."""
|
||||
if self.errors:
|
||||
raise TabFieldError("Field(s) are in error: {0}".
|
||||
format(" ".join(o.objectName() for o in self.errors)))
|
||||
|
||||
settings = {}
|
||||
save_checkboxes(self, settings, ["criteria_expander", "notes_expander", "constrain",
|
||||
"mlsconstrain", "validatetrans", "mlsvalidatetrans",
|
||||
|
@ -28,6 +28,7 @@ from setools import DomainTransitionAnalysis
|
||||
from ..logtosignal import LogHandlerToSignal
|
||||
from .analysistab import AnalysisTab
|
||||
from .excludetypes import ExcludeTypes
|
||||
from .exception import TabFieldError
|
||||
from .workspace import load_checkboxes, load_spinboxes, load_lineedits, load_textedits, \
|
||||
save_checkboxes, save_spinboxes, save_lineedits, save_textedits
|
||||
|
||||
@ -202,6 +203,10 @@ class DomainTransitionAnalysisTab(AnalysisTab):
|
||||
#
|
||||
def save(self):
|
||||
"""Return a dictionary of settings."""
|
||||
if self.errors:
|
||||
raise TabFieldError("Field(s) are in error: {0}".
|
||||
format(" ".join(o.objectName() for o in self.errors)))
|
||||
|
||||
settings = {}
|
||||
save_checkboxes(self, settings, ["criteria_expander", "notes_expander", "all_paths",
|
||||
"all_shortest_paths", "flows_in", "flows_out", "reverse"])
|
||||
|
@ -27,6 +27,7 @@ from setools import FSUseQuery
|
||||
from ..logtosignal import LogHandlerToSignal
|
||||
from ..fsusemodel import FSUseTableModel
|
||||
from .analysistab import AnalysisTab
|
||||
from .exception import TabFieldError
|
||||
from .queryupdater import QueryResultsUpdater
|
||||
from .workspace import load_checkboxes, load_lineedits, load_textedits, \
|
||||
save_checkboxes, save_lineedits, save_textedits
|
||||
@ -257,6 +258,10 @@ class FSUseQueryTab(AnalysisTab):
|
||||
#
|
||||
def save(self):
|
||||
"""Return a dictionary of settings."""
|
||||
if self.errors:
|
||||
raise TabFieldError("Field(s) are in error: {0}".
|
||||
format(" ".join(o.objectName() for o in self.errors)))
|
||||
|
||||
settings = {}
|
||||
save_checkboxes(self, settings, ["criteria_expander", "notes_expander",
|
||||
"fs_regex", "fs_use_xattr", "fs_use_trans", "fs_use_task",
|
||||
|
@ -27,6 +27,7 @@ from setools import GenfsconQuery
|
||||
from ..logtosignal import LogHandlerToSignal
|
||||
from ..genfsconmodel import GenfsconTableModel
|
||||
from .analysistab import AnalysisTab
|
||||
from .exception import TabFieldError
|
||||
from .queryupdater import QueryResultsUpdater
|
||||
from .workspace import load_checkboxes, load_lineedits, load_textedits, \
|
||||
save_checkboxes, save_lineedits, save_textedits
|
||||
@ -264,6 +265,10 @@ class GenfsconQueryTab(AnalysisTab):
|
||||
#
|
||||
def save(self):
|
||||
"""Return a dictionary of settings."""
|
||||
if self.errors:
|
||||
raise TabFieldError("Field(s) are in error: {0}".
|
||||
format(" ".join(o.objectName() for o in self.errors)))
|
||||
|
||||
settings = {}
|
||||
save_checkboxes(self, settings, ["criteria_expander", "notes_expander",
|
||||
"fs_regex", "path_regex",
|
||||
|
@ -30,6 +30,7 @@ from setools.exception import UnmappedClass, UnmappedPermission
|
||||
|
||||
from ..logtosignal import LogHandlerToSignal
|
||||
from .analysistab import AnalysisTab
|
||||
from .exception import TabFieldError
|
||||
from .excludetypes import ExcludeTypes
|
||||
from .permmapedit import PermissionMapEditor
|
||||
from .workspace import load_checkboxes, load_spinboxes, load_lineedits, load_textedits, \
|
||||
@ -229,6 +230,10 @@ class InfoFlowAnalysisTab(AnalysisTab):
|
||||
#
|
||||
def save(self):
|
||||
"""Return a dictionary of settings."""
|
||||
if self.errors:
|
||||
raise TabFieldError("Field(s) are in error: {0}".
|
||||
format(" ".join(o.objectName() for o in self.errors)))
|
||||
|
||||
settings = {}
|
||||
save_checkboxes(self, settings, ["criteria_expander", "notes_expander", "all_paths",
|
||||
"all_shortest_paths", "flows_in", "flows_out"])
|
||||
|
@ -27,6 +27,7 @@ from setools import InitialSIDQuery
|
||||
from ..logtosignal import LogHandlerToSignal
|
||||
from ..initsidmodel import InitialSIDTableModel
|
||||
from .analysistab import AnalysisTab
|
||||
from .exception import TabFieldError
|
||||
from .queryupdater import QueryResultsUpdater
|
||||
from .workspace import load_checkboxes, load_lineedits, load_textedits, \
|
||||
save_checkboxes, save_lineedits, save_textedits
|
||||
@ -241,6 +242,10 @@ class InitialSIDQueryTab(AnalysisTab):
|
||||
#
|
||||
def save(self):
|
||||
"""Return a dictionary of settings."""
|
||||
if self.errors:
|
||||
raise TabFieldError("Field(s) are in error: {0}".
|
||||
format(" ".join(o.objectName() for o in self.errors)))
|
||||
|
||||
settings = {}
|
||||
save_checkboxes(self, settings, ["criteria_expander", "notes_expander", "name_regex",
|
||||
"user_regex", "role_regex", "type_regex", "range_exact",
|
||||
|
@ -28,6 +28,7 @@ from ..logtosignal import LogHandlerToSignal
|
||||
from ..models import SEToolsListModel, invert_list_selection
|
||||
from ..mlsrulemodel import MLSRuleTableModel
|
||||
from .analysistab import AnalysisTab
|
||||
from .exception import TabFieldError
|
||||
from .queryupdater import QueryResultsUpdater
|
||||
from .workspace import load_checkboxes, load_lineedits, load_listviews, load_textedits, \
|
||||
save_checkboxes, save_lineedits, save_listviews, save_textedits
|
||||
@ -212,6 +213,10 @@ class MLSRuleQueryTab(AnalysisTab):
|
||||
#
|
||||
def save(self):
|
||||
"""Return a dictionary of settings."""
|
||||
if self.errors:
|
||||
raise TabFieldError("Field(s) are in error: {0}".
|
||||
format(" ".join(o.objectName() for o in self.errors)))
|
||||
|
||||
settings = {}
|
||||
save_checkboxes(self, settings, ["criteria_expander", "notes_expander",
|
||||
"range_transition",
|
||||
|
@ -27,6 +27,7 @@ from setools import NetifconQuery
|
||||
from ..logtosignal import LogHandlerToSignal
|
||||
from ..netifconmodel import NetifconTableModel
|
||||
from .analysistab import AnalysisTab
|
||||
from .exception import TabFieldError
|
||||
from .queryupdater import QueryResultsUpdater
|
||||
from .workspace import load_checkboxes, load_lineedits, load_textedits, \
|
||||
save_checkboxes, save_lineedits, save_textedits
|
||||
@ -241,6 +242,10 @@ class NetifconQueryTab(AnalysisTab):
|
||||
#
|
||||
def save(self):
|
||||
"""Return a dictionary of settings."""
|
||||
if self.errors:
|
||||
raise TabFieldError("Field(s) are in error: {0}".
|
||||
format(" ".join(o.objectName() for o in self.errors)))
|
||||
|
||||
settings = {}
|
||||
save_checkboxes(self, settings, ["criteria_expander", "notes_expander", "name_regex",
|
||||
"user_regex", "role_regex", "type_regex", "range_exact",
|
||||
|
@ -28,6 +28,7 @@ from setools import NodeconQuery
|
||||
from ..logtosignal import LogHandlerToSignal
|
||||
from ..nodeconmodel import NodeconTableModel
|
||||
from .analysistab import AnalysisTab
|
||||
from .exception import TabFieldError
|
||||
from .queryupdater import QueryResultsUpdater
|
||||
from .workspace import load_checkboxes, load_lineedits, load_textedits, load_comboboxes, \
|
||||
save_checkboxes, save_lineedits, save_textedits, save_comboboxes
|
||||
@ -244,6 +245,10 @@ class NodeconQueryTab(AnalysisTab):
|
||||
#
|
||||
def save(self):
|
||||
"""Return a dictionary of settings."""
|
||||
if self.errors:
|
||||
raise TabFieldError("Field(s) are in error: {0}".
|
||||
format(" ".join(o.objectName() for o in self.errors)))
|
||||
|
||||
settings = {}
|
||||
save_checkboxes(self, settings, ["criteria_expander", "notes_expander",
|
||||
"network_exact", "network_overlap",
|
||||
|
@ -28,6 +28,7 @@ from ..logtosignal import LogHandlerToSignal
|
||||
from ..models import PermListModel, SEToolsListModel, invert_list_selection
|
||||
from ..objclassmodel import ObjClassTableModel, class_detail
|
||||
from .analysistab import AnalysisTab
|
||||
from .exception import TabFieldError
|
||||
from .queryupdater import QueryResultsUpdater
|
||||
from .workspace import load_checkboxes, load_lineedits, load_listviews, load_textedits, \
|
||||
save_checkboxes, save_lineedits, save_listviews, save_textedits
|
||||
@ -174,6 +175,10 @@ class ObjClassQueryTab(AnalysisTab):
|
||||
#
|
||||
def save(self):
|
||||
"""Return a dictionary of settings."""
|
||||
if self.errors:
|
||||
raise TabFieldError("Field(s) are in error: {0}".
|
||||
format(" ".join(o.objectName() for o in self.errors)))
|
||||
|
||||
settings = {}
|
||||
save_checkboxes(self, settings, ["criteria_expander", "notes_expander", "name_regex",
|
||||
"perms_equal"])
|
||||
|
@ -27,6 +27,7 @@ from setools import PortconQuery
|
||||
from ..logtosignal import LogHandlerToSignal
|
||||
from ..portconmodel import PortconTableModel
|
||||
from .analysistab import AnalysisTab
|
||||
from .exception import TabFieldError
|
||||
from .queryupdater import QueryResultsUpdater
|
||||
from .workspace import load_checkboxes, load_lineedits, load_textedits, load_comboboxes, \
|
||||
save_checkboxes, save_lineedits, save_textedits, save_comboboxes
|
||||
@ -248,6 +249,10 @@ class PortconQueryTab(AnalysisTab):
|
||||
#
|
||||
def save(self):
|
||||
"""Return a dictionary of settings."""
|
||||
if self.errors:
|
||||
raise TabFieldError("Field(s) are in error: {0}".
|
||||
format(" ".join(o.objectName() for o in self.errors)))
|
||||
|
||||
settings = {}
|
||||
save_checkboxes(self, settings, ["criteria_expander", "notes_expander", "ports_exact",
|
||||
"ports_overlap", "ports_subset", "ports_superset",
|
||||
|
@ -28,6 +28,7 @@ from ..logtosignal import LogHandlerToSignal
|
||||
from ..models import SEToolsListModel, invert_list_selection
|
||||
from ..rbacrulemodel import RBACRuleTableModel
|
||||
from .analysistab import AnalysisTab
|
||||
from .exception import TabFieldError
|
||||
from .queryupdater import QueryResultsUpdater
|
||||
from .workspace import load_checkboxes, load_lineedits, load_listviews, load_textedits, \
|
||||
save_checkboxes, save_lineedits, save_listviews, save_textedits
|
||||
@ -233,6 +234,10 @@ class RBACRuleQueryTab(AnalysisTab):
|
||||
#
|
||||
def save(self):
|
||||
"""Return a dictionary of settings."""
|
||||
if self.errors:
|
||||
raise TabFieldError("Field(s) are in error: {0}".
|
||||
format(" ".join(o.objectName() for o in self.errors)))
|
||||
|
||||
settings = {}
|
||||
save_checkboxes(self, settings, ["criteria_expander", "notes_expander",
|
||||
"allow", "role_transition",
|
||||
|
@ -28,6 +28,7 @@ from ..logtosignal import LogHandlerToSignal
|
||||
from ..models import SEToolsListModel, invert_list_selection
|
||||
from ..rolemodel import RoleTableModel, role_detail
|
||||
from .analysistab import AnalysisTab
|
||||
from .exception import TabFieldError
|
||||
from .queryupdater import QueryResultsUpdater
|
||||
from .workspace import load_checkboxes, load_lineedits, load_listviews, load_textedits, \
|
||||
save_checkboxes, save_lineedits, save_listviews, save_textedits
|
||||
@ -160,6 +161,10 @@ class RoleQueryTab(AnalysisTab):
|
||||
def save(self):
|
||||
"""Return a dictionary of settings."""
|
||||
settings = {}
|
||||
if self.errors:
|
||||
raise TabFieldError("Field(s) are in error: {0}".
|
||||
format(" ".join(o.objectName() for o in self.errors)))
|
||||
|
||||
save_checkboxes(self, settings, ["criteria_expander", "notes_expander", "name_regex",
|
||||
"types_any", "types_equal"])
|
||||
save_lineedits(self, settings, ["name"])
|
||||
|
@ -28,6 +28,7 @@ from ..logtosignal import LogHandlerToSignal
|
||||
from ..models import SEToolsListModel, invert_list_selection
|
||||
from ..mlsmodel import MLSComponentTableModel, sensitivity_detail
|
||||
from .analysistab import AnalysisTab
|
||||
from .exception import TabFieldError
|
||||
from .queryupdater import QueryResultsUpdater
|
||||
from .workspace import load_checkboxes, load_lineedits, load_textedits, \
|
||||
save_checkboxes, save_lineedits, save_textedits
|
||||
@ -139,6 +140,10 @@ class SensitivityQueryTab(AnalysisTab):
|
||||
#
|
||||
def save(self):
|
||||
"""Return a dictionary of settings."""
|
||||
if self.errors:
|
||||
raise TabFieldError("Field(s) are in error: {0}".
|
||||
format(" ".join(o.objectName() for o in self.errors)))
|
||||
|
||||
settings = {}
|
||||
save_checkboxes(self, settings, ["criteria_expander", "notes_expander", "name_regex"])
|
||||
save_lineedits(self, settings, ["name"])
|
||||
|
@ -28,6 +28,7 @@ from ..logtosignal import LogHandlerToSignal
|
||||
from ..models import PermListModel, SEToolsListModel, invert_list_selection
|
||||
from ..terulemodel import TERuleTableModel
|
||||
from .analysistab import AnalysisTab
|
||||
from .exception import TabFieldError
|
||||
from .queryupdater import QueryResultsUpdater
|
||||
from .workspace import load_checkboxes, load_lineedits, load_listviews, load_textedits, \
|
||||
save_checkboxes, save_lineedits, save_listviews, save_textedits
|
||||
@ -327,6 +328,10 @@ class TERuleQueryTab(AnalysisTab):
|
||||
#
|
||||
def save(self):
|
||||
"""Return a dictionary of settings."""
|
||||
if self.errors:
|
||||
raise TabFieldError("Field(s) are in error: {0}".
|
||||
format(" ".join(o.objectName() for o in self.errors)))
|
||||
|
||||
settings = {}
|
||||
save_checkboxes(self, settings, ["criteria_expander", "notes_expander",
|
||||
"allow", "allowxperm",
|
||||
|
@ -28,6 +28,7 @@ from ..logtosignal import LogHandlerToSignal
|
||||
from ..models import SEToolsListModel, invert_list_selection
|
||||
from ..typeattrmodel import TypeAttributeTableModel, typeattr_detail
|
||||
from .analysistab import AnalysisTab
|
||||
from .exception import TabFieldError
|
||||
from .queryupdater import QueryResultsUpdater
|
||||
from .workspace import load_checkboxes, load_lineedits, load_listviews, load_textedits, \
|
||||
save_checkboxes, save_lineedits, save_listviews, save_textedits
|
||||
@ -159,6 +160,10 @@ class TypeAttributeQueryTab(AnalysisTab):
|
||||
#
|
||||
def save(self):
|
||||
"""Return a dictionary of settings."""
|
||||
if self.errors:
|
||||
raise TabFieldError("Field(s) are in error: {0}".
|
||||
format(" ".join(o.objectName() for o in self.errors)))
|
||||
|
||||
settings = {}
|
||||
save_checkboxes(self, settings, ["criteria_expander", "notes_expander", "name_regex",
|
||||
"types_any", "types_equal"])
|
||||
|
@ -28,6 +28,7 @@ from ..logtosignal import LogHandlerToSignal
|
||||
from ..models import SEToolsListModel, invert_list_selection
|
||||
from ..typemodel import TypeTableModel, type_detail
|
||||
from .analysistab import AnalysisTab
|
||||
from .exception import TabFieldError
|
||||
from .queryupdater import QueryResultsUpdater
|
||||
from .workspace import load_checkboxes, load_lineedits, load_listviews, load_textedits, \
|
||||
save_checkboxes, save_lineedits, save_listviews, save_textedits
|
||||
@ -159,6 +160,10 @@ class TypeQueryTab(AnalysisTab):
|
||||
#
|
||||
def save(self):
|
||||
"""Return a dictionary of settings."""
|
||||
if self.errors:
|
||||
raise TabFieldError("Field(s) are in error: {0}".
|
||||
format(" ".join(o.objectName() for o in self.errors)))
|
||||
|
||||
settings = {}
|
||||
save_checkboxes(self, settings, ["criteria_expander", "notes_expander", "name_regex",
|
||||
"attrs_any", "attrs_equal", "permissive"])
|
||||
|
@ -28,6 +28,7 @@ from ..logtosignal import LogHandlerToSignal
|
||||
from ..models import SEToolsListModel, invert_list_selection
|
||||
from ..usermodel import UserTableModel, user_detail
|
||||
from .analysistab import AnalysisTab
|
||||
from .exception import TabFieldError
|
||||
from .queryupdater import QueryResultsUpdater
|
||||
from .workspace import load_checkboxes, load_lineedits, load_listviews, load_textedits, \
|
||||
save_checkboxes, save_lineedits, save_listviews, save_textedits
|
||||
@ -208,6 +209,10 @@ class UserQueryTab(AnalysisTab):
|
||||
#
|
||||
def save(self):
|
||||
"""Return a dictionary of settings."""
|
||||
if self.errors:
|
||||
raise TabFieldError("Field(s) are in error: {0}".
|
||||
format(" ".join(o.objectName() for o in self.errors)))
|
||||
|
||||
settings = {}
|
||||
save_checkboxes(self, settings, ["criteria_expander", "notes_expander", "name_regex",
|
||||
"roles_any", "roles_equal", "level_exact", "level_dom",
|
||||
|
Loading…
Reference in New Issue
Block a user