Commit Graph

617 Commits

Author SHA1 Message Date
Chris PeBenito
a93682f5f7 Bump version for release. 2015-12-15 13:02:06 -05:00
Chris PeBenito
fe970680af RuleListModel: restore parent class for rule list models 2015-12-15 10:10:28 -05:00
Chris PeBenito
f89f875a62 ChooseAnalysis: Sort analysis options 2015-12-15 09:17:07 -05:00
Chris PeBenito
5e3da8f6bb rbacrulequery.ui: fix class 2015-12-15 08:55:47 -05:00
Chris PeBenito
cf7b0789ba apol: add MLS rule query 2015-12-15 08:51:14 -05:00
Chris PeBenito
6c702179c4 apol: add RBAC rule query
RuleResultModel: give up trying to have a parent class. Remove.
2015-12-15 08:04:01 -05:00
Chris PeBenito
cff5de89e6 apol: add domain transition analysis tab 2015-12-14 09:53:59 -05:00
Chris PeBenito
05c8cdd732 InfoFlowAnalsysTab: set raw to default result
Not yet resolved on how to do graphical representation yet.
2015-12-14 09:53:59 -05:00
Chris PeBenito
fd5151a4bd Merge pull request #58 from kamino/master
policyrep: sort categories using their index
2015-12-07 08:09:07 -05:00
Fernand Lone-Sang
9b3b230889 policyrep: sort categories using their index 2015-12-05 11:05:08 +01:00
Chris PeBenito
0ad3155ac0 Build C extension for lint tox target.
Fix pylint import issues on TravisCI.
2015-12-02 12:44:45 -05:00
Chris PeBenito
8ab5498ba7 Misc fixes for pylint 1.5. 2015-12-01 09:38:08 -05:00
Chris PeBenito
4b9111c2af FSUseQuery: add rule type descriptor
Add a corresponding validator funtion in policyrep.

Also addresses pylint 1.5 issues.
2015-12-01 09:30:30 -05:00
Chris PeBenito
a2cb67c811 Update .pylintrc for pylint 1.5. 2015-12-01 09:22:38 -05:00
Chris PeBenito
7a7d49d93f Display unknown permissions setting in general seinfo output. 2015-11-30 11:49:58 -05:00
Chris PeBenito
b38aa9af6f seinfo: clarify empty attribute expansion
Use "empty attribute" instead of "empty set".
2015-10-15 16:00:13 -04:00
Chris PeBenito
f3aaeb5ce5 SELinuxPolicy: use selinux_current_policy_path() for the running policy first 2015-10-14 16:21:56 -04:00
Chris PeBenito
d66467f3b3 MatchPermission: implement subset permission criteria
Useful for matches where a matching rule has all of the permission criteria
but may have more.

Closes #57
2015-10-04 11:03:41 -04:00
Chris PeBenito
a899206ab6 Implement UI for excluding types from an analysis/query.
Connect it up to InfoFlowAnalysisTab.
2015-09-02 15:35:32 -04:00
Chris PeBenito
56b2811aa9 InfoFlowAnalysis: remove unnecessary tuple analysis output.
*API break*

Return Edge objects instead, as it will also provide the edge's weight too.
Breaks the API only if callers expect something tuple-like that can be
unpacked into three items (Edge can be unpacked into two).
2015-09-02 15:17:37 -04:00
Chris PeBenito
2482fc5d10 apol: fix threading
The isInterruptionRequested flag on a QThread only resets after the thread
finishes.  The original implementation never had the thread finish until
the tab was closed, so if a user canceled an operation, each successive
time an analysis ran on that tab, it would immediately have a request
to interrupt.
2015-07-07 14:15:10 -04:00
Chris PeBenito
56d8053dc9 InfoFlowAnalysis: fix sometimes misleading log message 2015-07-07 14:01:00 -04:00
Chris PeBenito
afab62934e TERuleQueryTab: Make the QProgressDialog more informative.
Also more agressively check cancelation, so processing will end sooner.
Force repaints to try to ensure the dialog text is updated, as for large
results, the GUI becomes unresponsive when resizing the table.
2015-07-07 11:38:35 -04:00
Chris PeBenito
0e22483d82 DomainTransitionAnalysis/InfoFlowAnalysis: use NetworkX's info for stats 2015-07-02 10:23:36 -04:00
Chris PeBenito
c93fb0d175 InfoFlowAnalysisTab: connect min permission weight 2015-06-30 12:05:20 -04:00
Chris PeBenito
40bc6c9404 InfoFlowTab ResultsUpdater: missed flows into target type 2015-06-30 11:57:22 -04:00
Chris PeBenito
ee8a6a94c4 TERuleQueryTab ResultsUpdater: fix counter to use enumerate() 2015-06-30 11:19:08 -04:00
Chris PeBenito
c8e168cd3e TERuleQueryTab ResultsUpdater: yield every 10 rules.
Give the main thread a chance to catch up if there happens to only be
a single CPU core available.
2015-06-30 11:09:50 -04:00
Chris PeBenito
e51410191b terulequery.ui: fix initial results tab 2015-06-30 11:07:58 -04:00
Chris PeBenito
d8f69d912f InfoFlowAnalysisTab: initial implementation
Does not yet include graphical results.
2015-06-30 11:06:59 -04:00
Chris PeBenito
3cc8d49365 Shrink GUI layout margins and spacing. 2015-06-30 09:15:52 -04:00
Chris PeBenito
9b28cbe3c7 setup.py: fix apol icons installation. 2015-06-26 14:14:01 -04:00
Chris PeBenito
6cbce7a503 TERuleQueryTab: add warning for overly broad queries.
Allow a way out if no criteria is set.
2015-06-26 09:02:37 -04:00
Chris PeBenito
9ef218abea TERuleQueryTab: add threading and "busy" dialog 2015-06-26 09:02:01 -04:00
Chris PeBenito
0caa0de8a4 ChooseAnalysis: only display implemented analyses as options.
Make it clear for early users of the tool that only some analyses are
implemented in the GUI so far.
2015-06-24 14:24:39 -04:00
Chris PeBenito
80e47d7bf6 TERuleQueryTab: implement invert class/perms functions 2015-06-23 09:59:38 -04:00
Chris PeBenito
7a5850e423 terulequery.ui: fix tab stops 2015-06-17 09:45:40 -04:00
Chris PeBenito
0ebdaa6304 rulemodels: cleanup imports 2015-06-17 08:46:05 -04:00
Chris PeBenito
25168b11ff TERuleQueryTab: the parent is not the tab
The parent is a top-level widget (from the tab's perspective) which has
no parent.
2015-06-17 08:40:35 -04:00
Chris PeBenito
124cdd32df TERuleQueryTab: change result table column to resize only once
Only resize columns to content once, when results are generated.  This will
generally provide a reasonable column width, while still allowing the user
to resize the columns, such as when the permission list is very long.
2015-06-17 08:37:58 -04:00
Chris PeBenito
72530ff531 ApolMainWindow: Implement renamable tabs.
Tab renaming methods:
* double click the tab
* context menu on tab bar

Also:
* change initial tab name to include a number based on the total number
of tabs that have been opened.
* add tool tip to tab of the analysis type.
* add explicit close tab function to ensure analysis widgets are deleted.
2015-06-16 16:02:11 -04:00
Chris PeBenito
be92a0a11e qpol.i: include filename info on policy file opening errors
Changes errors from this:

$ ./seinfo eggs
[Errno 2] No such file or directory

to this:

$ ./seinfo eggs
[Errno 2] No such file or directory: 'eggs'
2015-06-15 15:11:12 -04:00
Chris PeBenito
f3617938a7 Change loading retry to work on Python 2 consistently
In Python 2, ENOENT was an IOError exception.  In Python 3, IOError was
merged into OSError.
2015-06-15 14:14:26 -04:00
Chris PeBenito
0c3b238498 Add patch for using libsepol-2.3.
This is not officially supported.
2015-06-15 10:33:10 -04:00
Chris PeBenito
febc2af594 setup.py: locate libsepol.a
Use distutils' features to find libsepol.a.  Also sensitive to SEPOL env
variable for specifying the full path to libsepol.a.
2015-06-15 10:31:12 -04:00
Chris PeBenito
c271d94c5d policyrep: explicit str conversion for string parameters for SWIG
Qt always returns unicode text, which causes problems for Python 2.
2015-06-15 09:31:46 -04:00
Chris PeBenito
ccf2646963 TERuleQueryTab: connect ruletype clear and "select all" buttons 2015-06-10 10:57:05 -04:00
Chris PeBenito
0f4b70ded4 TERuleQueryTab: change item list selection behavior to the common behavior. 2015-06-10 10:31:40 -04:00
Chris PeBenito
308ce26872 TERuleQueryTab: switch expanders to use toggled signals
Directly connect expander toggled signal to relevant setVisible slots in
the .ui.
2015-06-10 10:22:24 -04:00
Chris PeBenito
c6eacfc781 TERuleQueryTab: fix QCompleter for default to only complete types.
Attributes are not valid for the default type.
2015-06-09 08:50:40 -04:00