7a283c335f
- Revised sediff method for TE rules. This drastically reduced memory and run time. - Added infiniband context support to seinfo, sediff, and apol. - Added apol configuration for location of Qt assistant. - Fixed sediff issue where properties header would display when not requested. - Fixed sediff issue with type_transition file name comparison. - Fixed permission map socket sendto information flow direction. - Added methods to TypeAttribute class to make it a complete Python collection. - Genfscon now will look up classes rather than using fixed values which were dropped from libsepol.
140 lines
4.6 KiB
Diff
140 lines
4.6 KiB
Diff
From 0575455a0abda5ee63c442433384268a959c4fbc Mon Sep 17 00:00:00 2001
|
|
From: Vit Mojzis <vmojzis@redhat.com>
|
|
Date: Fri, 26 Apr 2019 15:27:25 +0200
|
|
Subject: [PATCH] Do not export/use setools.InfoFlowAnalysis and
|
|
setools.DomainTransitionAnalysis
|
|
|
|
dta and infoflow modules require networkx which brings lot of dependencies.
|
|
These dependencies are not necessary for setools module itself as it's
|
|
used in policycoreutils.
|
|
|
|
Therefore it's better to use setools.infoflow.InfoFlowAnalysis and
|
|
setools.dta.DomainTransitionAnalysis and let the package containing
|
|
sedta and seinfoflow to require python3-networkx
|
|
---
|
|
sedta | 4 ++--
|
|
seinfoflow | 4 ++--
|
|
setools/__init__.py | 4 ----
|
|
setoolsgui/apol/dta.py | 2 +-
|
|
setoolsgui/apol/infoflow.py | 2 +-
|
|
tests/dta.py | 2 +-
|
|
tests/infoflow.py | 2 +-
|
|
7 files changed, 8 insertions(+), 12 deletions(-)
|
|
|
|
diff --git a/sedta b/sedta
|
|
index 60861ca630a5..41e38a237b42 100755
|
|
--- a/sedta
|
|
+++ b/sedta
|
|
@@ -22,7 +22,7 @@ import argparse
|
|
import logging
|
|
import signal
|
|
|
|
-import setools
|
|
+import setools.dta
|
|
|
|
|
|
def print_transition(trans):
|
|
@@ -114,7 +114,7 @@ else:
|
|
|
|
try:
|
|
p = setools.SELinuxPolicy(args.policy)
|
|
- g = setools.DomainTransitionAnalysis(p, reverse=args.reverse, exclude=args.exclude)
|
|
+ g = setools.dta.DomainTransitionAnalysis(p, reverse=args.reverse, exclude=args.exclude)
|
|
|
|
if args.shortest_path or args.all_paths:
|
|
if args.shortest_path:
|
|
diff --git a/seinfoflow b/seinfoflow
|
|
index f10c39de4d8e..fee749a83bb5 100755
|
|
--- a/seinfoflow
|
|
+++ b/seinfoflow
|
|
@@ -17,7 +17,7 @@
|
|
# along with SETools. If not, see <http://www.gnu.org/licenses/>.
|
|
#
|
|
|
|
-import setools
|
|
+import setools.infoflow
|
|
import argparse
|
|
import sys
|
|
import logging
|
|
@@ -101,7 +101,7 @@ elif args.booleans is not None:
|
|
try:
|
|
p = setools.SELinuxPolicy(args.policy)
|
|
m = setools.PermissionMap(args.map)
|
|
- g = setools.InfoFlowAnalysis(p, m, min_weight=args.min_weight, exclude=args.exclude,
|
|
+ g = setools.infoflow.InfoFlowAnalysis(p, m, min_weight=args.min_weight, exclude=args.exclude,
|
|
booleans=booleans)
|
|
|
|
if args.shortest_path or args.all_paths:
|
|
diff --git a/setools/__init__.py b/setools/__init__.py
|
|
index 26fa5aa34a19..b7e51c43c4bb 100644
|
|
--- a/setools/__init__.py
|
|
+++ b/setools/__init__.py
|
|
@@ -75,12 +75,8 @@ from .pcideviceconquery import PcideviceconQuery
|
|
from .devicetreeconquery import DevicetreeconQuery
|
|
|
|
# Information Flow Analysis
|
|
-from .infoflow import InfoFlowAnalysis
|
|
from .permmap import PermissionMap
|
|
|
|
-# Domain Transition Analysis
|
|
-from .dta import DomainTransitionAnalysis
|
|
-
|
|
# Policy difference
|
|
from .diff import PolicyDifference
|
|
|
|
diff --git a/setoolsgui/apol/dta.py b/setoolsgui/apol/dta.py
|
|
index 4608b9dbf34e..2cde44c142e9 100644
|
|
--- a/setoolsgui/apol/dta.py
|
|
+++ b/setoolsgui/apol/dta.py
|
|
@@ -23,7 +23,7 @@ from PyQt5.QtCore import pyqtSignal, Qt, QStringListModel, QThread
|
|
from PyQt5.QtGui import QPalette, QTextCursor
|
|
from PyQt5.QtWidgets import QCompleter, QHeaderView, QMessageBox, QProgressDialog, \
|
|
QTreeWidgetItem
|
|
-from setools import DomainTransitionAnalysis
|
|
+from setools.dta import DomainTransitionAnalysis
|
|
|
|
from ..logtosignal import LogHandlerToSignal
|
|
from .analysistab import AnalysisTab
|
|
diff --git a/setoolsgui/apol/infoflow.py b/setoolsgui/apol/infoflow.py
|
|
index 7bca299d23fc..7fee2778f35f 100644
|
|
--- a/setoolsgui/apol/infoflow.py
|
|
+++ b/setoolsgui/apol/infoflow.py
|
|
@@ -26,7 +26,7 @@ from PyQt5.QtCore import pyqtSignal, Qt, QStringListModel, QThread
|
|
from PyQt5.QtGui import QPalette, QTextCursor
|
|
from PyQt5.QtWidgets import QCompleter, QHeaderView, QMessageBox, QProgressDialog, \
|
|
QTreeWidgetItem
|
|
-from setools import InfoFlowAnalysis
|
|
+from setools.infoflow import InfoFlowAnalysis
|
|
from setools.exception import UnmappedClass, UnmappedPermission
|
|
|
|
from ..logtosignal import LogHandlerToSignal
|
|
diff --git a/tests/dta.py b/tests/dta.py
|
|
index a0cc9381469c..177e6fb0b961 100644
|
|
--- a/tests/dta.py
|
|
+++ b/tests/dta.py
|
|
@@ -18,7 +18,7 @@
|
|
import os
|
|
import unittest
|
|
|
|
-from setools import DomainTransitionAnalysis
|
|
+from setools.dta import DomainTransitionAnalysis
|
|
from setools import TERuletype as TERT
|
|
from setools.exception import InvalidType
|
|
from setools.policyrep import Type
|
|
diff --git a/tests/infoflow.py b/tests/infoflow.py
|
|
index aa0e44a7e4f8..fca2848aeca5 100644
|
|
--- a/tests/infoflow.py
|
|
+++ b/tests/infoflow.py
|
|
@@ -18,7 +18,7 @@
|
|
import os
|
|
import unittest
|
|
|
|
-from setools import InfoFlowAnalysis
|
|
+from setools.infoflow import InfoFlowAnalysis
|
|
from setools import TERuletype as TERT
|
|
from setools.exception import InvalidType
|
|
from setools.permmap import PermissionMap
|
|
--
|
|
2.26.0.rc2
|
|
|