Commit Graph

204 Commits

Author SHA1 Message Date
Chris PeBenito
00807f846d TERuleListModel: Add conditional block column. 2016-03-11 09:16:59 -05:00
Chris PeBenito
3434618aef LogHandlerToSignal: set default formatter and INFO level in __init__. 2016-03-11 09:00:20 -05:00
Chris PeBenito
6c2acc3fdd Rename LogToSignalHandler to LogHandlerToSignal. 2016-03-07 13:40:37 -05:00
Chris PeBenito
faaf1a5b64 LogToSignalHandler: rename local emit() variable to prevent confusion 2016-03-07 13:25:44 -05:00
Chris PeBenito
d268e7e7f7 apol: more logging for the status bar 2016-03-07 13:21:36 -05:00
Chris PeBenito
3f4630c6f9 apol: use INFO logs to update status displays
Connect all setools and setoolsgui INFO+ messages and display them on
the statusbar.

Use each tab's analysis/query INFO+ messages and display them on the
"busy" status dialog box.
2016-03-07 12:04:08 -05:00
Chris PeBenito
85caea05e3 setoolsgui: add missing LogToSignalHandler class 2016-03-05 11:34:41 -05:00
Chris PeBenito
99c257f936 DTA/InfoflowTab: set errors for empty source/target types 2016-03-05 11:04:05 -05:00
Chris PeBenito
6a4cbf20d5 apol: log INFO messages to the status bar
Still keep the CLI messaging controlled by -v or --debug switches. For some
reason, the root logging had to be DEBUG for this to work, and
only as initialized by basicConfig.  Setting a NullHandler to DEBUG level
didn't work either.
2016-03-04 14:05:20 -05:00
Chris PeBenito
c017bd7cfa Apply logging best practices.
* Use __name__ for the logger name
* Add top-level library NullHandlers
2016-03-04 13:49:03 -05:00
Chris PeBenito
d7e8cf0701 apol: connect copy/paste menu options 2016-03-02 08:19:07 -05:00
Chris PeBenito
5cfab15fd7 apol: Add ctrl+w keyboard shortcut to close the current tab.
Also move the action definitions to apol.ui.
2016-03-01 13:41:29 -05:00
Chris PeBenito
7e8fcba695 apol: switch tabs to (more discoverable) check boxes for hiding UI elements
Also drop the results expander.
2016-02-29 10:51:24 -05:00
Chris PeBenito
c3759ec164 UserQuery: add missing user name field. 2016-02-26 09:05:43 -05:00
Chris PeBenito
5c39a1fd8c apol: reset busy dialog in setupUI()
For some reason, on Fedora the dialog will show before an explicit show()
is issued.
2016-02-26 08:58:09 -05:00
Chris PeBenito
16e03a3960 Implement UserQueryTab
Closes #90
2016-02-25 10:03:20 -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
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
8ab5498ba7 Misc fixes for pylint 1.5. 2015-12-01 09:38:08 -05: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
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
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
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
d8f69d912f InfoFlowAnalysisTab: initial implementation
Does not yet include graphical results.
2015-06-30 11:06:59 -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
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
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
ccf2646963 TERuleQueryTab: connect ruletype clear and "select all" buttons 2015-06-10 10:57:05 -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
Chris PeBenito
9df420ad70 ApolMainWindow: misc enhancements
1. add icons for opening policy and new analysis
2. add shortcuts for copy, cut, paste
3. add filename to apol main window title
4. fix file chooser bug for selecting a policy.
5. improved handling where new analysis is started w/o open policy
2015-06-08 10:58:12 -04:00
Chris PeBenito
ce70c48c28 SEToolsWidget: change ui path to use sys.prefix. 2015-06-07 10:02:53 -04:00
Chris PeBenito
911e44d5d8 TERuleQueryTab: remove unnecessary outer widget
Make the scroll area the top level widget for the tab.
2015-06-06 11:36:49 -04:00
Chris PeBenito
d26101d041 Squeeze margins so the tab widgets have more room.
The tabs have deeply nested container widgets, so a lot of room is lost
on margins.
2015-06-05 15:05:18 -04:00
Chris PeBenito
ee6a619113 TERuleQueryTab: move clear button connections into the .ui 2015-06-05 10:51:00 -04:00
Chris PeBenito
b1b721aea1 TERuleQueryTab: connect radio buttons 2015-06-05 10:40:14 -04:00
Chris PeBenito
5476535659 ChooseAnalysis: simplify exception handler on input 2015-06-05 09:00:38 -04:00
Chris PeBenito
c8419393fb TERuleQueryTab: add default type and boolean criteria 2015-06-05 08:59:29 -04:00
Chris PeBenito
765039621e TERuleQueryTab: change tooltip setting on setupUi
Make sure the normal tooltip is consistent after an error.
2015-06-05 08:54:55 -04:00
Chris PeBenito
ff5c2dfde1 TERuleQueryTab: only set column sizing once (on setupUi) 2015-06-04 12:50:55 -04:00
Chris PeBenito
7af8c276cf Create collapsible sections in TERuleQueryTab.
Source icons from Koloria Icon Set,
http://www.graphicrating.com/2012/06/14/koloria-free-icons-set/
2015-06-04 12:46:41 -04:00
Chris PeBenito
b619166ba0 Initial apol commit. 2015-06-03 13:33:11 -04:00