OpenSnitch is a GNU/Linux interactive application firewall inspired by Little Snitch.
Find a file
themighty1 59216458af Add a custom view/model to display the connections list more efficiently than currently with QSqlQueryModel.
The major steps are:

    - take advantage of sqlite's default autoincremented rowid column
    - add index of the db columns
    - when a filter is applied, we build a map of rowids corresponding to the filter
    - when user scrolls the view, query the db only for that portion of db which contains the rows to be displayed
    - because sqlite cannot use an index when a wildcard is at the start of the LIKE expression, e.g. "process LIKE '%sbin%'", use a workaround:
      - keep track of all distinct values in each column
      - check in python if any of the distinct values contain the filter string
      - reconstruct the query string: instead of "process LIKE '%sbin%'" we use "process IN (<list of distinct values containing 'sbin'>)"

    Minor steps:
    - mimic some QSqlQueryModel's methods so that our model can be a drop-in replacement
    - disable view's default scrollbar and use our own scrollbar which is aware of how many rows are in the db
2020-12-18 16:14:27 +03:00
.github Merge opensnitch 1.3.0-rc2 2020-12-09 15:41:18 +01:00
daemon Bump version to 1.3.0 2020-12-16 18:59:03 +01:00
debian Bump version to 1.3.0 2020-12-16 18:59:03 +01:00
proto added dialog to inspect details of a process in realtime (procfs) 2020-11-16 17:09:52 +01:00
screenshots added more screenshots 2020-02-25 22:39:32 +01:00
ui Add a custom view/model to display the connections list more efficiently than currently with QSqlQueryModel. 2020-12-18 16:14:27 +03:00
.gitignore misc: small fix or general refactoring i did not bother commenting 2018-04-16 17:51:54 +02:00
LICENSE Update LICENSE 2020-06-20 17:48:59 +02:00
make_ads_rules.py Misc. typos 2018-09-06 19:24:38 -04:00
Makefile removed sudo from Makefiles 2020-12-11 23:42:47 +01:00
README.md Updated README 2020-12-09 16:35:27 +01:00
release.sh misc: small fix or general refactoring i did not bother commenting 2018-04-10 19:49:58 +02:00

opensnitch

Release Software License Go Report Card

OpenSnitch is a GNU/Linux application firewall.

OpenSnitch

Installation and configuration

Please, refer to the documentation for detailed information.

Contributors

See the list

Disclaimer

THIS SOFTWARE IS A WORK IN PROGRESS, DO NOT EXPECT IT TO BE BUG FREE AND DO NOT RELY ON IT FOR ANY TYPE OF SECURITY.