gitextract_fp8zrzif/ ├── .github/ │ ├── FUNDING.yml │ ├── ISSUE_TEMPLATE/ │ │ ├── bug_report.md │ │ ├── config.yml │ │ └── feature-request.md │ └── workflows/ │ ├── build_ebpf_modules.yml │ ├── generic_validations.yml │ └── go.yml ├── .gitignore ├── LICENSE ├── Makefile ├── README.md ├── daemon/ │ ├── .gitignore │ ├── Gopkg.toml │ ├── Makefile │ ├── conman/ │ │ ├── connection.go │ │ └── connection_test.go │ ├── core/ │ │ ├── core.go │ │ ├── ebpf.go │ │ ├── gzip.go │ │ ├── system.go │ │ └── version.go │ ├── data/ │ │ ├── default-config.json │ │ ├── init/ │ │ │ ├── opensnitchd-dinit │ │ │ ├── opensnitchd-openrc │ │ │ └── opensnitchd.service │ │ ├── network_aliases.json │ │ ├── rules/ │ │ │ ├── 000-allow-localhost.json │ │ │ └── 000-allow-localhost6.json │ │ ├── system-fw.json │ │ └── tasks/ │ │ └── tasks.json │ ├── dns/ │ │ ├── ebpfhook.go │ │ ├── parse.go │ │ ├── systemd/ │ │ │ └── monitor.go │ │ └── track.go │ ├── firewall/ │ │ ├── common/ │ │ │ └── common.go │ │ ├── config/ │ │ │ ├── config.go │ │ │ └── config_test.go │ │ ├── iptables/ │ │ │ ├── iptables.go │ │ │ ├── monitor.go │ │ │ ├── rules.go │ │ │ └── system.go │ │ ├── nftables/ │ │ │ ├── chains.go │ │ │ ├── chains_test.go │ │ │ ├── exprs/ │ │ │ │ ├── counter.go │ │ │ │ ├── counter_test.go │ │ │ │ ├── ct.go │ │ │ │ ├── ct_test.go │ │ │ │ ├── enums.go │ │ │ │ ├── ether.go │ │ │ │ ├── ether_test.go │ │ │ │ ├── iface.go │ │ │ │ ├── iface_test.go │ │ │ │ ├── ip.go │ │ │ │ ├── ip_test.go │ │ │ │ ├── limit.go │ │ │ │ ├── log.go │ │ │ │ ├── log_test.go │ │ │ │ ├── meta.go │ │ │ │ ├── meta_test.go │ │ │ │ ├── nat.go │ │ │ │ ├── nat_test.go │ │ │ │ ├── notrack.go │ │ │ │ ├── operator.go │ │ │ │ ├── port.go │ │ │ │ ├── port_test.go │ │ │ │ ├── protocol.go │ │ │ │ ├── protocol_test.go │ │ │ │ ├── quota.go │ │ │ │ ├── quota_test.go │ │ │ │ ├── utils.go │ │ │ │ ├── verdict.go │ │ │ │ └── verdict_test.go │ │ │ ├── monitor.go │ │ │ ├── monitor_test.go │ │ │ ├── nftables.go │ │ │ ├── nftest/ │ │ │ │ ├── nftest.go │ │ │ │ ├── test_utils.go │ │ │ │ └── utils.go │ │ │ ├── parser.go │ │ │ ├── rule_helpers.go │ │ │ ├── rules.go │ │ │ ├── rules_test.go │ │ │ ├── system.go │ │ │ ├── system_test.go │ │ │ ├── tables.go │ │ │ ├── tables_test.go │ │ │ ├── testdata/ │ │ │ │ └── test-sysfw-conf.json │ │ │ ├── utils.go │ │ │ └── utils_test.go │ │ └── rules.go │ ├── go.mod │ ├── go.sum │ ├── internal/ │ │ └── testutil/ │ │ └── network.go │ ├── log/ │ │ ├── formats/ │ │ │ ├── csv.go │ │ │ ├── formats.go │ │ │ ├── json.go │ │ │ ├── rfc3164.go │ │ │ └── rfc5424.go │ │ ├── log.go │ │ └── loggers/ │ │ ├── logger.go │ │ ├── remote.go │ │ ├── remote_syslog.go │ │ └── syslog.go │ ├── main.go │ ├── netfilter/ │ │ ├── netfilter_test.go │ │ ├── packet.go │ │ ├── queue.c │ │ ├── queue.go │ │ └── queue.h │ ├── netlink/ │ │ ├── ifaces.go │ │ ├── procmon/ │ │ │ └── procmon.go │ │ ├── socket.go │ │ ├── socket_linux.go │ │ ├── socket_packet.go │ │ ├── socket_test.go │ │ └── socket_xdp.go │ ├── netstat/ │ │ ├── entry.go │ │ ├── find.go │ │ ├── parse.go │ │ └── parse_packet.go │ ├── procmon/ │ │ ├── activepids.go │ │ ├── audit/ │ │ │ ├── client.go │ │ │ ├── config.go │ │ │ └── parse.go │ │ ├── cache.go │ │ ├── cache_events.go │ │ ├── cache_events_test.go │ │ ├── cache_test.go │ │ ├── details.go │ │ ├── ebpf/ │ │ │ ├── cache.go │ │ │ ├── config.go │ │ │ ├── debug.go │ │ │ ├── ebpf.go │ │ │ ├── ebpf_test.go │ │ │ ├── events.go │ │ │ ├── find.go │ │ │ ├── monitor.go │ │ │ └── utils.go │ │ ├── find.go │ │ ├── find_test.go │ │ ├── monitor/ │ │ │ └── init.go │ │ ├── parse.go │ │ ├── process.go │ │ ├── process_test.go │ │ └── testdata/ │ │ └── proc-environ │ ├── rule/ │ │ ├── loader.go │ │ ├── loader_test.go │ │ ├── operator.go │ │ ├── operator_aliases.go │ │ ├── operator_lists.go │ │ ├── operator_test.go │ │ ├── rule.go │ │ ├── rule_test.go │ │ └── testdata/ │ │ ├── 000-allow-chrome.json │ │ ├── 001-deny-chrome.json │ │ ├── invalid-regexp-list.json │ │ ├── invalid-regexp.json │ │ ├── lists/ │ │ │ ├── domains/ │ │ │ │ └── domainlists.txt │ │ │ ├── ips/ │ │ │ │ └── ips.txt │ │ │ ├── nets/ │ │ │ │ └── nets.txt │ │ │ └── regexp/ │ │ │ └── domainsregexp.txt │ │ ├── live_reload/ │ │ │ ├── test-live-reload-delete.json │ │ │ └── test-live-reload-remove.json │ │ ├── rule-disabled-operator-list-expanded.json │ │ ├── rule-disabled-operator-list.json │ │ ├── rule-operator-list-data-empty.json │ │ └── rule-operator-list.json │ ├── statistics/ │ │ ├── event.go │ │ └── stats.go │ ├── tasks/ │ │ ├── base/ │ │ │ └── main.go │ │ ├── config/ │ │ │ ├── main.go │ │ │ ├── monitor.go │ │ │ └── utils.go │ │ ├── doc.go │ │ ├── downloader/ │ │ │ ├── README.md │ │ │ ├── config.go │ │ │ ├── downloader.go │ │ │ ├── main.go │ │ │ └── utils.go │ │ ├── iocscanner/ │ │ │ ├── README.md │ │ │ ├── config/ │ │ │ │ └── config.go │ │ │ ├── main.go │ │ │ ├── run_tools.go │ │ │ └── tools/ │ │ │ ├── base/ │ │ │ │ └── base.go │ │ │ ├── dpkg/ │ │ │ │ └── dpkg.go │ │ │ ├── executer/ │ │ │ │ └── executer.go │ │ │ ├── generic/ │ │ │ │ └── generic.go │ │ │ └── yara/ │ │ │ └── yara.go │ │ ├── load.go │ │ ├── looptask/ │ │ │ └── main.go │ │ ├── main.go │ │ ├── main_test.go │ │ ├── nodemonitor/ │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── pidmonitor/ │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── scheduler/ │ │ │ ├── daily.go │ │ │ └── scheduler.go │ │ └── socketsmonitor/ │ │ ├── dump.go │ │ ├── main.go │ │ └── options.go │ └── ui/ │ ├── alerts.go │ ├── auth/ │ │ └── auth.go │ ├── client.go │ ├── client_test.go │ ├── config/ │ │ └── config.go │ ├── config_utils.go │ ├── notifications.go │ ├── notifications_tasks.go │ ├── protocol/ │ │ └── .gitkeep │ └── testdata/ │ ├── config-invalid-procmon.json │ ├── default-config.json │ └── default-config.json.orig ├── ebpf_prog/ │ ├── Makefile │ ├── README │ ├── arm-clang-asm-fix.patch │ ├── bpf_headers/ │ │ ├── bpf_core_read.h │ │ ├── bpf_helper_defs.h │ │ ├── bpf_helpers.h │ │ └── bpf_tracing.h │ ├── common.h │ ├── common_defs.h │ ├── opensnitch-dns.c │ ├── opensnitch-procs.c │ └── opensnitch.c ├── proto/ │ ├── .gitignore │ ├── Makefile │ └── ui.proto ├── release.sh ├── ui/ │ ├── .gitignore │ ├── LICENSE │ ├── MANIFEST.in │ ├── Makefile │ ├── bin/ │ │ └── opensnitch-ui │ ├── i18n/ │ │ ├── Makefile │ │ ├── README.md │ │ ├── generate_i18n.sh │ │ ├── locales/ │ │ │ ├── ar/ │ │ │ │ └── opensnitch-ar.ts │ │ │ ├── cs_CZ/ │ │ │ │ └── opensnitch-cs_CZ.ts │ │ │ ├── de_DE/ │ │ │ │ └── opensnitch-de_DE.ts │ │ │ ├── es_ES/ │ │ │ │ └── opensnitch-es_ES.ts │ │ │ ├── eu_ES/ │ │ │ │ └── opensnitch-eu_ES.ts │ │ │ ├── fi_FI/ │ │ │ │ └── opensnitch-fi_FI.ts │ │ │ ├── fr_FR/ │ │ │ │ └── opensnitch-fr_FR.ts │ │ │ ├── he_IL/ │ │ │ │ └── opensnitch-he_IL.ts │ │ │ ├── hi_IN/ │ │ │ │ └── opensnitch-hi_IN.ts │ │ │ ├── hu_HU/ │ │ │ │ └── opensnitch-hu_HU.ts │ │ │ ├── id_ID/ │ │ │ │ └── opensnitch-id_ID.ts │ │ │ ├── it_IT/ │ │ │ │ └── opensnitch-it_IT.ts │ │ │ ├── ja_JP/ │ │ │ │ └── opensnitch-ja_JP.ts │ │ │ ├── lt_LT/ │ │ │ │ └── opensnitch-lt_LT.ts │ │ │ ├── nb_NO/ │ │ │ │ └── opensnitch-nb_NO.ts │ │ │ ├── nl_NL/ │ │ │ │ └── opensnitch-nl_NL.ts │ │ │ ├── pt_BR/ │ │ │ │ └── opensnitch-pt_BR.ts │ │ │ ├── ro_RO/ │ │ │ │ └── opensnitch-ro_RO.ts │ │ │ ├── ru_RU/ │ │ │ │ └── opensnitch-ru_RU.ts │ │ │ ├── sq_AL/ │ │ │ │ └── opensnitch-sq_AL.ts │ │ │ ├── sv_SE/ │ │ │ │ └── opensnitch-sv_SE.ts │ │ │ ├── tr_TR/ │ │ │ │ └── opensnitch-tr_TR.ts │ │ │ ├── uk_UA/ │ │ │ │ └── opensnitch-uk_UA.ts │ │ │ ├── zh_Hans/ │ │ │ │ └── opensnitch-zh_Hans.ts │ │ │ └── zh_TW/ │ │ │ └── opensnitch-zh_TW.ts │ │ └── opensnitch_i18n.pro │ ├── opensnitch/ │ │ ├── __init__.py │ │ ├── actions/ │ │ │ ├── __init__.py │ │ │ ├── default_configs.py │ │ │ ├── enums.py │ │ │ └── utils.py │ │ ├── auth/ │ │ │ └── __init__.py │ │ ├── config.py │ │ ├── customwidgets/ │ │ │ ├── __init__.py │ │ │ ├── addresstablemodel.py │ │ │ ├── colorizeddelegate.py │ │ │ ├── completer.py │ │ │ ├── firewalltableview.py │ │ │ ├── generictableview.py │ │ │ ├── itemwidgetcentered.py │ │ │ ├── main.py │ │ │ ├── netstattablemodel.py │ │ │ └── updownbtndelegate.py │ │ ├── database/ │ │ │ ├── __init__.py │ │ │ ├── enums.py │ │ │ └── migrations/ │ │ │ ├── upgrade_1.sql │ │ │ ├── upgrade_2.sql │ │ │ └── upgrade_3.sql │ │ ├── desktop_parser.py │ │ ├── dialogs/ │ │ │ ├── __init__.py │ │ │ ├── conndetails.py │ │ │ ├── events/ │ │ │ │ ├── __init__.py │ │ │ │ ├── base.py │ │ │ │ ├── config.py │ │ │ │ ├── constants.py │ │ │ │ ├── dialog.py │ │ │ │ ├── menu_actions.py │ │ │ │ ├── menus.py │ │ │ │ ├── nodes.py │ │ │ │ ├── queries.py │ │ │ │ ├── tasks/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── netstat.py │ │ │ │ │ └── nodemon.py │ │ │ │ └── views.py │ │ │ ├── firewall.py │ │ │ ├── firewall_rule/ │ │ │ │ ├── __init__.py │ │ │ │ ├── constants.py │ │ │ │ ├── dialog.py │ │ │ │ ├── notifications.py │ │ │ │ ├── rules.py │ │ │ │ ├── statements.py │ │ │ │ └── utils.py │ │ │ ├── preferences/ │ │ │ │ ├── __init__.py │ │ │ │ ├── dialog.py │ │ │ │ ├── sections/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── db.py │ │ │ │ │ ├── nodes.py │ │ │ │ │ └── ui.py │ │ │ │ ├── settings.py │ │ │ │ ├── signals.py │ │ │ │ └── utils.py │ │ │ ├── processdetails.py │ │ │ ├── prompt/ │ │ │ │ ├── __init__.py │ │ │ │ ├── checksums.py │ │ │ │ ├── constants.py │ │ │ │ ├── details.py │ │ │ │ ├── dialog.py │ │ │ │ └── utils.py │ │ │ └── ruleseditor/ │ │ │ ├── __init__.py │ │ │ ├── constants.py │ │ │ ├── dialog.py │ │ │ ├── nodes.py │ │ │ ├── rules.py │ │ │ ├── signals.py │ │ │ └── utils.py │ │ ├── firewall/ │ │ │ ├── __init__.py │ │ │ ├── chains.py │ │ │ ├── enums.py │ │ │ ├── exprs.py │ │ │ ├── profiles.py │ │ │ ├── rules.py │ │ │ └── utils.py │ │ ├── nodes.py │ │ ├── notifications.py │ │ ├── plugins/ │ │ │ ├── __init__.py │ │ │ ├── downloader/ │ │ │ │ ├── __init__.py │ │ │ │ ├── _gui.py │ │ │ │ ├── downloader.py │ │ │ │ └── example/ │ │ │ │ └── downloaders.json │ │ │ ├── highlight/ │ │ │ │ ├── __init__.py │ │ │ │ ├── example/ │ │ │ │ │ ├── commonActionsDelegate.json │ │ │ │ │ └── rulesActionsDelegate.json │ │ │ │ └── highlight.py │ │ │ ├── sample/ │ │ │ │ ├── __init__.py │ │ │ │ └── sample.py │ │ │ ├── versionchecker/ │ │ │ │ ├── __init__.py │ │ │ │ ├── versionchecker.json │ │ │ │ └── versionchecker.py │ │ │ └── virustotal/ │ │ │ ├── __init__.py │ │ │ ├── _models.py │ │ │ ├── _popups.py │ │ │ ├── _procdialog.py │ │ │ ├── _utils.py │ │ │ ├── example/ │ │ │ │ └── virustotal.json │ │ │ └── virustotal.py │ │ ├── proto/ │ │ │ ├── __init__.py │ │ │ ├── enums.py │ │ │ ├── pre3200/ │ │ │ │ ├── ui_pb2.py │ │ │ │ └── ui_pb2_grpc.py │ │ │ ├── ui_pb2.py │ │ │ └── ui_pb2_grpc.py │ │ ├── res/ │ │ │ ├── __init__.py │ │ │ ├── firewall.ui │ │ │ ├── firewall_rule.ui │ │ │ ├── preferences.ui │ │ │ ├── process_details.ui │ │ │ ├── prompt.ui │ │ │ ├── resources.qrc │ │ │ ├── ruleseditor.ui │ │ │ ├── stats.ui │ │ │ └── themes/ │ │ │ └── dark/ │ │ │ └── icons/ │ │ │ └── LICENSE │ │ ├── rules.py │ │ ├── service.py │ │ ├── themes/ │ │ │ ├── README.md │ │ │ └── dark_white.xml │ │ ├── utils/ │ │ │ ├── __init__.py │ │ │ ├── duration/ │ │ │ │ ├── __init__.py │ │ │ │ └── duration.py │ │ │ ├── infowindow.py │ │ │ ├── languages.py │ │ │ ├── logger/ │ │ │ │ ├── __init__.py │ │ │ │ └── logger.py │ │ │ ├── network_aliases/ │ │ │ │ ├── __init__.py │ │ │ │ ├── network_aliases.json │ │ │ │ └── network_aliases.py │ │ │ ├── qvalidator.py │ │ │ ├── sockets.py │ │ │ ├── themes/ │ │ │ │ ├── __init__.py │ │ │ │ └── themes.py │ │ │ └── xdg.py │ │ └── version.py │ ├── requirements.txt │ ├── resources/ │ │ ├── io.github.evilsocket.opensnitch.appdata.xml │ │ ├── kcm_opensnitch.desktop │ │ └── opensnitch_ui.desktop │ ├── setup.py │ └── tests/ │ ├── README.md │ ├── __init__.py │ ├── conftest.py │ ├── dialogs/ │ │ ├── __init__.py │ │ ├── test_preferences.py │ │ └── test_ruleseditor.py │ └── test_nodes.py └── utils/ ├── legacy/ │ └── make_ads_rules.py ├── packaging/ │ ├── build_modules.sh │ ├── daemon/ │ │ ├── deb/ │ │ │ └── debian/ │ │ │ ├── NEWS │ │ │ ├── changelog │ │ │ ├── control │ │ │ ├── copyright │ │ │ ├── gbp.conf │ │ │ ├── gitlab-ci.yml │ │ │ ├── opensnitch.init │ │ │ ├── opensnitch.install │ │ │ ├── opensnitch.logrotate │ │ │ ├── opensnitch.service │ │ │ ├── rules │ │ │ ├── source/ │ │ │ │ └── format │ │ │ └── watch │ │ └── rpm/ │ │ └── opensnitch.spec │ └── ui/ │ ├── deb/ │ │ └── debian/ │ │ ├── changelog │ │ ├── compat │ │ ├── control │ │ ├── copyright │ │ ├── postinst │ │ ├── postrm │ │ ├── rules │ │ └── source/ │ │ ├── format │ │ └── options │ └── rpm/ │ └── opensnitch-ui.spec └── scripts/ ├── ads/ │ └── update_adlists.sh ├── debug-ebpf-maps.sh ├── ipasn_db_sync.sh ├── ipasn_db_update.sh └── restart-opensnitch-onsleep.sh